搜索
查看: 2498|回复: 5

麻烦Rulzy帮忙....各位大大进来看看

[复制链接]
发表于 2008-7-23 08:47:44 | 显示全部楼层 |阅读模式 来自 中国–重庆–重庆–永川区
这段代码是魔兽进服选种族的时候菜单。请问怎么修改为
进入服务器拥有B权限的才能自由选择种族,如果没权限的普通玩家就只能按9键自动选择
谢谢
public menu_Select_Race(id, racexp[9]){
#if ADVANCED_DEBUG
writeDebugInfo("menu_Select_Race",0)
#endif
if (!warcraft3)
return PLUGIN_CONTINUE
if(g_mapDisabled){
client_print(id,print_chat,"%s %L", g_MODclient, id, "MAP_DISABLED")
client_print(id,print_chat,"%s %L", g_MODclient, id, "MAP_DISABLED_DUE")
}
new race_name[10][RACE_NAME_LENGTH], i, pos, menu_msg[512], selectrace[128]
new keys
format(selectrace, 127, "%L",id ,"MENU_SELECT_RACE")
for(i=1;i<(iCvar[FT_RACES]+1);i++){
lang_GetRaceName(i,id,race_name,RACE_NAME_LENGTH_F)
}
if(iCvar[MP_SAVEXP]){
pos += format(menu_msg[pos], 512-pos, "%L",id,"SELECT_RACE_TITLE", selectrace)
for(i=1; i<(iCvar[FT_RACES]+1);i++){
if(i==5){
new selecthero[128]
format(selecthero, 127, "%L",id ,"SELECT_HERO")
pos += format(menu_msg[pos], 512-pos, "%s", selecthero)
}
if(i==p_data[id][P_RACE])
pos += format(menu_msg[pos], 512-pos, "\d%d. %s\d\R%d^n", i, race_name, racexp[i-1])
else if(i==p_data[id][P_CHANGERACE])
pos += format(menu_msg[pos], 512-pos, "\r%d. %s\r\R%d^n", i, race_name, racexp[i-1])
else
pos += format(menu_msg[pos], 512-pos, "\w%d. %s\y\R%d^n", i, race_name, racexp[i-1])
keys |= (1<<(i-1))
}
}
else{
pos += format(menu_msg[pos], 512-pos, "%s^n^n", selectrace)
for(i=1; i<(iCvar[FT_RACES]+1);i++){
if(i==5){
new selecthero[128]
format(selecthero, 127, "%L",id ,"SELECT_HERO")
pos += format(menu_msg[pos], 512-pos, "%s", selecthero)
}
if(i==p_data[id][P_RACE])
pos += format(menu_msg[pos], 512-pos, "\d%d. %s^n", i, race_name)
else if(i==p_data[id][P_CHANGERACE])
pos += format(menu_msg[pos], 512-pos, "\r%d. %s^n", i, race_name)
else
pos += format(menu_msg[pos], 512-pos, "\w%d. %s^n", i, race_name)
keys |= (1<<(i-1))
}
}
keys |= (1<<(i-1))

if(iCvar[FT_RACES] == 9)
i = 0
pos += format(menu_msg[pos], 512-pos, "%L",id,"SELECT_RACE_FOOTER", i)
if(iCvar[FT_RACES] != 9){ // Add a cancel button
keys |= (1<<9)
pos += format(menu_msg[pos], 512-pos, "^n\w0. %L", id, "WORD_CANCEL")

}

show_menu(id, keys, menu_msg, -1)
return PLUGIN_HANDLED
}
发表于 2008-7-24 18:37:08 | 显示全部楼层 来自 中国–福建–漳州

回复: 麻烦Rulzy帮忙....各位大大进来看看

