搜索
查看: 8546|回复: 20

buym4ak修改版 附源码

[复制链接]
发表于 2009-12-7 13:15:48 | 显示全部楼层 |阅读模式 来自 中国–北京–北京–通州区
本帖最后由 kilng 于 2009-12-10 22:23 编辑

加入famas,galil两种枪的购买,还加了个admin不花钱买枪函数,不受地点时间限制,amx_buy ak & m4 & awp等,使用unlimited_money。
  1. /* UTF-8 func by www.DT-Club.net */
  2. #include <amxmodx>
  3. #include <amxmisc>
  4. #include <cstrike>
  5. #include <fun>
  6. #include <unlimited_money>

  7. new bool:buyswitch

  8. public plugin_init() {
  9.         register_plugin("buyweapon","1.0","bruto")
  10.         register_concmd("amx_buy", "adminbuy", ADMIN_SLAY, " - AMXX ADMIN BUY WEAPON SCRIPT")
  11.         register_clcmd("say /m4","M4")
  12.         register_clcmd("say /fa","FA")
  13.         register_clcmd("say /ak","AK")
  14.         register_clcmd("say /ga","GA")
  15.         register_cvar("m4cost","3100")
  16.         register_cvar("facost","2250")
  17.         register_cvar("akcost","2500")
  18.         register_cvar("gacost","2000")
  19.         register_logevent("round_start",2,"0=World triggered","1=Round_Start")
  20.         register_event("HLTV","eResetHUD","a","a=0","2=0")
  21. }

  22. public adminbuy(id, level, cid){
  23.         if (!cmd_access(id, level, cid, 2))
  24.                 return PLUGIN_HANDLED
  25.         new Arg1[4]
  26.         read_argv(1, Arg1, 3)
  27.         if(equali(Arg1[0],"m4")){
  28.                 give_item(id, "weapon_m4a1")
  29.                 cs_set_user_bpammo(id,CSW_M4A1,90)
  30.                 cs_set_user_armor(id,100,CS_ARMOR_VESTHELM)
  31.                 console_print(id,"bruto:give me the m4!")
  32.                 return PLUGIN_CONTINUE
  33.         }
  34.         if(equali(Arg1[0],"ak")){
  35.                 give_item(id, "weapon_ak47")
  36.                 cs_set_user_bpammo(id,CSW_AK47,90)
  37.                 cs_set_user_armor(id,100,CS_ARMOR_VESTHELM)
  38.                 console_print(id,"bruto:give me the ak!")
  39.                 return PLUGIN_CONTINUE
  40.         }
  41.         if(equali(Arg1[0],"fa")){
  42.                 give_item(id, "weapon_famas")
  43.                 cs_set_user_bpammo(id,CSW_FAMAS,90)
  44.                 cs_set_user_armor(id,100,CS_ARMOR_VESTHELM)
  45.                 console_print(id,"bruto:give me the fa!")
  46.                 return PLUGIN_CONTINUE
  47.         }
  48.         if(equali(Arg1[0],"ga")){
  49.                 give_item(id, "weapon_galil")
  50.                 cs_set_user_bpammo(id,CSW_GALIL,90)
  51.                 cs_set_user_armor(id,100,CS_ARMOR_VESTHELM)
  52.                 console_print(id,"bruto:give me the ga!")
  53.                 return PLUGIN_CONTINUE
  54.         }
  55.         if(equali(Arg1[0],"awp")){
  56.                 give_item(id, "weapon_awp")
  57.                 cs_set_user_bpammo(id,CSW_AWP,30)
  58.                 cs_set_user_armor(id,100,CS_ARMOR_VESTHELM)
  59.                 console_print(id,"bruto:give me the awp!")
  60.                 return PLUGIN_CONTINUE
  61.         }
  62.         return PLUGIN_CONTINUE
  63. }

  64. public round_start(id) {
  65.         client_print(id, print_chat, "警察可以购买AK,GA  匪徒可以购买M4,FA 输入[say /m4 & say /fa & say /ak & say /ga]")
  66. }

  67. public M4(id) {
  68.         new m4cost = get_cvar_num("m4cost")
  69.         new moneyy = cs_get_user_money2(id)
  70.         if(!is_user_alive(id)) {
  71.                 client_print(id,print_chat,"你已经死亡,不能购买")
  72.                 return PLUGIN_CONTINUE
  73.                 }
  74.         if(moneyy < m4cost) {
  75.                 client_print(id,print_chat,"你的金钱不够")
  76.                 return PLUGIN_CONTINUE
  77.         }
  78.         if (cs_get_user_hasprim(id)) {
  79.                 client_print(id,print_chat,"你已经拥有一个主武器了")      
  80.                 return PLUGIN_CONTINUE        
  81.         }   
  82.          if(!cs_get_user_buyzone(id)){   
  83.                 client_print(id,print_chat,"你只能在购买区内购买武器")  
  84.                 return PLUGIN_CONTINUE        
  85.         }   
  86.         if(!buyswitch){
  87.                 client_print(id,print_chat,"购买时间已过")
  88.                 return PLUGIN_CONTINUE
  89.         }
  90.         else {
  91.                 cs_set_user_money2(id,moneyy-m4cost)
  92.                 give_item(id, "weapon_m4a1")
  93.         }
  94.         return PLUGIN_CONTINUE
  95. }

  96. public FA(id) {
  97.         new facost = get_cvar_num("facost")
  98.         new moneyy = cs_get_user_money2(id)
  99.         if(!is_user_alive(id)) {
  100.                 client_print(id,print_chat,"你已经死亡,不能购买")
  101.                 return PLUGIN_CONTINUE
  102.                 }
  103.         if(moneyy < facost) {
  104.                 client_print(id,print_chat,"你的金钱不够")
  105.                 return PLUGIN_CONTINUE
  106.         }
  107.         if (cs_get_user_hasprim(id)) {
  108.                 client_print(id,print_chat,"你已经拥有一个主武器了")      
  109.                 return PLUGIN_CONTINUE        
  110.         }   
  111.          if(!cs_get_user_buyzone(id)){   
  112.                 client_print(id,print_chat,"你只能在购买区内购买武器")  
  113.                 return PLUGIN_CONTINUE        
  114.         }   
  115.         if(!buyswitch){
  116.                 client_print(id,print_chat,"购买时间已过")
  117.                 return PLUGIN_CONTINUE
  118.         }
  119.         else {
  120.                 cs_set_user_money2(id,moneyy-facost)
  121.                 give_item(id, "weapon_famas")
  122.         }
  123.         return PLUGIN_CONTINUE
  124. }

  125. public AK(id) {
  126.         new akcost = get_cvar_num("akcost")
  127.         new moneyy = cs_get_user_money2(id)
  128.         if(!is_user_alive(id)) {
  129.                 client_print(id,print_chat,"你已经死亡,不能购买")
  130.                 return PLUGIN_CONTINUE
  131.                 }
  132.         if(moneyy < akcost) {
  133.                 client_print(id,print_chat,"你的金钱不够")
  134.                 return PLUGIN_CONTINUE
  135.         }
  136.         if (cs_get_user_hasprim(id)) {
  137.                 client_print(id,print_chat,"你已经拥有一个主武器了")      
  138.                 return PLUGIN_CONTINUE        
  139.         }   
  140.          if(!cs_get_user_buyzone(id)){   
  141.                 client_print(id,print_chat,"你只能在购买区内购买武器")  
  142.                 return PLUGIN_CONTINUE        
  143.         }   
  144.         if(!buyswitch){
  145.                 client_print(id,print_chat,"购买时间已过")
  146.                 return PLUGIN_CONTINUE
  147.         }
  148.         else {
  149.                 cs_set_user_money2(id,moneyy-akcost)
  150.                 give_item(id, "weapon_ak47")
  151.         }
  152.         return PLUGIN_CONTINUE
  153. }

  154. public GA(id) {
  155.         new gacost = get_cvar_num("gacost")
  156.         new moneyy = cs_get_user_money2(id)
  157.         if(!is_user_alive(id)) {
  158.                 client_print(id,print_chat,"你已经死亡,不能购买")
  159.                 return PLUGIN_CONTINUE
  160.                 }
  161.         if(moneyy < gacost) {
  162.                 client_print(id,print_chat,"你的金钱不够")
  163.                 return PLUGIN_CONTINUE
  164.         }
  165.         if (cs_get_user_hasprim(id)) {
  166.                 client_print(id,print_chat,"你已经拥有一个主武器了")      
  167.                 return PLUGIN_CONTINUE        
  168.         }   
  169.          if(!cs_get_user_buyzone(id)){   
  170.                 client_print(id,print_chat,"你只能在购买区内购买武器")  
  171.                 return PLUGIN_CONTINUE        
  172.         }   
  173.         if(!buyswitch){
  174.                 client_print(id,print_chat,"购买时间已过")
  175.                 return PLUGIN_CONTINUE
  176.         }
  177.         else {
  178.                 cs_set_user_money2(id,moneyy-gacost)
  179.                 give_item(id, "weapon_galil")
  180.         }
  181.         return PLUGIN_CONTINUE
  182. }

  183. public eResetHUD(){
  184.         new Float:buytime=get_cvar_float("mp_buytime")*60
  185.         buyswitch=true
  186.         set_task(buytime,"buy")
  187. }

  188. public buy()   
  189. {   
  190.         buyswitch=false   
  191. }     
