回复: 【已更新】【原创】【插件】QQ表情插件
晕,我还有在CS里输入/L可以玩连连看的呢,要不要回复: 【已更新】【原创】【插件】QQ表情插件
不会啊,假如,菜单超过一页,比如说两页,那么,除了1234578是正常选择外,你还需要增加9(更多),0(退出),如此一来,8个选择就是固定的,而9和0的选择就是额外加上去的。所以,定义了每页菜单的最大数量。
#include <amxmod>
#include <amxmisc>
#define MAX_DISPLAY 8
#define MAX_SPRITES 24
#define TE_PLAYERATTACHMENT 124
new get_spr_name
new get_spr_precached
new get_index_spr
new g_nMenuPosition
public plugin_init()
{
register_plugin("Face Show", "0.2", "")
register_menucmd( register_menuid("\yPleaseChoose"), 1023, "MenuCommand" )
register_clcmd( "say /face","DoShowMenu", 0 )
return PLUGIN_CONTINUE
}
public plugin_precache()
{
get_index_spr = 0
new sprite_file
new sprite_config
build_path(sprite_config, 63, "$basedir/config/spr_list.ini")
new len, pos = 0
if(file_exists(sprite_config))
{
while(read_file(sprite_config,pos++,get_spr_name,31,len))
{
if( sprite_config == ';' || !len ) continue
format(sprite_file,63,"sprites/%s.spr",get_spr_name)
if(file_exists(sprite_file))
{
get_spr_precached = precache_model(sprite_file)
get_index_spr++
}
}
}
return PLUGIN_CONTINUE
}
public MenuCommand( id, key )
{
switch( key )
{
case 8: ShowMenu( id, ++g_nMenuPosition )
case 9: ShowMenu( id, --g_nMenuPosition )
default:{
if(!is_user_alive(id))
{
set_hudmessage(200, 100, 0, -1.0, 0.3, 0, 1.0, 5.0, 0.1, 0.2, 3)
show_hudmessage(id,"Sorry,You Are Dead!!!")
return PLUGIN_HANDLED
}
new spr_name = g_nMenuPosition*MAX_DISPLAY + key
message_begin(MSG_ALL,SVC_TEMPENTITY,{0,0,0},id )
write_byte ( TE_PLAYERATTACHMENT )
write_byte(id)
write_coord(60)
write_short( get_spr_precached )
write_short(30)
message_end()
return PLUGIN_HANDLED
}
}
return PLUGIN_HANDLED
}
public ShowMenu( id, pos )
{
if( pos < 0 ) return
new i, j = 0
new nKeys, nStart, nEnd, nLen
new faceMenuBody
nStart = pos * MAX_DISPLAY
if( nStart >= MAX_SPRITES )
nStart = pos = g_nMenuPosition = 0
nLen = format( faceMenuBody, 511, "\yPleaseChoose^n^n",pos + 1)
nEnd = nStart + MAX_DISPLAY
nKeys = (1<<9)
if( nEnd > MAX_SPRITES ) nEnd = MAX_SPRITES
for( i = nStart; i < nEnd; i++ )
{
nKeys |= (1<<j++)
nLen += format( faceMenuBody, (511-nLen), "\w%d. %s^n\w", j, get_spr_name )
}
if( nEnd != MAX_SPRITES )
{
format( faceMenuBody, (511-nLen), "^n9. More...^n0. %s", pos ? "Back" : "Exit" )
nKeys |= (1<<8)
}
else format( faceMenuBody, (511-nLen), "^n0. %s", pos ? "Back" : "Exit" )
show_menu(id,nKeys,faceMenuBody,-1)
}
public DoShowMenu( id, lvl, cid )
{
if( cmd_access( id, lvl, cid, 1 ) )
ShowMenu( id, g_nMenuPosition = 0 )
return PLUGIN_HANDLED
}
回复: 【已更新】【原创】【插件】QQ表情插件
Post by AE86晕,我还有在CS里输入/L可以玩连连看的呢,要不要
我要,能上传一个吗?
谢谢 !
回复: 【已更新】【原创】【插件】QQ表情插件
Post by AE86晕,我还有在CS里输入/L可以玩连连看的呢,要不要
我还能输入/flash,然后打企鹅呢,你要不要??
回复: 【已更新】【原创】【插件】QQ表情插件
Post by '']我还能输入/flash,然后打企鹅呢,你要不要??
发个上来 !!!!!!!
回复: 【已更新】【原创】【插件】QQ表情插件
Post by '']我还能输入/flash,然后打企鹅呢,你要不要??
:sweat: 那CS变的更花哨了
回复: 【已更新】【原创】【插件】QQ表情插件
哈哈哈哈哈,这都相信?CS1.6的MOTD不是支持HTML么,SAY一个,然后调用特定的网页,然后网页里面嵌入FLASH
别说打企鹅,你看电影都没问题!!!
回复: 【已更新】【原创】【插件】QQ表情插件
Post by '']哈哈哈哈哈,这都相信?
CS1.6的MOTD不是支持HTML么,SAY一个,然后调用特定的网页,然后网页里面嵌入FLASH
别说打企鹅,你看电影都没问题!!!
晕,还以为是真的呢 !
不过用motd不大实际,曾经试过一次。因为cs的数据的最大交换量为8k/s左右,打那种游戏下载慢而且非常不流畅,延迟非常大,基本没有可玩性。至于电影更是不可能了。以上己见 。
你有其他方法解决网络限制吗?我还真有打算给用户们播放一些影片呢,就是不知道如何实现。
(MOTD,听说这个文件有不少设置上的限制。根本无法与专业浏览器比较。)
回复: 【已更新】【原创】【插件】QQ表情插件
刚刚使用了一下,觉得效果挺不错,图片也清晰。谢谢楼主分享 !
希望改进的地方:
1。增加一些游戏过程中经常使用的文字的表情。如 omg,shit,nice,hi all,thx bye all,等。
2。现在的情况是 say/face 之后再翻页查找相应表情,有点麻烦呀!如果打相应文字信息就出现表情图片就好了。比如:say hi all就出现 hiall的表情图片。
3。现在只能活着的时候使用表情。如果死者也能够使用表情的就更好了。最好增加一个参数,以设置可使用表情的是活人还是死人还是任何情况。大家都频繁的使用表情,估计给服务器负担挺大,能够设置使用表情的间隔时间就更更好了。(死者向活者说nice shot。虽然没多大勇,增加些娱乐吧!)
4。影响服务器环境的表情最好不要加入。fuck....等
5。别忘了amxx版本的呀!
以上,本人的小小建议( :brick: 小小?改起来可麻烦了 :sweat: )。
最后再顶一下,谢谢楼主的无私分享!