搜索
查看: 3621|回复: 6

服务器图片广告这个插件能修改下吗?

[复制链接]
发表于 2007-4-14 09:06:27 | 显示全部楼层 |阅读模式 来自 浙江嘉兴
首先我想说的是,他的插件功能我已经实现,如广告及广告的透明效果!
但他实现的过程是玩家进入CS服的时候,加载一个广告图片,因为插件中,可以设置N个广告图片,结果是只要他不退出CS服,他就只能看到同一个广告图片,我想要是玩家在死亡后也能随机
抽一张图,那他就能看到这N张图中的很多张,那不是很好吗!
[PHP]/* 服务器图片广告
   在CS/CZ里实现了以前只有在HLTV才有的显示图片的功能,
   适合宣传自己的服务器和广播信息!
*/

/* 插件功能::
   在客户端第一次加入队伍时,随机设置一个图片。
   在你死亡或在观察者模式时就可以看到该图片。
   当然你可以根据自己的需要重新设计显示方法。
*/
/* 安装::
   解压 zip 里的 gfx 文件夹到 \cstrike 目录下
   安装 spec_banner_ads.amxx 到 (cstrike\addons\amxmodx\plugins) 目录下
*/
/* 控制台命令::
   spec_banner_ads 1
   //(默认 1)0 = 关闭 1 = 打开
*/

/* 注意事项::
   如果自己修改 tga 图片,保存格式为一定要为 24b 格式,否则会出错.
   图片大小可以自己改,适合不同的分辨率
*/
#define PLUGIN  "Spectator Banner Ads"
#define VERSION "0.1.16"
#define AUTHOR  "iG_os"
#include <amxmodx>
#define SVC_DIRECTOR 51  // come from util.h
#define DRC_CMD_BANNER 9 // come from hltv.h
// sum of tga files
#define TGASUM 2
// tga of banners
new szTga[TGASUM][] ={
"gfx/knife1.tga" ,
"gfx/amxx.tga"
}
new pCVAR_Tga
new g_SendOnce[33]
public plugin_precache()
{
   register_plugin(PLUGIN, VERSION, AUTHOR)
   register_logevent("joined_team", 3, "1=joined team")

   pCVAR_Tga = register_cvar("spec_banner_ads", "1")

   if (get_pcvar_num(pCVAR_Tga))
   {
      for (new i=0; i<TGASUM; i++)
         precache_generic(szTga)
   }
}
public client_putinserver(id)
{
   g_SendOnce[id] = true
}
public joined_team()
{
   new loguser[80], name[32]
   read_logargv(0, loguser, 79)
   parse_loguser(loguser, name, 31)
   new id = get_user_index(name)
   if ( get_pcvar_num(pCVAR_Tga) && g_SendOnce[id] && is_user_connected(id))
   {
      // random select one tga
      new index = random_num( 0, TGASUM - 1)
      g_SendOnce[id] = false      // send show tga command to client
      message_begin( MSG_ONE, SVC_DIRECTOR, _, id)

      write_byte( strlen( szTga[index]) + 2) // command length in bytes

      write_byte( DRC_CMD_BANNER)
      
      write_string( szTga[index]) // banner file
      
      message_end()
   
   }
}
[/PHP]

[color="Red"]register_logevent("joined_team", 3, "1=joined team")
这一行我改成
[color="Blue"]register_logevent("joined_team",3, "1=Round_Start")
好像广告功能都没了,更不要说什么抽随机的广告图片了!

希望高手能帮我调下,玩家要能看到多张广告图片,那该有多好啊!
发表于 2007-4-14 10:55:14 | 显示全部楼层 来自 福建漳州

回复: 服务器图片广告这个插件能修改下吗?

Post by lu0007
首先我想说的是,他的插件功能我已经实现,如广告及广告的透明效果!
但他实现的过程是玩家进入CS服的时候,加载一个广告图片,因为插件中,可以设置N个广告图片,结果是只要他不退出CS服,他就只能看到同一个广告图片,我想要是玩家在死亡后也能随机
抽一张图,那他就能看到这N张图中的很多张,那不是很好吗!
[php]/* 服务器图片广告
在CS/CZ里实现了以前只有在HLTV才有的显示图片的功能,
适合宣传自己的服务器和广播信息!
*/

/* 插件功能::
在客户端第一次加入队伍时,随机设置一个图片。
在你死亡或在观察者模式时就可以看到该图片。
当然...
你改成Round_Start,当然看不到了,1=joined team,是某玩家加入某队伍时产生,此玩家可以看得到,而1=Round_Start,在里边使用
read_logargv(0, loguser, 79)
parse_loguser(loguser, name, 31)
new id = get_user_index(name)
无法得到玩家的id的。
回复

使用道具 举报

 楼主| 发表于 2007-4-14 10:58:36 | 显示全部楼层 来自 浙江嘉兴

回复: 服务器图片广告这个插件能修改下吗?

Post by Rulzy
你改成Round_Start,当然看不到了,1=joined team,是某玩家加入某队伍时产生,此玩家可以看得到,而1=Round_Start,在里边使用
read_logargv(0, loguser, 79)
[color=...
首先谢谢你的回复 ,具体的我是不会了的,关键是我想要的效果,能改出来嘛!想想自己做了2个广告图片 ,可他们只能看到一张,不能随机多看到几张,那多不爽啊,要能多看到点,多爽啊!
再次谢谢你!
回复

使用道具 举报

 楼主| 发表于 2007-4-15 21:04:42 | 显示全部楼层 来自 浙江嘉兴

回复: 服务器图片广告这个插件能修改下吗?

是不是我想要的效果是做不到的啊,
要是做不到,也望能告诉我下!谢谢!
回复

使用道具 举报

发表于 2011-8-11 03:23:14 | 显示全部楼层 来自 北京
这个需要开启什么模块?
回复

使用道具 举报

发表于 2011-8-11 09:28:34 | 显示全部楼层 来自 广东汕尾
R版给力!!!   LZ的想法和我一样!!!
回复

使用道具 举报

发表于 2011-8-13 11:59:52 | 显示全部楼层 来自 广东广州
支持支持支持支持
回复

使用道具 举报

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

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