设为首页收藏本站新闻投稿

MOD中国同盟社

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 770|回复: 18

[原创] 新手求教,不要现成的!自己搞…… [复制链接]

Rank: 3Rank: 3

帖子
59
精华
0
声望
399 点
金币
23 Mold
被赞许
0 次
注册时间
2011-8-23
发表于 2012-6-9 15:31:05 |显示全部楼层
本帖最后由 (22:21:06) 于 2012-6-9 23:42 编辑

往下看。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
狭路相逢勇者胜,手起刀落人抬走!

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
567
精华
0
声望
2374 点
金币
344 Mold
被赞许
15 次
注册时间
2011-4-7

可爱小猫 懒人勋章

发表于 2012-6-9 16:02:08 |显示全部楼层
03. #include <amxmodx>
04. #include <amxmisc>
调用C++函数库搜
你去找WD521....他是C程序员,,,你可以找他帮你下
START /在我右心房的中心街部位,保留着那一份属于我们的仅存的记忆。有一种幸福叫等待,我要旳是爱不是安

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
567
精华
0
声望
2374 点
金币
344 Mold
被赞许
15 次
注册时间
2011-4-7

可爱小猫 懒人勋章

发表于 2012-6-9 16:03:41 |显示全部楼层
咋个又看到起想 CS的插件代码
C++还没amxmodx、
哦,,,,插件搜,,,E程序员路过
START /在我右心房的中心街部位,保留着那一份属于我们的仅存的记忆。有一种幸福叫等待,我要旳是爱不是安

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
1250
精华
0
声望
3577 点
金币
470 Mold
被赞许
45 次
注册时间
2010-7-13

可爱小猫

发表于 2012-6-9 16:35:03 |显示全部楼层
本帖最后由 水蛭 于 2012-6-9 16:39 编辑

混蛋,这个就是插件源码,跟C++什么关系。
还有LZ你故意的吧?斜体故意让我们看不懂,每行前面加上1、2、3行数标示让我们无法复制下来仔细研究。
而且每括号里面的tab大空格也没了,很难看懂。还原太麻烦了还是不看了。
我呱,而且还附加自动过行,这样就算修复了也没法编辑了。

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
1250
精华
0
声望
3577 点
金币
470 Mold
被赞许
45 次
注册时间
2010-7-13

可爱小猫

发表于 2012-6-9 16:59:58 |显示全部楼层
你这个插件原本能够编辑吗?
我编辑到playerslist就出错了,这东西本来就不能直接当做index用吧?
new id = playerslist[i]
然后用id代替。

使用道具 举报

Rank: 3Rank: 3

帖子
59
精华
0
声望
399 点
金币
23 Mold
被赞许
0 次
注册时间
2011-8-23
发表于 2012-6-9 19:11:32 |显示全部楼层
水蛭 发表于 2012-6-9 16:35
混蛋,这个就是插件源码,跟C++什么关系。
还有LZ你故意的吧?斜体故意让我们看不懂,每行前面加上1、2、3 ...

不好意思,搞错了,现已修正……
狭路相逢勇者胜,手起刀落人抬走!

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
1250
精华
0
声望
3577 点
金币
470 Mold
被赞许
45 次
注册时间
2010-7-13

可爱小猫

发表于 2012-6-9 19:39:51 |显示全部楼层
……看不出有什么改正。

使用道具 举报

Rank: 3Rank: 3

帖子
59
精华
0
声望
399 点
金币
23 Mold
被赞许
0 次
注册时间
2011-8-23
发表于 2012-6-9 22:53:01 |显示全部楼层
水蛭 发表于 2012-6-9 19:39
……看不出有什么改正。

这次绝对可以了
狭路相逢勇者胜,手起刀落人抬走!

使用道具 举报

Rank: 3Rank: 3

帖子
59
精华
0
声望
399 点
金币
23 Mold
被赞许
0 次
注册时间
2011-8-23
发表于 2012-6-9 23:42:47 |显示全部楼层
本帖最后由 (22:21:06) 于 2012-6-9 23:51 编辑

哎 搞了大半天,下面的应该就是正确的吧
请各位大神指点迷津
狭路相逢勇者胜,手起刀落人抬走!

使用道具 举报

Rank: 3Rank: 3

