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

MOD中国同盟社

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2099|回复: 15

好吧我挖坟了(挖自己的可以吧)AMXX新式菜单教程.枫叶兔   [复制链接]

Developers

枫叶兔子额?

Rank: 8Rank: 8

帖子
1063
精华
0
声望
3636 点
金币
1043 Mold
被赞许
4 次
注册时间
2008-8-10

Modchina元老 可爱小猫

发表于 2010-12-6 18:06:17 |显示全部楼层
本帖最后由 qwe100844 于 2010-12-6 18:17 编辑

某人需要所以给贴了出来,从自己空间里挖出来的。。好老好老了。。
之所以发出来是最近终于稳定了下来连上了校园网~~回到论坛了~最近没写什么东西,所以就只好发这个了



这个属于汉化+教程(其实英文的看上去还容易理解些,英文的表达直白的多)



新版菜单的特点是很动态,用起来很容易理解(是这样吗- -)
此文作者枫叶兔,来自AC联盟论坛、中国MOD同盟社、AMXMODX中文论坛以及此空间



请最好不要转载,如要转载请保留此文的完整性(包括上面的那一段啊喂)

#include <amxmodx>  //不解释,你需要AMXMODX1.5以上才能使用新版菜单! public plugin_init()

    //..你的其余代码
register_clcmd( "my_awesome_menu","AwesomeMenu"); //注册玩家命令   
//和老版本的不同,新版本的不需要在这里注册菜单
}
//下面是生成菜单的自定义函数
public AwesomeMenu(id)
{
//创建一个菜单,并用一个变量记录id (猜测应该是菜单id吧)
new menu = menu_create("\rLook at this awesome Menu!:", "menu_handler");  
//第一个参数是菜单的名称
//第二个参数是玩家按下按键后来处理玩家按键的函数:


    //和老版的不同,新版的需要通过menu_additem这个native函数来给菜单增加选择项(感觉很方便哦)
menu_additem(menu, "\w我是选择项 #1", "1", 0);
menu_additem(menu, "\w我是选择项 #2", "2", 0);
menu_additem(menu, "\w我是秘密选择项 #3", "3", ADMIN_ADMIN);
//第一个参数是指定要往哪个菜单添加选项
//第二个参数是选项显示的文字\w的意思是白色\y是黄色\r是红色
//第三个参数是传递到处理玩家按键的函数的键位参数//第四个参数是此选择项需要的玩家权限,你可以在amxconst.inc里查询

//设置菜单的属性,这里只演示一个,其余的可以去amxconst.inc查

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
//第一个参数是目标菜单
//第二个是要改变的属性(参阅amxconst.inc);
//第三个是改变后的值 (在这里,我们需要添加一个特殊的选项来退出菜单,把它设置成MEXIT_NEVER则不会显示此选项)


//现在菜单的建造和设置都好了,可以显示菜单了
menu_display(id, menu, 0);
//第一个参数是显示的对象(玩家ID),貌似不能用0来代替所有玩家
//第二个是菜单
//第三个是起始页数(注意页数id从0开始!!)
}


//以下就是刚才注册过的来处理玩家按键的函数
public menu_handler(id, menu, item)
{
    //当玩家退出时

    if( item == MENU_EXIT )"
    {
            menu_destroy(menu); //Native函数,用来摧毁菜单
            return PLUGIN_HANDLED;
    }

    //现在来获取按键等信息
new data[6], iName[64];
new access, callback;

    //获取menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);

    //data就是按键信息,是字符型变量,现在把它转换成整型(当然你也可以用equali来比较而不用转换)
new key = str_to_num(data);

    //开始判断
    switch(key)
    {
        case 1:
        {
               client_print(id, print_chat, "你选择了选择项1"); //这里用client_print来测试插件
//毁掉菜单并返回值
               menu_destroy(menu);
               return PLUGIN_HANDLED;
        }
       case 2:
       {
               client_print(id, print_chat, "你选择了选择项2"); //这里没有破坏菜单
       }
       case 3:
      {
               client_print(id, print_chat, "你选择了秘密选项3");
      }
}

//在所有情况不符的情况下
    menu_destroy(menu);
return PLUGIN_HANDLED;
}

感觉新版的用起来挺方便的,如有不正确请大力指正



新版的特点是“更动态"(BAILOPAN说的),用起来感觉比老版的更灵活,更有条理,而且貌似也更好看

