多功能手雷插件txt文本显示问题求助
这是一个多功能手雷插件,右键可以切换手雷模式(正常,感应,碰炸,激光,速度感应,遥控),已经将txt文本放进了addons\amxmodx\data\lang,进入游戏右键切换不显示文本,只显示%s,求助大佬帮忙分析一下问题 插件呢?#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#define PLUGIN "Multi-Grenade"
#define VERSION "1.0"
#define AUTHOR "n1anqing"
enum {
MODE_NORMAL, // 普通模式
MODE_PROXIMITY, // 感应模式
MODE_IMPACT, // 碰炸模式
MODE_LASER, // 激光模式
MODE_SPEED, // 速度感应
MODE_REMOTE // 遥控模式
}
new g_iGrenadeMode
new g_iGrenadeEnt
new bool:g_bGrenadeThrown
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_event("CurWeapon", "event_weapon_change", "be", "1=1")
RegisterHam(Ham_Think, "grenade", "fw_ThinkGrenade")
RegisterHam(Ham_Item_Deploy, "weapon_hegrenade", "fw_GrenadeDeploy", 1)
register_forward(FM_CmdStart, "fw_CmdStart")
}
public client_putinserver(id) {
g_iGrenadeMode = MODE_NORMAL
g_bGrenadeThrown = false
}
public event_round_start() {
for(new i = 1; i <= 32; i++) {
g_iGrenadeMode = MODE_NORMAL
g_bGrenadeThrown = false
}
}
public event_weapon_change(id) {
if(read_data(2) == CSW_HEGRENADE) {
show_mode_hud(id)
}
}
public fw_GrenadeDeploy(ent) {
new id = get_pdata_cbase(ent, 41, 4)
if(pev_valid(id) && is_user_alive(id)) {
show_mode_hud(id)
}
}
public fw_CmdStart(id, uc) {
if(!is_user_alive(id) || get_user_weapon(id) != CSW_HEGRENADE)
return FMRES_IGNORED
static buttons
buttons = get_uc(uc, UC_Buttons)
if(buttons & IN_ATTACK2 && !(pev(id, pev_oldbuttons) & IN_ATTACK2)) {
g_iGrenadeMode = (g_iGrenadeMode + 1) % 6
show_mode_hud(id)
}
return FMRES_IGNORED
}
public fw_ThinkGrenade(ent) {
if(!pev_valid(ent))
return HAM_IGNORED
static classname
pev(ent, pev_classname, classname, 31)
if(!equal(classname, "grenade"))
return HAM_IGNORED
static owner
owner = pev(ent, pev_owner)
if(!(1 <= owner <= 32))
return HAM_IGNORED
switch(g_iGrenadeMode) {
case MODE_PROXIMITY: proximity_mode(ent)
case MODE_IMPACT: impact_mode(ent)
case MODE_LASER: laser_mode(ent)
case MODE_SPEED: speed_mode(ent)
case MODE_REMOTE: remote_mode(ent)
}
return HAM_IGNORED
}
// 各模式具体实现函数(示例)
proximity_mode(ent) {
// 感应模式:检测附近是否有敌人
}
impact_mode(ent) {
// 碰炸模式:碰到物体立即爆炸
}
laser_mode(ent) {
// 激光模式:检测激光束触发
}
speed_mode(ent) {
// 速度感应:速度低于阈值爆炸
}
remote_mode(ent) {
// 遥控模式:按E键引爆
}
show_mode_hud(id) {
static mode_name[] = {
"普通模式",
"感应模式",
"碰炸模式",
"激光模式",
"速度感应",
"遥控模式"
}
set_hudmessage(0, 255, 0, -1.0, 0.8, 0, 6.0, 1.0)
show_hudmessage(id, "当前手雷模式: %s", mode_name])
}
页:
[1]