帖子
59
精华
0
声望
399 点
金币
23 Mold
被赞许
0 次
注册时间
2011-8-23
发表于 2012-6-9 23:44:25 |显示全部楼层
本帖最后由 (22:21:06) 于 2012-6-11 13:13 编辑
  1. /* AMX Mod X
  2. * Info. Messages Plugin
  3. *
  4. * by the AMX Mod X Development Team
  5. * originally developed by OLO
  6. *
  7. * This file is part of AMX Mod X.
  8. *
  9. *
  10. * This program is free software; you can redistribute it and/or modify it
  11. * under the terms of the GNU General Public License as published by the
  12. * Free Software Foundation; either version 2 of the License, or (at
  13. * your option) any later version.
  14. *
  15. * This program is distributed in the hope that it will be useful, but
  16. * WITHOUT ANY WARRANTY; without even the implied warranty of
  17. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  18. * General Public License for more details.
  19. *
  20. * You should have received a copy of the GNU General Public License
  21. * along with this program; if not, write to the Free Software Foundation,
  22. * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  23. *
  24. * In addition, as a special exception, the author gives permission to
  25. * link the code of this program with the Half-Life Game Engine ("HL
  26. * Engine") and Modified Game Libraries ("MODs") developed by Valve,
  27. * L.L.C ("Valve"). You must obey the GNU General Public License in all
  28. * respects for all of the code used other than the HL Engine and MODs
  29. * from Valve. If you modify this file, you may extend this exception
  30. * to your version of the file, but you are not obligated to do so. If
  31. * you do not wish to do so, delete this exception statement from your
  32. * version.
  33. */
  34. #include <amxmodx>
  35. #include <amxmisc>
  36. #define MAX_MESSAGES 32
  37. #define X_POS -1.0
  38. #define Y_POS 0.30
  39. #define HOLD_TIME 12.0
  40. new g_Values[MAX_MESSAGES][3]
  41. new g_Messages[MAX_MESSAGES][384]
  42. new g_MessagesNum,g_subMsgNum
  43. new g_Current,g_subCurrent
  44. public plugin_init() {
  45. register_plugin("Info. Messages",AMXX_VERSION_STR,"AMXX Dev Team")
  46. register_dictionary("imessage.txt")
  47. register_dictionary("common.txt")
  48. register_srvcmd("amx_admin","setMessage")
  49. register_cvar("amx_freq_admin","10")
  50. new lastinfo[8]
  51. get_localinfo("lastinfomsg",lastinfo,7)
  52. g_Current = str_to_num(lastinfo)
  53. g_subCurrent = 0
  54. g_subMsgNum=2
  55. set_localinfo("lastinfomsg","")
  56. }
  57. public infoMessage() {
  58. if(g_Current==0) g_subCurrent=0
  59. if (g_Current >= g_MessagesNum)
  60. {
  61. g_subCurrent++;
  62. if(g_subCurrent>=g_subMsgNum){
  63. g_Current = 0
  64. }
  65. //在这里我们增加一个现实在线OP的模块
  66. new opmsg[512],playerslist[32],playerscount,i,pos,opcount
  67. get_players(playerslist,playerscount,"c")//Skip Bot
  68. opcount=0;
  69. if(g_subCurrent==1){
  70. opmsg="当前在线的OP^n_____________________________________________^n"
  71. pos=strlen(opmsg)
  72. for(i=0;i<playerscount;i++){
  73. if(access(playerslist[i],ADMIN_IMMUNITY)){
  74. new username[33]
  75. get_user_name(playerslist[i],username,32)
  76. opcount++
  77. pos+=format(opmsg[pos],511-pos,"%s^n",username)
  78. }
  79. }
  80. if(opcount==0) opmsg="当前没有在线的OP"
  81. }
  82. if(g_subCurrent==2){
  83. opmsg="当前在线的VIP^n_____________________________________________^n"
  84. pos=strlen(opmsg)
  85. for(i=0;i<playerscount;i++){
  86. if(access(playerslist[i],ADMIN_RESERVATION)&&(!access(playerslist[i],ADMIN_IMMUNITY))){
  87. new username[33]
  88. get_user_name(playerslist[i],username,32)
  89. opcount++
  90. pos+=format(opmsg[pos],511-pos,"%s^n",username)
  91. }
  92. }
  93. if(opcount==0) {
  94. opmsg="当前没有在线的VIP"//We Do not display NO VIP
  95. set_task(0.1,"infoMessage",12345)
  96. return
  97. }
  98. }
  99. set_hudmessage(255,105,180,-1.0,0.20,2,0.5,HOLD_TIME,0.080,2.0,3)
  100. show_hudmessage(0,opmsg)
  101. new Float:freq_im = get_cvar_float("amx_freq_admin")
  102. if ( freq_im > 0.0 ) set_task( freq_im ,"infoMessage",12345)
  103. }
  104. else {
  105. set_hudmessage(g_Values[g_Current][0], g_Values[g_Current][1], g_Values[g_Current][2],
  106. X_POS, Y_POS, 2, 0.5, HOLD_TIME , 0.080, 2.0, 3)
  107. show_hudmessage(0,g_Messages[g_Current])
  108. client_print(0,print_console,g_Messages[g_Current])
  109. ++g_Current
  110. new Float:freq_im = get_cvar_float("amx_freq_admin")
  111. if ( freq_im > 0.0 ) set_task( freq_im ,"infoMessage",12345)
  112. }
  113. }
  114. public setMessage() {
  115. if (g_MessagesNum >= MAX_MESSAGES) {
  116. server_print("%L",LANG_SERVER,"INF_REACH")
  117. return PLUGIN_HANDLED
  118. }
  119. remove_task(12345)
  120. read_argv(1,g_Messages[g_MessagesNum],380)
  121. new hostname[64]
  122. get_cvar_string("hostname",hostname,63)
  123. replace(g_Messages[g_MessagesNum],380,"%hostname%",hostname)
  124. while(replace(g_Messages[g_MessagesNum],380,"\n","^n")){}
  125. new mycol[12]
  126. read_argv(2,mycol,11) // RRRGGGBBB
  127. g_Values[g_MessagesNum][2] = str_to_num(mycol[6])
  128. mycol[6] = 0
  129. g_Values[g_MessagesNum][1] = str_to_num(mycol[3])
  130. mycol[3] = 0
  131. g_Values[g_MessagesNum][0] = str_to_num(mycol[0])
  132. g_MessagesNum++
  133. new Float:freq_im = get_cvar_float("amx_freq_admin")
  134. if ( freq_im > 0.0 ) set_task( freq_im ,"infoMessage",12345)
  135. return PLUGIN_HANDLED
  136. }
  137. public plugin_end() {
  138. new lastinfo[8]
  139. num_to_str(g_Current,lastinfo,7)
  140. set_localinfo("lastinfomsg",lastinfo)
  141. }
复制代码

狭路相逢勇者胜,手起刀落人抬走!

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

回顶部