复制代码
想把雷买全和当警察时买拆包器就改成,
  1.         if(equali(Arg1[0],"m4")){
  2.                 give_item(id, "weapon_m4a1")
  3.                 give_item(id, "weapon_hegrenade")
  4.                 give_item(id, "weapon_flashbang")
  5.                 give_item(id, "weapon_flashbang")
  6.                 give_item(id, "weapon_smokegrenade")
  7.                 cs_set_user_bpammo(id,CSW_M4A1,90)
  8.                 cs_set_user_armor(id,100,CS_ARMOR_VESTHELM)
  9.                 if (get_user_team(id)==2){
  10.                         cs_set_user_defuse(id)
  11.                 }
  12.                 console_print(id,"bruto:give me the m4!")
  13.                 return PLUGIN_CONTINUE
  14.         }
复制代码
其它的自己改吧。

本帖子中包含更多资源

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

×
发表于 2009-12-7 20:07:59 | 显示全部楼层 来自 中国–广东–佛山–南海区
能否改成users.in里的会员才可以买???
回复

使用道具 举报

 楼主| 发表于 2009-12-7 22:16:29 | 显示全部楼层 来自 中国–北京–北京–通州区
能否改成users.in里的会员才可以买???
zlove84 发表于 2009-12-7 20:07