public menu_Select_Race(id, racexp[9]){
#if ADVANCED_DEBUG
writeDebugInfo("menu_Select_Race",0)
#endif
if (!warcraft3)
  return PLUGIN_CONTINUE
if(g_mapDisabled){
  client_print(id,print_chat,"%s %L", g_MODclient, id, "MAP_DISABLED")
  client_print(id,print_chat,"%s %L", g_MODclient, id, "MAP_DISABLED_DUE")
}
new race_name[10][RACE_NAME_LENGTH], i, pos, menu_msg[512], selectrace[128]
new keys
format(selectrace, 127, "%L",id ,"MENU_SELECT_RACE")
for(i=1;i<(iCvar[FT_RACES]+1);i++){
  lang_GetRaceName(i,id,race_name,RACE_NAME_LENGTH_F)
}
new IsAdmin = get_user_flags(id)&ADMIN_RESERVATION;
if(iCvar[MP_SAVEXP]){
  pos += format(menu_msg[pos], 512-pos, "%L",id,"SELECT_RACE_TITLE", selectrace)
  for(i=1; i<(iCvar[FT_RACES]+1);i++){
   if(i==5){
    new selecthero[128]
    format(selecthero, 127, "%L",id ,"SELECT_HERO")
    pos += format(menu_msg[pos], 512-pos, "%s", selecthero)
   }
   if(!IsAdmin)
    pos += format(menu_msg[pos], 512-pos, "\d%d. %s\d\R%d^n", i, race_name, racexp[i-1])
   else{
    if(i==p_data[id][P_RACE])
     pos += format(menu_msg[pos], 512-pos, "\d%d. %s\d\R%d^n", i, race_name, racexp[i-1])
    else if(i==p_data[id][P_CHANGERACE])
     pos += format(menu_msg[pos], 512-pos, "\r%d. %s\r\R%d^n", i, race_name, racexp[i-1])
    else
     pos += format(menu_msg[pos], 512-pos, "\w%d. %s\y\R%d^n", i, race_name, racexp[i-1])
    keys |= (1<<(i-1))
   }
  }
}
else{
  pos += format(menu_msg[pos], 512-pos, "%s^n^n", selectrace)
  for(i=1; i<(iCvar[FT_RACES]+1);i++){
   if(i==5){
    new selecthero[128]
    format(selecthero, 127, "%L",id ,"SELECT_HERO")
    pos += format(menu_msg[pos], 512-pos, "%s", selecthero)
   }
   if(!IsAdmin)
    pos += format(menu_msg[pos], 512-pos, "\d%d. %s^n", i, race_name)
   else{
    if(i==p_data[id][P_RACE])
     pos += format(menu_msg[pos], 512-pos, "\d%d. %s^n", i, race_name)
    else if(i==p_data[id][P_CHANGERACE])
     pos += format(menu_msg[pos], 512-pos, "\r%d. %s^n", i, race_name)
    else
     pos += format(menu_msg[pos], 512-pos, "\w%d. %s^n", i, race_name)
    keys |= (1<<(i-1))
   }
  }
}
keys |= (1<<(i-1))

if(iCvar[FT_RACES] == 9)
  i = 0
pos += format(menu_msg[pos], 512-pos, "%L",id,"SELECT_RACE_FOOTER", i)
if(iCvar[FT_RACES] != 9){ // Add a cancel button
  keys |= (1<<9)
  pos += format(menu_msg[pos], 512-pos, "^n\w0. %L", id, "WORD_CANCEL")
  
}

show_menu(id, keys, menu_msg, -1)
return PLUGIN_HANDLED
}
回复

使用道具 举报

 楼主| 发表于 2008-7-24 20:13:29 | 显示全部楼层 来自 中国–重庆–重庆–永川区

回复: 麻烦Rulzy帮忙....各位大大进来看看

实在是感谢啊。。。。。。。。等了这么久大大终于出来解救我门这些菜鸟了
感动ing......................
回复

使用道具 举报

发表于 2008-7-25 18:58:58 | 显示全部楼层 来自 中国–甘肃–兰州

回复: 麻烦Rulzy帮忙....各位大大进来看看

仅仅是进入服务器时普通玩家随机选取种族,那么进入服务器后普通玩家是不是可以再通过“changerace”命令来更换种族呢?还是玩家输入“changerace”后,只能按数字9键来选择,其他数字1- 8键都不起作用了?
回复

使用道具 举报

发表于 2008-8-8 13:11:19 | 显示全部楼层 来自 中国–浙江–杭州

回复: 麻烦Rulzy帮忙....各位大大进来看看

插件好奇妙,郁闷是菜鸟,尽心学半招,可惜底子薄。
回复

使用道具 举报

发表于 2008-8-8 13:15:31 | 显示全部楼层 来自 中国–浙江–杭州

回复: 麻烦Rulzy帮忙....各位大大进来看看

衷心感谢点通的斑竹们的无私热心的帮助我们这些有心学而无力学好的菜鸟。正因为有了你们才使点通更加精彩。
回复

使用道具 举报

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

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