搜索
查看: 2503|回复: 3

帮忙看下为什么这个插件编译不成功

[复制链接]
发表于 2009-3-31 23:00:28 | 显示全部楼层 |阅读模式 来自 中国–山东–淄博
本帖最后由 千喜哥 于 2009-3-31 23:03 编辑
  1. /*
  2. -=MONEY-GIVE=-

  3. Each player can be donated to other players.

  4. ================================================

  5. -=VERSIONS=-

  6. Releaseed(Time in JP)        Version         comment
  7. ------------------------------------------------
  8. 2005/01/29                1.02                main release
  9. 2005/01/29                1.03                Rename
  10. 2005/03/11                1.04                Can donate to the immunity.
  11.                                         Bot was stopped in the reverse.
  12. 2006/03/15                1.05                Any bugfix
  13. ================================================

  14. -=INSTALLATION=-

  15. Compile and install plugin. (configs/plugins.ini)

  16. ================================================

  17. -=USAGE=-

  18. Client command / say donate
  19. -show donate menu

  20. Server command / amx_donate_max
  21. -A limit of amount of money to have
  22. -default $16000

  23. ================================================

  24. -=SpecialThanks=-
  25. Idea        Mr.Kaseijin
  26. Tester        Mr.Kaseijin
  27.         orutiga
  28.         justice

  29. ================================================
  30. */
  31. #include <amxmodx>
  32. #include <amxmisc>
  33. #include <cstrike>
  34. new g_menuPosition[33]
  35. new g_menuPlayers[33][32]
  36. new g_menuPlayersNum[33]
  37. new g_menuOption[33]
  38. new g_menuSettings[33]
  39. new g_coloredMenus
  40. new money[33]
  41. public plugin_init()
  42. {
  43.   register_plugin("MONEY-GIVE","1.05","+ARUKARI-")
  44.   register_clcmd("say donate","cmdDonateMenu")
  45.   register_clcmd("say_team donate","cmdDonateMenu")
  46.   register_cvar("amx_donate_max","16000")
  47.   register_menucmd(register_menuid("Donate Menu"),1023,"actionDonateMenu")
  48.   return PLUGIN_CONTINUE
  49. }

  50. public plugin_modules() {
  51.         require_module("cstrike")
  52. }

  53. public actionDonateMenu(id,key) {
  54.         switch (key) {
  55.                 case 7: {
  56.                         ++g_menuOption[id]
  57.                         g_menuOption[id] %= 7
  58.                        
  59.                         switch (g_menuOption[id]) {
  60.                                 case 1: g_menuSettings[id] = 1000
  61.                                 case 2: g_menuSettings[id] = 3000
  62.                                 case 3: g_menuSettings[id] = 3500
  63.                                 case 4: g_menuSettings[id] = 5000
  64.                                 case 5: g_menuSettings[id] = 10000
  65.                                 case 6: g_menuSettings[id] = 16000
  66.                         }
  67.                         displayDonateMenu(id,g_menuPosition[id])
  68.         }
  69.                 case 8: displayDonateMenu(id,++g_menuPosition[id])
  70.                 case 9: displayDonateMenu(id,--g_menuPosition[id])
  71.         default: {
  72.                 new player = g_menuPlayers[id][g_menuPosition[id] * 7 + key]

  73.                 new name2[32]
  74.                 get_user_name(player,name2,31)

  75.                 new name[32]
  76.                 get_user_name(id,name,31)

  77.                 money[id] = g_menuSettings[id]
  78.        
  79.                 new setidmoney[32]
  80.                 new setplmoney[32]
  81.                 new maxmoney = get_cvar_num("amx_donate_max")
  82.                 setplmoney[id] = (cs_get_user_money(player) + money[id])

  83.                 if (cs_get_user_money(id) < money[id]){
  84.                         client_print(id,print_chat,"[銀行轉帳系統] 你並沒有足夠的金錢給別人!!想當慈善家也是要有本錢的(0.0)")
  85.                         return PLUGIN_HANDLED
  86.                 }else if (maxmoney < (setplmoney[id])){
  87.                         new overplmoney[32]
  88.                         overplmoney[id]= (maxmoney - cs_get_user_money(player))
  89.                         setidmoney[id] = (cs_get_user_money(id) - overplmoney[id])
  90.                         cs_set_user_money(id,setidmoney[id])
  91.                         cs_set_user_money(player,maxmoney)
  92.                         client_print(id,print_chat,"【愛心捐獻】 ^%s 捐獻了 $%d 元給 ^%s,說聲謝謝吧(o.o)",name,money[id],name2)
  93.                         client_print(player,print_chat,"【愛心捐獻】 $%d 的金錢施捨來自於 ^%s",money[id],name)
  94.                         return PLUGIN_HANDLED
  95.                 }else{
  96.                         setidmoney[id] = (cs_get_user_money(id) - money[id])
  97.                         cs_set_user_money(id,setidmoney[id])
  98.                         cs_set_user_money(player,setplmoney[id])
  99.                         client_print(id,print_chat,"【愛心捐獻】 ^%s 捐獻了 $%d 元給 ^%s,說聲謝謝吧(o.o)",name,money[id],name2)
  100.                         client_print(player,print_chat,"【愛心捐獻】 $%d 的金錢施捨來自於 ^%s",money[id],name)
  101.                         return PLUGIN_HANDLED
  102.                 }

  103.                 displayDonateMenu(id,g_menuPosition[id])
  104.                 }
  105.         }
  106.         return PLUGIN_HANDLED
  107. }


  108. displayDonateMenu(id,pos) {
  109.   if (pos < 0)  return

  110.   get_players(g_menuPlayers[id],g_menuPlayersNum[id])

  111.   new menuBody[512]
  112.   new b = 0
  113.   new i
  114.   new name[32], team[4]
  115.   new start = pos * 7

  116.   if (start >= g_menuPlayersNum[id])
  117.     start = pos = g_menuPosition[id] = 0

  118.   new len = format(menuBody,511, g_coloredMenus ?
  119.     "\yDonate Menu\R%d/%d^n\w^n" : "【愛心捐獻】: 玩家列表 %d/%d^n^n",
  120.     pos+1,(  g_menuPlayersNum[id] / 7 + ((g_menuPlayersNum[id] % 7) ? 1 : 0 )) )
  121.    
  122.   new end = start + 7
  123.   new keys = MENU_KEY_0|MENU_KEY_8
  124.   
  125.   if (end > g_menuPlayersNum[id])
  126.     end = g_menuPlayersNum[id]

  127.   for (new a = start; a < end; ++a) {
  128.     i = g_menuPlayers[id][a]
  129.     get_user_name(i,name,31)
  130.     get_user_team(i,team,3)

  131.     if ( is_user_bot(i)||i == id) {
  132.       ++b   
  133.       if ( g_coloredMenus )
  134.         len += format(menuBody[len],511-len,"\d%d. %s\R%s^n\w", b,name,team)
  135.       else
  136.         len += format(menuBody[len],511-len,"\d%d. %s\R%s^n\w", b,name,team)
  137.     }
  138.     else
  139.     {
  140.       keys |= (1<<b)

  141.       len += format(menuBody[len],511-len, g_coloredMenus ?
  142.         "%d. %s\y\R%s^n\w" : "%d. %s\R%s^n",++b,name,team)
  143.     }
  144.   }

  145.   if ( g_menuOption[id] )
  146.     len += format(menuBody[len],511-len,"^n8. 捐獻金錢總額 : $ %d^n",g_menuSettings[id] )
  147.   else
  148.     len += format(menuBody[len],511-len,"^n8. 捐獻金錢總額 : $ 0^n")

  149.   if (end != g_menuPlayersNum[id]) {
  150.     format(menuBody[len],511-len,"^n9. %L...^n0. %L", id, "MORE", id, pos ? "BACK" : "EXIT")
  151.     keys |= MENU_KEY_9
  152.   }
  153.   else format(menuBody[len],511-len,"^n0. %L", id, pos ? "BACK" : "EXIT")

  154.   show_menu(id,keys,menuBody,-1,"Donate Menu")
  155. }

  156. public cmdDonateMenu(id,level,cid)
  157. {
  158.   if (!cmd_access(id,level,cid,1)) return PLUGIN_HANDLED
  159.   g_menuOption[id] = 0
  160.   g_menuSettings[id] = 0

  161.   displayDonateMenu(id,g_menuPosition[id] = 0)
  162.   return PLUGIN_HANDLED
  163. }
复制代码
这个是DT一个朋友发的转帐插件代码
 楼主| 发表于 2009-4-3 16:11:41 | 显示全部楼层 来自 中国–山东–淄博
为什么没人帮忙呢?
回复

使用道具 举报

发表于 2009-4-3 16:49:24 | 显示全部楼层 来自 中国–广东–韶关
..........

本帖子中包含更多资源

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

×
回复

使用道具 举报

 楼主| 发表于 2009-4-3 22:49:59 | 显示全部楼层 来自 中国–山东–淄博
谢谢斑竹!!!!
回复

使用道具 举报

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

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