ВИП приставка

Желаете модифициране на даден плъгин? Всичко това, както и още за езика Pawn само в този раздел!
Locked
User avatar
fl4sh_ro
Потребител
Потребител
Posts: 7
Joined: 01 Nov 2018, 23:10

ВИП приставка

Post by fl4sh_ro »

Искам плъгин за VIPS с флаг Т, с 105 HP, 100 ARMOR, SPEED 2x.
User avatar
JackEyedJones
РЕКЛАМАТОР
РЕКЛАМАТОР
Posts: 332
Joined: 18 Apr 2014, 06:17
Skype: voltouch180
CS Nick: <Not Good Simply KoreaN>
Favorite version: CS: 1.6
Location: Plovdiv, Bulgaria, Europe, Entire World
Contact:

Re: ВИП приставка

Post by JackEyedJones »

Променяш си флага и скоростта която да се добавя над тази на играча.

Code: Select all

#define VIP_FLAG ADMIN_LEVEL_H
#define USERSPEED 	100.0

Code: Select all

#include <amxmodx>
#include <fun>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_VERSION 	"1.0"
#define 		VIP_FLAG ADMIN_LEVEL_H
#define USERSPEED 	100

public plugin_init()
{
	register_plugin("Generated VIP Plugin", PLUGIN_VERSION, "AMXX-BG.info")
	register_cvar("amxxbg_vip", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
	RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
	register_event("CurWeapon", "SetUserSpeed", "1=1")
}

public OnPlayerSpawn(id)
{
	if(!is_user_alive(id) || !is_user_vip(id))
		return
	
	set_user_health(id, 105)
	cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM)
	set_user_maxspeed(id, get_user_maxspeed(id) + Float:USERSPEED)
}

public SetUserSpeed(id)
{
	if(!is_user_alive(id) || !is_user_vip(id)))
		return
	
	set_user_maxspeed(id, get_user_maxspeed(id) + Float:USERSPEED)
}

bool:is_user_vip(id)
	return !!(get_user_flags(id) & VIP_FLAG)
User avatar
fl4sh_ro
Потребител
Потребител
Posts: 7
Joined: 01 Nov 2018, 23:10

Re: ВИП приставка

Post by fl4sh_ro »

Можете да добавите VIP тага към таблото за управление и когато умрете Dead?
User avatar
fl4sh_ro
Потребител
Потребител
Posts: 7
Joined: 01 Nov 2018, 23:10

Re: ВИП приставка

Post by fl4sh_ro »

/tmp/textI3D9K2.sma(30) : error 029: invalid expression, assumed zero
/tmp/textI3D9K2.sma(30 -- 31) : warning 215: expression has no effect
/tmp/textI3D9K2.sma(31) : warning 217: loose indentation
/tmp/textI3D9K2.sma(33) : warning 225: unreachable code
/tmp/textI3D9K2.sma(33) : warning 217: loose indentation
User avatar
JackEyedJones
РЕКЛАМАТОР
РЕКЛАМАТОР
Posts: 332
Joined: 18 Apr 2014, 06:17
Skype: voltouch180
CS Nick: <Not Good Simply KoreaN>
Favorite version: CS: 1.6
Location: Plovdiv, Bulgaria, Europe, Entire World
Contact:

Re: ВИП приставка

Post by JackEyedJones »

Code: Select all

#include <amxmodx>
#include <fun>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_VERSION 	"1.0"
#define VIP_FLAG ADMIN_LEVEL_H

enum _:iSettings
{
	USERHEALTH,
	USERARMOR,
	SETUSERSPEED
};

static Settings[iSettings];