为了方便查看字体改了颜色。。话说建议咱论坛自动给代码部分上色吧。。加颜色挺麻烦的
已有 4 人评分声望 金币 收起 理由
qqq4180017 + 5 恶意潜水
无语。。A + 20 + 5 呵呵
lmvfwsp + 10 + 1 精品文章
nan575556 + 20 + 5 禁止挖坟.禁止挖坟..不分男女... ...

总评分: 声望 + 55  金币 + 11   查看全部评分

疯狂屠戮X开发中
新官网
http://MapleRabbit.vb.vc

使用道具 举报

Modchina声望-尊敬

炮姐赛高

Rank: 7Rank: 7Rank: 7

帖子
512
精华
0
声望
3472 点
金币
315 Mold
被赞许
5 次
注册时间
2009-10-1

懒人勋章

发表于 2010-12-6 18:10:30 |显示全部楼层
是什么东西的菜单  小白看不懂 - -
[img]http://31.tel.115cdn.com/pickdown/M00/36/B1/tzyLAk1gmy4AAAAAAAQKBw_Z_ho5373060/30.png?key=7973699072261971f0b77cf53d1b4ec3&key1=4da8fb94&file=30.

使用道具 举报

Developers

枫叶兔子额?

Rank: 8Rank: 8

帖子
1063
精华
0
声望
3636 点
金币
1043 Mold
被赞许
4 次
注册时间
2008-8-10

Modchina元老 可爱小猫

发表于 2010-12-6 18:18:04 |显示全部楼层
回复 2# nyreggg9


    AMXX啊。。。上面有写的。。。
疯狂屠戮X开发中
新官网
http://MapleRabbit.vb.vc

使用道具 举报

Rank: 3Rank: 3

帖子
0
精华
0
声望
110 点
金币
40 Mold
被赞许
3 次
注册时间
2009-6-18
发表于 2010-12-6 18:20:32 |显示全部楼层
禁止挖坟..禁止挖坟...

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
1261
精华
4
声望
7552 点
金币
980 Mold
被赞许
13 次
注册时间
2009-5-24
发表于 2010-12-6 18:30:41 |显示全部楼层
哈哈!原来是这样。我不会写菜单- -。现在多亏枫叶兔了。原来这么简单
已有 1 人评分声望 收起 理由
qwe100844 + 5 汗。。早就在QQ空间里了。。

总评分: 声望 + 5   查看全部评分

使用道具 举报

头像被屏蔽

禁止发言

帖子
667
精华
0
声望
558 点
金币
1135 Mold
被赞许
3 次
注册时间
2009-8-2
发表于 2010-12-6 19:09:34 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
561
精华
0
声望
2420 点
金币
769 Mold
被赞许
2 次
注册时间
2008-6-1
发表于 2010-12-6 19:21:22 |显示全部楼层
是啊 不懂!!!!!!!!!!!!!
已有 1 人评分声望 收起 理由
阿发 -16

总评分: 声望 -16   查看全部评分

使用道具 举报

Honorary Member

在人海出现,同时也在人海中沉没

Rank: 7Rank: 7Rank: 7

帖子
4193
精华
3
声望
7989 点
金币
696 Mold
被赞许
151 次
注册时间
2009-12-11

黑暗使者 Modchina灌水王

发表于 2010-12-6 19:39:24 |显示全部楼层
互相学习

使用道具 举报

Modchina声望-尊敬

炮姐赛高

Rank: 7Rank: 7Rank: 7

帖子
512
精华
0
声望
3472 点
金币
315 Mold
被赞许
5 次
注册时间
2009-10-1

懒人勋章

发表于 2010-12-6 20:12:04 |显示全部楼层
回复 1# qwe100844


    你能解释下按哪个键呼出菜单?
能在M菜单里另外添加吗?
[img]http://31.tel.115cdn.com/pickdown/M00/36/B1/tzyLAk1gmy4AAAAAAAQKBw_Z_ho5373060/30.png?key=7973699072261971f0b77cf53d1b4ec3&key1=4da8fb94&file=30.

使用道具 举报

Developers

枫叶兔子额?

Rank: 8Rank: 8

帖子
1063
精华
0
声望
3636 点
金币
1043 Mold
被赞许
4 次
注册时间
2008-8-10

Modchina元老 可爱小猫

发表于 2010-12-6 21:04:35 |显示全部楼层
回复 9# nyreggg9


    这个只是通过插件来呼出菜单,并没有注册clcmd的代码部分

你注册个clcmd来调用这段就可以达到你要的效果
疯狂屠戮X开发中
新官网
http://MapleRabbit.vb.vc

使用道具 举报

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

回顶部