对,要有amx_slay这个权限,别的权限也可以自己在源码里更改。
回复

使用道具 举报

 楼主| 发表于 2009-12-7 22:31:21 | 显示全部楼层 来自 中国–北京–北京–通州区
本帖最后由 kilng 于 2009-12-8 09:39 编辑

如果是/say m4,这个的话,
这里改成以下这样就应该可以了吧,

  1.         register_clcmd("say /m4","M4",ADMIN_SLAY,"")
复制代码

  1. public M4(id,level,cid) {
  2.         if (!cmd_access(id, level, cid, 1)) {
  3.               return PLUGIN_HANDLED
  4.         }
  5.         new m4cost = get_cvar_num("m4cost")
  6.         new moneyy = cs_get_user_money2(id)
  7.   }
复制代码
回复

使用道具 举报

发表于 2009-12-9 20:39:22 | 显示全部楼层 来自 中国–广西–百色
DT强手真多~
回复

使用道具 举报

发表于 2009-12-9 21:13:47 | 显示全部楼层 来自 中国–山西–晋城
很好,很强大....  新意
回复

使用道具 举报

发表于 2009-12-10 21:29:46 | 显示全部楼层 来自 中国–广东–佛山–南海区
amx_slay这个权限 即是怎么判断权限分配?比方我要指定users.ini里有h权限的会员才可以同时买二把枪,
那怎么添加这个判断函数?
回复

使用道具 举报

 楼主| 发表于 2009-12-10 21:59:16 | 显示全部楼层 来自 中国–北京–北京–通州区
本帖最后由 kilng 于 2009-12-10 22:09 编辑

7# zlove84

看这句
register_concmd("amx_buy", "adminbuy", ADMIN_SLAY, " - AMXX ADMIN BUY WEAPON SCRIPT")
users.ini
; h - amx_cfg command (可以加载某个AMX cfg 设置文件权限)
h权限就改成
register_concmd("amx_buy", "adminbuy", ADMIN_CFG, " - AMXX ADMIN BUY WEAPON SCRIPT")
回复

使用道具 举报

发表于 2009-12-10 22:18:59 | 显示全部楼层 来自 中国–广东–佛山–南海区
感谢楼主无私教导,在下感激不尽,有空来佛山玩,我请你喝茶~~
回复

使用道具 举报

 楼主| 发表于 2009-12-10 22:20:42 | 显示全部楼层 来自 中国–北京–北京–通州区
9# zlove84

小事情,问题解决就好,
回复

使用道具 举报

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

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