=========================================== 轻松写插件~ ~写插件轻松===========================================大家好~我又是Y14Y了~ [依然是AMXX新手]~!@#$%^&*() (经过一大串废话后)今天你将活用变数 来控制等级 这种东西Let's GO!--------------------------------------------------------------------------------------如果你不知道变数是什么 请先到我的第一集http://bbs.mychat.to/reads.php?tid=976916
--------------------------------------------------------------------------------------
我将用一个自制速成型插件 功能是
*
像C$O的启示录一样的血量升级 3000美金生1等 最高41等 每生1等重生时的血量会加20*
我会放原插件内容 和 口语化的翻译 让你能更清楚每句话的意义
更快学会!
~~~~~~~~~~~~~~~~~~插件原文~~~~~~~~~~~~~~~~~~~~~~~~~
//此插件只提供参考 请勿自行修改后 自称自创品
#include <amxmodx>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>
#include <fun>
#define PLUGIN "变数实用范例 {2} - 购买血量等级"
#define VERSION "1.0"
#define AUTHOR "Y14Y"
new g_heal_level[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "player", "fw_Spawn_Post", 1)
register_clcmd("maxhp_up", "example")
}
public example(id)
{
if(!is_user_alive(id))
{
client_print(id, print_chat, "[系统]请等到复活后再使用!")
}
else if(is_user_alive(id) && cs_get_user_money(id) >= 3000 && g_heal_level[id] <= 40)
{
cs_set_user_money(id, cs_get_user_money(id) - 3000 ,0)
g_heal_level[id]++
set_user_health(id, get_user_health(id) + 20)
client_print(id, print_chat, "[系统]你提升了血量上限至[%d]", (g_heal_level[id] * 20 + 100))
}
else if(is_user_alive(id) && cs_get_user_money(id) < 3000)
{
client_print(id, print_chat, "[系统]你的金钱不够!")
}
else if(is_user_alive(id) && g_heal_level[id] == 41)
{
client_print(id, print_chat, "[系统]你的血量上限已达最高!")
}
}
public fw_Spawn_Post(id)
{
set_user_health(id, get_user_health(id) + (g_heal_level[id] * 20))
}
~~~~~~~~~~~~~~~~~~文原件插~~~~~~~~~~~~~~~~~~~~~~~~~
翻译: (基础类的不多加说明)
#include <amxmodx> //不多加说明
#include <hamsandwich> //不多加说明
#include <cstrike> //不多加说明
#include <fakemeta> //不多加说明
#include <fun> //不多加说明
#define PLUGIN "变数实用范例 {2} - 购买血量等级" //不多加说明
#define VERSION "1.0" //不多加说明
#define AUTHOR "Y14Y" //不多加说明
新变数 名字g_heal_level[33]
public plugin_init() //不多加说明
{
register_plugin(PLUGIN, VERSION, AUTHOR) //不多加说明
注册(事件[复活] 对象[玩家] 此发生时事件触发"fw_Spawn_Post"这个FUCTION)
注册指令(输入"maxhp_up", 触发"example")
}
public example(id) //不多加说明
{
如果(玩家没有生存(id))
{
client_print(id, print_chat, "[系统]请等到复活后再使用!") //不多加说明
}
其他的 如果(玩家生存(id) 并且 取得玩家美金大于等于3000 并且 g_heal_level[id]这个变数 小于等于 40)
{
设定美金(对象:触发此FUCTION的玩家, 取得玩家金钱(id) 扣除3000 ,0) //后面的0不懂的勿动
g_heal_level[id]此变数加1
设置血量(对象:id , 取得玩家血量 + 20)
client_print(id, print_chat, "[系统]你提升了血量上限至[%d]", (g_heal_level[id] * 20 + 100)) //不多加说明
}
其他的 如果(玩家生存(id) 并且 取得玩家美金(id) 小于 3000)
{
client_print(id, print_chat, "[系统]你的金钱不够!") //不多加说明
}
其他的 如果(玩家生存(id) 并且 g_heal_level[id]此变数等于41)
{
client_print(id, print_chat, "[系统]你的血量上限已达最高!") //不多加说明
}
}
public fw_Spawn_Post(id) //经解释后 现在是玩家重生发生的事
{
设置血量(对象:id , 取得玩家血量 加上 (g_heal_level[id]的数量 乘于 20))
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
如果身为高手的你觉得哪里讲错或有更好的讲法 欢迎说出~ ^^
今天的教学就到这里了~祝你能成SMA高手
如果你觉得对你有用
就让我吃朵花花 或推推吧~