Редактиране на Become a Vip Plugin

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
REALODED
Извън линия
Потребител
Потребител
Мнения: 7
Регистриран на: 08 Яну 2017, 12:46

Редактиране на Become a Vip Plugin

Мнение от REALODED » 14 Яну 2017, 13:37

Изтеглих си този плъгин :http:///// Блокиран текст/линк [НЕЖЕЛАН САЙТ] ///=169136 , но искам да променя килловете ,защото ще го използвам за DeathRun мод
.sma файла :

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <colorchat>

/* Uncomment this line to use csstats (kills from /rank), instead of nVault */
//#define USE_CSSTATS

/* Comment this line to disable the HUD message on player spawn */
#define USE_HUD

#if defined USE_CSSTATS
	#include <csstats>
#else
	#include <nvault>
	#define nvault_clear(%1) nvault_prune(%1, 0, get_systime() + 1)
	new g_iVault
	
	/* Uncomment this to save data by SteamID and make the plugin work for players with a valid SteamID only */
	//#define USE_STEAM
	
	/* Uncomment this if you want the data to be saved right away - this will prevent losing data when the server crashes */
	//#define QUICK_SAVE
	
	#if defined USE_STEAM
		#define get_save_info get_user_authid
	#else
		#define get_save_info get_user_name
	#endif
#endif

#if defined USE_HUD
	#include <hamsandwich>
	
	#define HUD_COLOR_RED 0
	#define HUD_COLOR_GREEN 255
	#define HUD_COLOR_BLUE 0
	#define HUD_POSITION_X 0.02
	#define HUD_POSITION_Y 0.40
	#define HUD_EFFECTS 2
	#define HUD_FXTIME 1.0
	#define HUD_HOLDTIME 5.0
	#define HUD_FADEINTIME 0.03
	#define HUD_FADEOUTTIME 0.1
	#define HUD_CHANNEL -1
#endif

#define PLUGIN_VERSION "1.3"

new g_szPrefix[32] = "^1[^3VIP Plus^1]"
new g_pKills, g_pFlags
new g_iKills[33], g_szFlags[32], g_iFlags, g_iNeededKills, g_iFlagZ

