搜索
查看: 14500|回复: 21

求助!关于HUD面版显示SPR!

[复制链接]
发表于 2009-10-5 22:54:09 | 显示全部楼层 |阅读模式 来自 中国–广东–汕尾
小弟初学AMXX插件,好不容易来到这个好论坛,请各位大侠多多关照。

我根据武器图标的插件,在cstrike\sprites\hud.txt中写入
  1. abc      640 abc   0   0   96   96
复制代码
在cstrike\sprites\放入abc.spr

然后在插件中使用
  1. new iconstatus
  2. iconstatus = get_user_msgid("StatusIcon")

  3. message_begin(MSG_ONE,iconstatus,{0,0,0},id)
  4. write_byte(1)
  5. write_string("abc")
  6. write_byte(255)
  7. write_byte(255)
  8. write_byte(255)
  9. message_end()
复制代码
成功在屏幕显示出abc.spr

但是如果把这个插件用到服务器,不会自动下载SPR文件,也不会自动在hud.txt里写入内容,于是我修改成
  1. new iconstatus
  2. iconstatus = get_user_msgid("StatusIcon")

  3. public plugin_precache()
  4. {
  5.         abc = precache_model("sprites/abc.spr")
  6.         return PLUGIN_CONTINUE
  7. }

  8. message_begin(MSG_ONE,iconstatus,{0,0,0},id)
  9. write_byte(1)
  10. write_string(abc)
  11. write_byte(255)
  12. write_byte(255)
  13. write_byte(255)
  14. message_end()
复制代码
编译时显示write_string的参数不正确,我把write_string(abc)改成write_string("abc")却只是显示hud.txt中注册的SPR,public plugin_precache()就失去了应有的作用。

但是我在写显示在一个人身上的SPR时,却可以通过write_short(abc)显示




我要问的就是,用message_begin(MSG_ONE,iconstatus,{0,0,0},id)显示一个SPR时只能显示hud.txt中注册过的SPR?如果是的话,我想在屏幕上显示一个hud.txt中未注册过的SPR,要怎样显示?或者说,有什么方法通过插件实现在hud.txt中未注册SPR?
还有什么在屏幕上显示SPR的比较好的方法?能自定义SPR在屏幕上的坐标吗?
 楼主| 发表于 2009-10-5 22:56:23 | 显示全部楼层 来自 中国–广东–汕尾
点通高手多,平时搜索插件什么的都搜索到这里来,好不容易在这个论坛注册了,真希望能得到高手的指教,和学习更多知识!
回复 0 1

使用道具 举报

发表于 2009-10-6 11:51:18 | 显示全部楼层 来自 中国–四川–遂宁
  1.         public plugin_precache()
  2.         {
  3.                 precache_model("sprites/abc_name.spr")
  4.         }
  5.        
  6.         public new_icon()
  7.         {
  8.                 message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id)
  9.                 write_byte(1) // 0=隐藏, 1=显示, 2=闪)
  10.                 write_string("abc") // sprite 名称
  11.                 write_byte(255) // 红
  12.                 write_byte(255) // 绿
  13.                 write_byte(255) // 蓝
  14.                 message_end()
  15.         }
  16.         hud.txt
  17.         abc        640 abc_name        256        96        256        96
复制代码
回复

使用道具 举报

 楼主| 发表于 2009-10-6 12:07:35 | 显示全部楼层 来自 中国–广东–汕尾
  1.         hud.txt

  2.         abc        640 abc_name        256        96        256        96
复制代码
请问这句是在hud.txt中写入
  1. abc        640 abc_name        256        96        256        96
复制代码
吗?
回复

使用道具 举报

发表于 2009-10-6 12:16:04 | 显示全部楼层 来自 中国–四川–遂宁
是的{:2_31:}
回复

使用道具 举报

发表于 2009-10-6 14:19:27 | 显示全部楼层 来自 中国–广东–深圳
貌似hud.txt文件只能玩家自己写入,服务器端无法控制。
否则就可以弄防cs0l的杀人提示,和顶部的记分牌了。
回复

使用道具 举报

发表于 2009-10-7 23:11:50 | 显示全部楼层 来自 中国–广东–广州
楼上已经回答了问题所在,hud.txt是插件无法修改的..
回复

使用道具 举报

 楼主| 发表于 2009-10-13 22:22:37 | 显示全部楼层 来自 中国–广东–汕尾
楼上已经回答了问题所在,hud.txt是插件无法修改的..
lnjkming 发表于 2009-10-7 23:11

是啊………………………………
回复

使用道具 举报

发表于 2010-1-15 14:43:01 | 显示全部楼层 来自 中国–广东–深圳–福田区
哎。。。。。
回复

使用道具 举报

发表于 2010-3-21 10:59:16 | 显示全部楼层 来自 中国–四川–达州
通过write_short(abc)显示
回复

使用道具 举报

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

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