|
请下载贴子附件原码插件!这些代码转amxx有错误,请高手帮忙纠正一下,谢谢
结合下面几种插件,我希望能做出一个具有注册保存功能的HP等级升级插件,希望对各位有帮助!
当然如果与我分享当然感谢万分了!
//==========================储存数据
//这里是关于玩家连接服务器的相关函数
//我们可以用这个函数定义
//当玩家进入服务器时,读取玩家的经验,等级等等相关数据
public client_connect(id)
{
// 如果是保存经验,才会读取数据
if(get_pcvar_num(SaveXP) == 1)
{
// 读取玩家的数据
LoadData(id)
}
//这个是玩家离开了服务器的相关函数
public SaveData(id)
{
// 获取玩家的steam ID,我们将要用steam ID来记录数据
new AuthID[35] get_user_authid(id,AuthID,34)
new vaultkey[64],vaultdata[256]
// 设计当进行本模式时候的vault文件
format(vaultkey,63,"%s-Mod",AuthID)
format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
// 保存数据
nvault_set(g_vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
// 当保存经验开启的时候
if(get_pcvar_num(SaveXP) == 1)
{
// 保存经验
SaveData(id)
}
}
//===========================
public LoadData(id)
{
new AuthID[35] get_user_authid(id,AuthID,34)
new vaultkey[64],vaultdata[256]
// 查找玩家的数据
format(vaultkey,63,"%s-Mod",AuthID)
format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
// 读取数据
nvault_get(g_vault,vaultkey,vaultdata,255)
replace_all(vaultdata, 255, "#", " ")
new playerxp[32], playerlevel[32]
parse(vaultdata, playerxp, 31, playerlevel, 31)
PlayerXP[id] = str_to_num(playerxp)
PlayerLevel[id] = str_to_num(playerlevel)
return PLUGIN_CONTINUE
// =============================================
public plugin_init()
{
register_plugin("earn_health_mod","1.0","amok为 微波炉汉化增强版为 by lai为 xiwan")
register_event("DeathMsg","event_deathmsg","a")
register_event("RoundTime", "eNewRound", "bc")
}
public ChangeClass(id)
{
new menu = menu_create("Class Menu" , "Class_Handle");
menu_additem(menu ,"Dog", "1" , 0);
menu_additem(menu ,"Cat", "2" , 0);
menu_additem(menu ,"Horse", "3" , 0);
menu_additem(menu ,"Cow", "4" , 0);
menu_setprop(menu , MPROP_EXIT , MEXIT_ALL);
menu_display(id , menu , 0);
return PLUGIN_CONTINUE;
}
public Class_Handle(id , menu , item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
}
new szCommand[6] , szName[64]; new access , callback;
menu_item_getinfo(menu , item , access , szCommand , 5 , szName , 63 , callback);
new i = str_to_num(szCommand)
if(PlayerClass[id] != i)
{
PlayerClass[id] = i client_print(id,print_chat,"You are now a %s",CLASSES)
}
else
{
client_print(id,print_chat,"You are alredy a %s",CLASSES)
}
menu_destroy(menu);
return PLUGIN_CONTINUE
}
//这里是关于玩家连接服务器的相关函数
//我们可以用这个函数定义
//当玩家进入服务器时,读取玩家的经验,等级等等相关数据
public client_connect(id)
{
// 如果是保存经验,才会读取数据
if(get_pcvar_num(SaveXP) == 1)
{
// 读取玩家的数据
LoadData(id)
}
}
//=============================
这里是显示HUD的函数
这里是用来显示等级,经验,种类的...
public ShowHud(id)
{
set_hudmessage(255, 0, 0, 0.75, 0.01, 0, 6.0, 15.0)
show_hudmessage(id, "Level: %i^nXP: %i^nClass: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])
} |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注个册吧
×
|