public plugin_init()
{
	register_plugin("Become VIP Plus", PLUGIN_VERSION, "OciXCrom")
	register_cvar("BecomeVIPPlus", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
	
	#if !defined USE_CSSTATS
		register_concmd("becomevip_restartall", "restartAll", ADMIN_RCON, "deletes the becomeVIP data")
		register_concmd("becomevip_restart_player", "restartPlayer", ADMIN_RCON, "<nick|#userid>")
	#endif
	
	#if defined USE_HUD
		RegisterHam(Ham_Spawn, "player", "eventPlayerSpawn", 1)
	#endif
	
	register_clcmd("say /kills", "cmdKills")
	register_clcmd("say_team /kills", "cmdKills")
	register_event("DeathMsg", "eventPlayerKilled", "a")
	
	g_pKills = register_cvar("becomevip_kills", "150")
	g_pFlags = register_cvar("becomevip_flags", "b")
	get_pcvar_string(g_pFlags, g_szFlags, charsmax(g_szFlags))
	
	g_iFlags = read_flags(g_szFlags)
	g_iNeededKills = get_pcvar_num(g_pKills)
	g_iFlagZ = read_flags("z")
	
	#if !defined USE_CSSTATS
		g_iVault = nvault_open("BecomeVIPPlus")
	#endif
}

public plugin_natives()
{
	register_library("becomevip")
	register_native("IsUserVip", "_IsUserVip")
	register_native("GetKillsNeeded", "_GetKillsNeeded")
	register_native("GetUserKills", "_GetUserKills")
	register_native("GetKillsLeft", "_GetKillsLeft")
	register_native("GetVipPrefix", "_GetVipPrefix")
	register_native("GetVipFlags", "_GetVipFlags")
	register_native("VipFlagsActive", "_VipFlagsActive")
	register_native("UsingCsstats", "_UsingCsstats")
	register_native("UsingHud", "_UsingHud")
	register_native("UsingSteam", "_UsingSteam")
	register_native("UsingQuickSave", "_UsingQuickSave")
}

public bool:_IsUserVip(iPlugin, iParams)
	return is_user_vip(get_param(1))
	
public _GetKillsNeeded(iPlugin, iParams)
	return g_iNeededKills
	
public _GetUserKills(iPlugin, iParams)
	return get_frags_total(get_param(1))
	
public _GetKillsLeft(iPlugin, iParams)
	return get_frags_left(get_param(1))
	
public _GetVipPrefix(iPlugin, iParams)
	set_string(1, g_szPrefix, get_param(2))
	
public _GetVipFlags(iPlugin, iParams)
	set_string(1, g_szFlags, get_param(2))
	
public bool:_VipFlagsActive(iPlugin, iParams)
	return g_szFlags[0] == EOS ? false : true
	
public bool:_UsingCsstats(iPlugin, iParams)
{
	#if defined USE_CSSTATS
		return true
	#else
		return false
	#endif
}

public bool:_UsingHud(iPlugin, iParams)
{
	#if defined USE_HUD
		return true
	#else	
		return false
	#endif
}

public bool:_UsingSteam(iPlugin, iParams)
{
	#if defined USE_STEAM
		return true
	#else
		return false
	#endif
}

public bool:_UsingQuickSave(iPlugin, iParams)
{
	#if defined QUICK_SAVE
		return true
	#else
		return false
	#endif
}

public client_authorized(id)
{
	#if defined USE_CSSTATS
		set_task(5.0, "authorizePlayer", id)
	#else
		updateUserFlags(id)
	#endif
}

public authorizePlayer(id)
	if(is_user_vip(id))
		updateUserFlags(id)
	
public client_connect(id)
{
	#if !defined USE_CSSTATS
		#if defined USE_STEAM
			if(steam_valid(id))
			{
				new szInfo[35]
				get_save_info(id, szInfo, charsmax(szInfo))
				LoadData(id, szInfo)
			}
		#else
		{
			new szInfo[35]
			get_save_info(id, szInfo, charsmax(szInfo))
			LoadData(id, szInfo)
		}
		#endif
	#endif
}

public client_disconnect(id)
{
	#if !defined USE_CSSTATS
		#if defined USE_STEAM
			if(steam_valid(id))
			{
				new szInfo[35]
				get_save_info(id, szInfo, charsmax(szInfo))
				SaveData(id, szInfo)
			}
		#else
		{
			new szInfo[35]
			get_save_info(id, szInfo, charsmax(szInfo))
			SaveData(id, szInfo)
		}
		#endif
	#endif
}
	
#if !defined USE_CSSTATS
	SaveData(id, szInfo[])
	{
		new szKills[10]
		num_to_str(g_iKills[id], szKills, charsmax(szKills))
		nvault_set(g_iVault, szInfo, szKills)
	}

	LoadData(id, szInfo[])
	{
		new szKills[10]
		nvault_get(g_iVault, szInfo, szKills, charsmax(szKills))
		g_iKills[id] = str_to_num(szKills)
	}
	
	#if !defined USE_STEAM
		public client_infochanged(id)
		{
			new szNewName[32], szOldName[32]
			get_user_info(id, "name", szNewName, charsmax(szNewName))
			get_user_name(id, szOldName, charsmax(szOldName))
			
			if(!equal(szNewName, szOldName))
			{
				SaveData(id, szOldName)
				LoadData(id, szNewName)
			}
		}
	#endif
#endif

public plugin_end()
{
	#if !defined USE_CSSTATS
		nvault_close(g_iVault)
	#endif
}

public eventPlayerSpawn(id)
{
	#if defined USE_HUD
		if(!is_user_vip(id) && is_user_alive(id))
		{
			set_hudmessage(HUD_COLOR_RED, HUD_COLOR_GREEN, HUD_COLOR_BLUE, HUD_POSITION_X, HUD_POSITION_Y, HUD_EFFECTS, HUD_FXTIME, HUD_HOLDTIME, HUD_FADEINTIME, HUD_FADEOUTTIME, HUD_CHANNEL)
			show_hudmessage(id, "Reach %i kills to get VIP extras!^nYou currently have %i.", g_iNeededKills, get_frags_total(id))
		}
	#endif
}

public restartAll(id, level, cid)
{
	if(!cmd_access(id, level, cid, 0))
		return PLUGIN_HANDLED

	new szName[32], iPlayers[32], iPnum
	get_user_name(id, szName, charsmax(szName))
	get_players(iPlayers, iPnum)
	
	#if !defined USE_CSSTATS
		nvault_clear(g_iVault)
	#endif
	
	for(new i; i < iPnum; i++)
		g_iKills[iPlayers[i]] = 0
		
	ColorChat(0, TEAM_COLOR, "%s ^3%s ^1has deleted all ^4becomeVIP data^1. The stats are now ^3restarted^1.", g_szPrefix, szName)
	client_print(id, print_console, "%s Data cleared successfully!", g_szPrefix)
	log_amx("%s has deleted all becomeVIP data", szName)
	return PLUGIN_HANDLED
}

public restartPlayer(id, level, cid)
{
	if(!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED

	new szArg[32], szName[32], szName2[32]
	get_user_name(id, szName, charsmax(szName))
	read_argv(1, szArg, charsmax(szArg))
	new iPlayer = cmd_target(id, szArg, 3)
	
	if(!iPlayer)
		return PLUGIN_HANDLED
	
	g_iKills[iPlayer] = 0
	get_user_name(iPlayer, szName2, charsmax(szName2))
	ColorChat(0, TEAM_COLOR, "%s ^1ADMIN ^3%s ^1restarted ^3%s^1's becomeVIP data.", g_szPrefix, szName, szName2)
	client_print(id, print_console, "%s You have restarted %s's becomeVIP data.", g_szPrefix, szName2)
	log_amx("%s restarted %s's becomeVIP data", szName, szName2)
	return PLUGIN_HANDLED
}
	
public cmdKills(id)
{
	#if defined USE_STEAM
		if(!steam_valid(id))
		{
			ColorChat(id, TEAM_COLOR, "%s Only players with a valid ^3SteamID ^1can use this option (^4Protocol 47/48^1).", g_szPrefix)
			return PLUGIN_HANDLED
		}
	#endif
	
	if(is_user_vip(id)) ColorChat(id, TEAM_COLOR, "%s You have the required number of kills (^4%i/%i^1), thus you get ^3free VIP extras^1.", g_szPrefix, get_frags_total(id), g_iNeededKills)
	else
	{
		if(g_iFlags) ColorChat(id, TEAM_COLOR, "%s You need ^4%i ^1more kills (^3current: ^4%i^1) to get the following ^3VIP flag(s)^1: ^4%s", g_szPrefix, get_frags_left(id), get_frags_total(id), g_szFlags)
		else ColorChat(id, TEAM_COLOR, "%s You need ^4%i ^1more kills (^3current: ^4%i^1) to get ^3VIP extras", g_szPrefix, get_frags_left(id), get_frags_total(id))
	}
	return PLUGIN_HANDLED
}
	
public eventPlayerKilled()
{
	new iKiller = read_data(1), iVictim = read_data(2)
	
	if(!is_user_connected(iKiller) || !is_user_connected(iVictim) || iKiller == iVictim)
		return
		
	#if defined USE_STEAM
		if(!steam_valid(iKiller))
			return
	#endif
		
	#if !defined USE_CSSTATS
		g_iKills[iKiller]++
	#else
		#if defined QUICK_SAVE
		{
			new szInfo[35]
			get_save_info(iKiller, szInfo, charsmax(szInfo))
			SaveData(iKiller, szInfo)
		}
		#endif
	#endif
	
	if(get_frags_total(iKiller) == g_iNeededKills)
	{
		new szName[32]
		get_user_name(iKiller, szName, charsmax(szName))
		ColorChat(0, TEAM_COLOR, "%s ^3%s ^1has killed ^4%i players ^1and received ^3free VIP extras^1!", g_szPrefix, szName, g_iNeededKills)
		updateUserFlags(iKiller)
	}
}

updateUserFlags(id)
{
	#if defined USE_STEAM
		if(!steam_valid(id))
			return
	#endif
	
	if(is_user_vip(id))
	{
		set_user_flags(id, g_iFlags)
		remove_user_flags(id, g_iFlagZ)
	}
}

get_frags_total(id)
{
	#if defined USE_CSSTATS
		new iStats[8], iHits[8]
		get_user_stats(id, iStats, iHits)
		return iStats[0]
	#else
		return g_iKills[id]
	#endif
}

get_frags_left(id)
	return g_iNeededKills - get_frags_total(id)

bool:is_user_vip(id)
	return get_frags_total(id) >= g_iNeededKills ? true : false
	
#if defined USE_STEAM
	bool:steam_valid(id)
	{
		new szAuthId[35]
		get_user_authid(id, szAuthId, charsmax(szAuthId))
		
		if(!equali(szAuthId, "STEAM_", 6) || equal(szAuthId, "STEAM_ID_LAN") || equal(szAuthId, "STEAM_ID_PENDING"))
			return false
		
		return true
	}
#endif

Аватар
Joro_
Извън линия
Потребител
Потребител
Мнения: 8
Регистриран на: 13 Яну 2017, 16:11
Обратна връзка:

Re: Редактиране на Become a Vip Plugin

Мнение от Joro_ » 14 Яну 2017, 13:47

g_pKills = register_cvar("becomevip_kills", "150")
g_pFlags = register_cvar("becomevip_flags", "b")
becomevip_kills - 150

Аватар
REALODED
Извън линия
Потребител
Потребител
Мнения: 7
Регистриран на: 08 Яну 2017, 12:46

Re: Редактиране на Become a Vip Plugin

Мнение от REALODED » 14 Яну 2017, 13:53

Направил съм го,но пак не става

Аватар
Petrowch0
Извън линия
Потребител
Потребител
Мнения: 220
Регистриран на: 14 Окт 2016, 19:23
Местоположение: de_dust2
Получена благодарност: 3 пъти
Обратна връзка:

Re: Редактиране на Become a Vip Plugin

Мнение от Petrowch0 » 14 Яну 2017, 14:32

Изключи сървъра и го пусни пак и ще се оправи. :)
Изображение

Аватар
REALODED
Извън линия
Потребител
Потребител
Мнения: 7
Регистриран на: 08 Яну 2017, 12:46

Re: Редактиране на Become a Vip Plugin

Мнение от REALODED » 14 Яну 2017, 14:40

Мерси , може да локвате

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 45 госта