public plugin_init()
{
	register_plugin("Generated VIP Plugin", PLUGIN_VERSION, "AMXX-BG.info")
	register_cvar("amxxbg_vip", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
	RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
	register_event("CurWeapon", "SetUserSpeed", "1=1")
	register_message(get_user_msgid("ScoreAttrib"), "OnScoreAttrib")

	Settings[USERHEALTH] = register_cvar("amx_health", "5")
	Settings[USERARMOR] = register_cvar("amx_armor", "100")
	Settings[SETUSERSPEED] = register_cvar("amx_speed", "100.0")
}

public OnPlayerSpawn(id)
{
	if(is_user_alive(id) && is_user_vip(id))
	{
		set_user_health(id, get_user_health(id) + get_pcvar_num(Settings[USERHEALTH]))
		cs_set_user_armor(id, get_pcvar_num(Settings[USERARMOR]), CS_ARMOR_VESTHELM)
		set_user_maxspeed(id, get_user_maxspeed(id) + get_pcvar_float(Settings[SETUSERSPEED]))
	}
}

public SetUserSpeed(id)
{
	if(is_user_alive(id) && is_user_vip(id))
		set_user_maxspeed(id, get_user_maxspeed(id) + get_pcvar_float(Settings[SETUSERSPEED]))
}

public OnScoreAttrib(iMsgId, iMsgDest, iMsgEnt)
{
	if(is_user_vip(get_msg_arg_int(1)))
		set_msg_arg_int(2, ARG_BYTE, (1<<2))
}

bool:is_user_vip(id)
{

	return !!(get_user_flags(id) & VIP_FLAG)
}
Версията е с cvars.

-- 06 Ное 2018, 17:52 --
fl4sh_ro wrote:/tmp/textI3D9K2.sma(30) : error 029: invalid expression, assumed zero
/tmp/textI3D9K2.sma(30 -- 31) : warning 215: expression has no effect
/tmp/textI3D9K2.sma(31) : warning 217: loose indentation
/tmp/textI3D9K2.sma(33) : warning 225: unreachable code
/tmp/textI3D9K2.sma(33) : warning 217: loose indentation
Компилирай си го локално, на твоя компютър. А не през сайтове.
User avatar
fl4sh_ro
Потребител
Потребител
Posts: 7
Joined: 01 Nov 2018, 23:10

Re: ВИП приставка

Post by fl4sh_ro »

Не даде
User avatar
JackEyedJones
РЕКЛАМАТОР
РЕКЛАМАТОР
Posts: 332
Joined: 18 Apr 2014, 06:17
Skype: voltouch180
CS Nick: <Not Good Simply KoreaN>
Favorite version: CS: 1.6
Location: Plovdiv, Bulgaria, Europe, Entire World
Contact:

Re: ВИП приставка

Post by JackEyedJones »

Code: Select all

#include <amxmodx>
#include <fun>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN_VERSION 	"1.0"
#define VIP_FLAG ADMIN_KICK

enum _:iSettings
{
	USERHEALTH,
	USERARMOR,
	SETUSERSPEED
};

new Settings[iSettings];

public plugin_init()
{
	register_plugin("Generated VIP Plugin", PLUGIN_VERSION, "AMXX-BG.info")
	register_cvar("amxxbg_vip", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
	RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1)
	register_event("CurWeapon", "SetUserSpeed", "be", "1=1")
	register_message(get_user_msgid("ScoreAttrib"), "OnScoreAttrib")

	Settings[USERHEALTH] = register_cvar("amx_health", "5")
	Settings[USERARMOR] = register_cvar("amx_armor", "150")
	Settings[SETUSERSPEED] = register_cvar("amx_speed", "350.0")
}

public OnPlayerSpawn(id)
{
	if(is_user_alive(id) && is_user_vip(id))
	{
		set_user_health(id, get_user_health(id) + get_pcvar_num(Settings[USERHEALTH]))
		cs_set_user_armor(id, get_pcvar_num(Settings[USERARMOR]), CS_ARMOR_VESTHELM)
		set_user_maxspeed(id, get_user_maxspeed(id) + get_pcvar_float(Settings[SETUSERSPEED]))
	}
}

public SetUserSpeed(id)
{
	if(is_user_alive(id) && is_user_vip(id))
		set_user_maxspeed(id, get_user_maxspeed(id) + get_pcvar_float(Settings[SETUSERSPEED]))
}

public OnScoreAttrib(iMsgId, iMsgDest, iMsgEnt)
{
	static iPlayer; iPlayer = get_msg_arg_int(1)

	if(is_user_alive(iPlayer) && is_user_vip(iPlayer))
		set_msg_arg_int(2, ARG_BYTE, (1<<2))
}

bool:is_user_vip(id)
	return bool:(get_user_flags(id) & VIP_FLAG)
Коригирано. :shock:
User avatar
fl4sh_ro
Потребител
Потребител
Posts: 7
Joined: 01 Nov 2018, 23:10

Re: ВИП приставка

Post by fl4sh_ro »

Thank you.
Locked

Return to “Scripting (Скриптиране)”