Skocz do zawartości
  • Chmurka
  • Boróweczka
  • Jabłuszko
  • Limonka
  • Czekoladka
  • Węgielek
Zaloguj się, aby obserwować  
Akeno|AdvancedNet

Prośba o przerobienie pluginu H2K_Vip

Polecane posty

Witam,

 

Mam problem z pluginem H2K_Vip ponieważ na moim serwerze jest również svip który został przerobiony dokładnie z tego samego pluginu którym jest VIP i jeśli posiadasz obie flagi, to wypadają z ciebie granaty itp.

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
bool IsPlayerVIP(int client)
{
	if(IsPlayerPremium(client))
		return false;

	if(CheckCommandAccess(client, "sm_Vip", 0, true) || FreeVip)
		return true;

	return false;
}

bool IsPlayerPremium(int client)
{
	if(IsPlayerVIP(client))
		return false;

	if(CheckCommandAccess(client, "sm_Premium", 0, true))
		return true;

	return false;
}

Ten kod powoduje, że osoba, która posiada svipa nie może mieć dostępu do komendy sm_Vip, czyli posiadać flagi zwykłego vipa i na odwrót. Pytanie co chcesz osiągnąć. 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
2 godziny temu, Master napisał:

bool IsPlayerVIP(int client)
{
	if(IsPlayerPremium(client))
		return false;

	if(CheckCommandAccess(client, "sm_Vip", 0, true) || FreeVip)
		return true;

	return false;
}

bool IsPlayerPremium(int client)
{
	if(IsPlayerVIP(client))
		return false;

	if(CheckCommandAccess(client, "sm_Premium", 0, true))
		return true;

	return false;
}

Ten kod powoduje, że osoba, która posiada svipa nie może mieć dostępu do komendy sm_Vip, czyli posiadać flagi zwykłego vipa i na odwrót. Pytanie co chcesz osiągnąć. 

Chodzi o przerobienie tego pluginu aby działał jako VIP oraz SVIP (osobne cvary dla vip oraz svip).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Spoiler

/**
 * Returns whether a client has access to a given command string.  The string 
 * can be any override string, as overrides can be independent of 
 * commands.  This feature essentially allows you to create custom 
 * flags using the override system.
 *
 * @param client		Client index.
 * @param command		Command name.  If the command is not found, the default 
 *						flags are used.
 * @param flags			Flag string to use as a default, if the command or override 
 *						is not found.
 * @param override_only	If true, SourceMod will not attempt to find a matching 
 *						command, and it will only use the default flags specified.
 *						Otherwise, SourceMod will ignore the default flags if 
 *						there is a matching admin command.
 * @return				True if the client has access, false otherwise.
 */
native bool CheckCommandAccess(int client, 
							   const char[] command,
							   int flags,
							   bool override_only=false);

 

W skrócie: Jeżeli zostanie użyta na końcu wartość true, to sprawdzana jest tylko flaga podana jako domyślna.

 

Twój kod:

Spoiler

bool IsPlayerVIP(int client)
{
	if(IsPlayerPremium(client))
		return false;

	if(CheckCommandAccess(client, "sm_Vip", 0, true) || FreeVip)
		return true;

	return false;
}

bool IsPlayerPremium(int client)
{
	if(IsPlayerVIP(client))
		return false;

	if(CheckCommandAccess(client, "sm_Premium", 0, true))
		return true;

	return false;
}

 

Jeżeli jako domyślną podałeś wartość 0 i na końcu użyłeś wartości true, to będzie sprawdzana tylko flaga 0, co prawdopodobnie odpowiada ADMFLAG_RESERVATION, chociaż też nie, bo ADMFLAG_RESERVATION to (1<<0). W sumie nie wiem, która flaga jest traktowana jako 0.  Ponadto na początku każdej funkcji dodałeś sprawdzenie, czy gracz nie posiada Svipa w przypadku Vipa(IsPlayerPremium) lub Vipa w przypadku Svipa(IsPlayerVIP). Szczerze nie mam pojęcia jak to działa w praktyce, bo proces wygląda następująco:

1. Wywołanie IsPlayerVip(client)

2. Wywołanie IsPlayerPremium(client)

3. Wywołanie IsPlayerVip(client)

4. Wywołanie IsPlayerPremium(client)

5. Wywołanie IsPlayerVip(client)

6. itd.

Czyli teoretycznie powinno się zapętlić.

 

Dlatego proponuję zacząć od zmiany tych funkcji na następujące:

Spoiler

bool IsPlayerVIP(int client)	//Zakładam, że to Vip
{
	if(IsPlayerPremium(client))	//Jeżeli gracz ma Svipa(zakładam też, że Super Vip jest lepszy niż zwykły), to nie ma Vipa
		return false;

	if(CheckCommandAccess(client, "sm_Vip", 0, false) || FreeVip)
		return true;

	return false;
}

bool IsPlayerPremium(int client)	//a to Svip
{
	if(CheckCommandAccess(client, "sm_Premium", 0, false))
		return true;

	return false;
}

 

 

  • Lubię to! 2

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tutaj daję poprawioną wersję

 

Spoiler

/* << Includy >> */
#include <cstrike>
#include <sourcemod>
#include <sdktools>
#include <sdkhooks>
#include <multicolors>

/* << Define >> */
#define PL_VERSION "1.4"

/* << Pragma >> */
#pragma newdecls required
#pragma semicolon 1

/* << ConVary (VIP) >> */
ConVar g_cvVipHP;
ConVar g_cvVipMaxHP;
ConVar g_cvVipHeadShotHP;
ConVar g_cvVipKillHP;
ConVar g_cvVipPredkoscGracza;
ConVar g_cvVipGrawitacja;
ConVar g_cvVipArmor;
ConVar g_cvVipHelm;
ConVar g_cvVipHEGranat;
ConVar g_cvVipFlashGranat;
ConVar g_cvVipSmokeGranat;
ConVar g_cvVipDecoyGranat;
ConVar g_cvVipHealGranat;
ConVar g_cvVipIncGranat;
ConVar g_cvVipMolotovGranat;
ConVar g_cvVipTaGranat;
ConVar g_cvVipPieniadzeNaStart;
ConVar g_cvVipPieniadzePodlozenie;
ConVar g_cvVipPieniadzeRozbrojenie;
ConVar g_cvVipHeadShotPieniadze;
ConVar g_cvVipKillPieniadze;
ConVar g_cvVipWygranaPieniadze;
ConVar g_cvVipTag_Tabela_wlaczone;
ConVar g_cvVipTag_Tabela;
ConVar g_cvVipDoubleJump;
ConVar g_cvVipMenu_Broni;
ConVar g_cvVipRunda_MenuBroni;
ConVar g_cvVipDarmowy_Vip;
ConVar g_cvVipOdGodziny;
ConVar g_cvVipDoGodziny;

/* << ConVary (Premium) >> */
ConVar g_cvPremiumHP;
ConVar g_cvPremiumMaxHP;
ConVar g_cvPremiumHeadShotHP;
ConVar g_cvPremiumKillHP;
ConVar g_cvPremiumPredkoscGracza;
ConVar g_cvPremiumGrawitacja;
ConVar g_cvPremiumArmor;
ConVar g_cvPremiumHelm;
ConVar g_cvPremiumHEGranat;
ConVar g_cvPremiumFlashGranat;
ConVar g_cvPremiumSmokeGranat;
ConVar g_cvPremiumDecoyGranat;
ConVar g_cvPremiumHealGranat;
ConVar g_cvPremiumIncGranat;
ConVar g_cvPremiumMolotovGranat;
ConVar g_cvPremiumTaGranat;
ConVar g_cvPremiumPieniadzeNaStart;
ConVar g_cvPremiumPieniadzePodlozenie;
ConVar g_cvPremiumPieniadzeRozbrojenie;
ConVar g_cvPremiumHeadShotPieniadze;
ConVar g_cvPremiumKillPieniadze;
ConVar g_cvPremiumWygranaPieniadze;
ConVar g_cvPremiumTag_Tabela_wlaczone;
ConVar g_cvPremiumTag_Tabela;
ConVar g_cvPremiumDoubleJump;
ConVar g_cvPremiumMenu_Broni;
ConVar g_cvPremiumRunda_MenuBroni;

/* << Inty >> */
int RoundCount = 0;
int FreeVip = 0;
int g_iaGrenadeOffsets[] =  { 15, 17, 16, 14, 18, 17 };


/* << Informacje o pluginie >> */
public Plugin myinfo =
{
	name = "[CS:GO] VIP",
	author = "Mesharsky",
	description = "[CS:GO] VIP na serwery CSGO",
	version = PL_VERSION,
	url = "http://steamcommunity.com/id/MesharskyH2K"
}

public void OnPluginStart()
{
	HookEvent("round_start", Event_RoundStart);
	HookEvent("player_spawn", Event_TagTable);
	HookEvent("player_spawn", Event_PlayerSpawn);
	HookEvent("player_death", Event_PlayerDeath);
	HookEvent("bomb_planted", Event_BombPlanted);
	HookEvent("bomb_defused", Event_BombDefused);
	HookEvent("round_end", Event_RoundEnd);
	HookEvent("announce_phase_end", ResetPoZmianie);
	HookEvent("cs_intermission", ResetPoZmianie);

	/* << ConVary (Vip) >> */
	g_cvVipMaxHP = CreateConVar("max_zycie_vip", "130", "Maksymalna ilość zdrowia dla vipa");
	g_cvVipHP = CreateConVar("zycie_vip", "110", "Ile zdrowia ma posiadać vip na start rundy?");
	g_cvVipKillHP = CreateConVar("kill_hp_vip", "5", "Ile zdrowia ma dostawać vip za zabicie gracza?");
	g_cvVipHeadShotHP = CreateConVar("hs_hp_vip", "10", "Ile zdrowia ma dostawać vip za zabójstwo z HeadShot'a");
	g_cvVipPredkoscGracza = CreateConVar("vip_predkosc_ruchu", "1.0", "Prędkość ruchu vip'a (1.0 - standardowo)");
	g_cvVipGrawitacja = CreateConVar("vip_grawitacja", "1.0", "Grawitacja dla vip'a (1.0 - standardowo)");
	g_cvVipArmor = CreateConVar("armor_vip", "100", "Punkty kamizelki dla vipa? (od 1 - 100)");
	g_cvVipHelm = CreateConVar("helm_vip", "1", "Czy vip ma posiadać darmowy hełm? (0/1)");
	g_cvVipPieniadzeNaStart = CreateConVar("vip_dodatkowy_Pieniadze", "0", "Ilość dodatkowego Pieniadzeu na start rundy jaki ma vip dostawać.");
	g_cvVipKillPieniadze = CreateConVar("Pieniadze_kill_vip", "200", "Ile vip ma dostawać pieniędzy za zabójstwo ?");
	g_cvVipHeadShotPieniadze = CreateConVar("Pieniadze_hs_vip", "500", "Ile vip ma dostawać pieniędzy za zabójstwo w głowę?");
	g_cvVipPieniadzePodlozenie = CreateConVar("Pieniadze_podlozenie_vip", "1000", "Ile Pieniadzeu ma dostawać vip za podłożenie bomby?");
	g_cvVipPieniadzeRozbrojenie = CreateConVar("Pieniadze_rozbrojenie_vip", "1000", "Ile Pieniadzeu ma dostawać vip za rozbrojenie bomby?");
	g_cvVipWygranaPieniadze = CreateConVar("Pieniadze_wygranie_rundy", "500", "Ile Pieniadzeu ma dostawać vip za wygranie rundy?");
	g_cvVipHEGranat = CreateConVar("vip_he", "1", "Czy vip ma dostawać granat HE na start rundy?");
	g_cvVipFlashGranat = CreateConVar("vip_flash", "1", "Czy vip ma dostawać granat Flash na start rundy?");
	g_cvVipSmokeGranat = CreateConVar("vip_smoke", "1", "Czy vip ma dostawać granat Smoke na start rundy?");
	g_cvVipDecoyGranat = CreateConVar("vip_decoy", "0", "Czy vip ma dostawać granat Decoy na start rundy?");
	g_cvVipHealGranat = CreateConVar("vip_heal", "0", "Czy vip ma dostawać granat Leczący na start rundy?");
	g_cvVipIncGranat = CreateConVar("vip_inc", "1", "Czy vip ma dostawać granat Podpalający (CT) na start rundy?");
	g_cvVipMolotovGranat = CreateConVar("vip_molotov", "1", "Czy vip ma dostawać granat Podpalający (TT) na start rundy?");
	g_cvVipTaGranat = CreateConVar("vip_tactic", "0", "Czy vip ma dostawać granat Taktyczny na start rundy?");
	g_cvVipTag_Tabela = CreateConVar("vip_tag", "0", "Czy w tabeli ma widniec tag dla vip'a?");
	g_cvVipTag_Tabela = CreateConVar("sm_clantag", "[VIP]", "Jaki tag w tabeli ma posiadać VIP?");
	g_cvVipDoubleJump = CreateConVar("double_jump", "1", "Czy vip ma posiadać podwójny skok?");
	g_cvVipMenu_Broni = CreateConVar("vip_menu_broni", "1", "Czy ma być menu broni dla vip'a?");
	g_cvVipRunda_MenuBroni = CreateConVar("vip_runda_menubroni", "3", "Od ktorej rundy ma pokazywac menu broni dla vip'a?");
	g_cvVipDarmowy_Vip = CreateConVar("vip_od_danej_godzint", "0", "Czy ma być włączony VIP dla graczy w nocy od x do x godziny?");
	g_cvVipOdGodziny = CreateConVar("vip_od_godziny", "23", "Od ktorej godziny ma byc darmowy vip?");
	g_cvVipDoGodziny = CreateConVar("vip_do_godziny", "7", "Do ktorej godziny ma byc darmowy vip?");
	
	/* << ConVary (Premium) >> */
	g_cvPremiumHP = CreateConVar("zycie_premium", "120", "Ile zdrowia ma posiadać premium na start rundy?");
	g_cvPremiumMaxHP = CreateConVar("max_zycie_premium", "150", "Maksymalna ilość zdrowia dla vipa");
	g_cvPremiumKillHP = CreateConVar("kill_hp_premium", "10", "Ile zdrowia ma dostawać premium za zabicie gracza?");
	g_cvPremiumHeadShotHP = CreateConVar("hs_hp_premium", "15", "Ile zdrowia ma dostawać premium za zabójstwo z HeadShot'a");
	g_cvPremiumPredkoscGracza = CreateConVar("premium_predkosc_ruchu", "1.0", "Prędkość ruchu premium'a (1.0 - standardowo)");
	g_cvPremiumGrawitacja = CreateConVar("premium_grawitacja", "1.0", "Grawitacja dla premium'a (1.0 - standardowo)");
	g_cvPremiumArmor = CreateConVar("armor_premium", "100", "Punkty kamizelki dla premiuma? (od 1 - 100)");
	g_cvPremiumHelm = CreateConVar("helm_premium", "1", "Czy vip ma posiadać darmowy hełm? (0/1)");
	g_cvPremiumPieniadzeNaStart = CreateConVar("premium_dodatkowy_Pieniadze", "0", "Ilość dodatkowego Pieniadzeu na start rundy jaki ma vip dostawać.");
	g_cvPremiumKillPieniadze = CreateConVar("Pieniadze_kill_premium", "300", "Ile vip ma dostawać pieniędzy za zabójstwo ?");
	g_cvPremiumHeadShotPieniadze = CreateConVar("Pieniadze_hs_premium", "700", "Ile vip ma dostawać pieniędzy za zabójstwo w głowę?");
	g_cvPremiumPieniadzePodlozenie = CreateConVar("Pieniadze_podlozenie_premium", "1500", "Ile Pieniadzeu ma dostawać vip za podłożenie bomby?");
	g_cvPremiumPieniadzeRozbrojenie = CreateConVar("Pieniadze_rozbrojenie_premium", "1500", "Ile Pieniadzeu ma dostawać vip za rozbrojenie bomby?");
	g_cvPremiumWygranaPieniadze = CreateConVar("Pieniadze_wygranie_rundy", "700", "Ile Pieniadzeu ma dostawać vip za wygranie rundy?");
	g_cvPremiumHEGranat = CreateConVar("premium_he", "1", "Czy vip ma dostawać granat HE na start rundy?");
	g_cvPremiumFlashGranat = CreateConVar("premium_flash", "1", "Czy vip ma dostawać granat Flash na start rundy?");
	g_cvPremiumSmokeGranat = CreateConVar("premium_smoke", "1", "Czy vip ma dostawać granat Smoke na start rundy?");
	g_cvPremiumDecoyGranat = CreateConVar("premium_decoy", "0", "Czy vip ma dostawać granat Decoy na start rundy?");
	g_cvPremiumHealGranat = CreateConVar("premium_heal", "0", "Czy vip ma dostawać granat Leczący na start rundy?");
	g_cvPremiumIncGranat = CreateConVar("premium_inc", "0", "Czy vip ma dostawać granat Podpalający (CT) na start rundy?");
	g_cvPremiumMolotovGranat = CreateConVar("premium_molotov", "0", "Czy vip ma dostawać granat Podpalający (TT) na start rundy?");
	g_cvPremiumTaGranat = CreateConVar("premium_tactic", "1", "Czy vip ma dostawać granat Taktyczny na start rundy?");
	g_cvPremiumTag_Tabela_wlaczone = CreateConVar("premium_tag", "0", "Czy w tabeli ma widniec tag dla vip'a?");
	g_cvPremiumTag_Tabela = CreateConVar("sm_clantag_premium", "[Premium]", "Jaki tag w tabeli ma posiadać VIP?");
	g_cvPremiumDoubleJump = CreateConVar("double_jump_premium", "1", "Czy vip ma posiadać podwójny skok?");
	g_cvPremiumMenu_Broni = CreateConVar("vip_menu_broni_premium", "1", "Czy ma być menu broni dla vip'a?");
	g_cvPremiumRunda_MenuBroni = CreateConVar("vip_runda_menubroni_premium", "3", "Od ktorej rundy ma pokazywac menu broni dla vip'a?");

}

public void OnMapStart()
{
	AutoExecConfig(true, "AB_Konfiguracja_Vipa_Premium");
	RoundCount = 0;
}

public Action MenuGlowne(int client)
{
	if (IsValidClient(client)) {
		if (IsPlayerVIP(client)) {
				
			Menu menu = new Menu(MenuHandler1);
			menu.SetTitle("Menu VIP : Wybierz Broń");
			menu.AddItem("weapon_ak47", "AK-47");
			menu.AddItem("weapon_m4a1", "M4A4");
			menu.AddItem("weapon_m4a1_silencer", "M4A1-S");
			menu.AddItem("weapon_awp", "AWP");
			menu.ExitButton = true;
			menu.Display(client, 15);
		}
		else if (IsPlayerPremium(client)){
			Menu menu = new Menu(MenuHandler1);
			menu.SetTitle("Menu Premium : Wybierz Broń");
			menu.AddItem("weapon_ak47", "AK-47");
			menu.AddItem("weapon_m4a1", "M4A4");
			menu.AddItem("weapon_m4a1_silencer", "M4A1-S");
			menu.AddItem("weapon_mp5sd", "MP5-SD");
			menu.AddItem("weapon_awp", "AWP");
			menu.ExitButton = true;
			menu.Display(client, 15);
		}
	}
}

public int MenuHandler1(Menu menu, MenuAction action, int client, int itemNum)
{
	if (action == MenuAction_Select)
	{
		char info[32];
		GetMenuItem(menu, itemNum, info, sizeof(info));

		if (IsPlayerAlive(client))
		{
			StripAllWeapons(client);
			GivePlayerItem(client, "weapon_knife");
			GivePlayerItem(client, info);
			MenuBroni(client);
		}
	}

	else if (action == MenuAction_End) {
		CloseHandle(menu);
	}
}

public Action MenuBroni(int client)
{
	if (IsValidClient(client)) {
		if (IsPlayerVIP(client)) {
			Menu menusec = new Menu(MenuHandler2);
			menusec.SetTitle("Menu VIP : Wybierz Pistolet");
			menusec.AddItem("weapon_deagle", "Deagle");
			menusec.AddItem("weapon_fiveseven", "Five-Seven");
			menusec.AddItem("weapon_elite", "Dual Elites");
			menusec.AddItem("weapon_p250", "p250");
			menusec.ExitButton = true;
			menusec.Display(client, 15);
		}
		else if(IsPlayerPremium(client)){
			Menu menusec = new Menu(MenuHandler2);
			menusec.SetTitle("Menu Premium : Wybierz Pistolet");
			menusec.AddItem("weapon_deagle", "Deagle");
			menusec.AddItem("weapon_fiveseven", "Five-Seven");
			menusec.AddItem("weapon_tec9", "Tec-9");
			menusec.AddItem("weapon_cz75a", "CZ7a");
			menusec.AddItem("weapon_elite", "Dual Elites");
			menusec.AddItem("weapon_p250", "p250");
			menusec.AddItem("weapon_glock18", "Glock-18");
			menusec.AddItem("weapon_usp", "USP");
			menusec.ExitButton = true;
			menusec.Display(client, 15);
		}
	}
}

public int MenuHandler2(Menu menusec, MenuAction action, int client, int itemNum)
{

	if (action == MenuAction_Select)
	{
		char info[32];
		GetMenuItem(menusec, itemNum, info, sizeof(info));

		if (IsPlayerAlive(client)) {
			GivePlayerItem(client, info);
		}
	}

	else if (action == MenuAction_End) {
		CloseHandle(menusec);
	}
}

public Action Event_RoundStart(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	if (GetConVarBool(g_cvVipDarmowy_Vip))
	{
		int od_godziny = GetConVarInt(g_cvVipOdGodziny);
		int do_godziny = GetConVarInt(g_cvVipDoGodziny);
		if(od_godziny || do_godziny)
		{
			char godzina_str[8];
			FormatTime(godzina_str, sizeof(godzina_str), "%H", GetTime());
			int godzina = StringToInt(godzina_str);
			if(od_godziny > do_godziny)
				FreeVip = (godzina >= od_godziny || godzina < do_godziny)? 1: 0;
			else
				FreeVip = (godzina >= od_godziny && godzina < do_godziny)? 1: 0;
		}
		else
			FreeVip = 0;
	}

	if (GameRules_GetProp("m_bWarmupPeriod") != 1)
		RoundCount = RoundCount + 1;
}

public Action ResetPoZmianie(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	RoundCount = 0;
}

public Action Event_PlayerSpawn(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	int client = GetClientOfUserId(GetEventInt(hEvent, "userid"));

	if (GameRules_GetProp("m_bWarmupPeriod") == 1)
		return;

	if (IsPlayerVIP(client))
	{
		if(RoundCount == 1 || RoundCount == 15)
		{
			SetEntProp(client, Prop_Send, "m_bHasHelmet", 0);
		}
		else
		{
			SetEntProp(client, Prop_Send, "m_ArmorValue", GetConVarInt(g_cvVipArmor));
			SetEntProp(client, Prop_Send, "m_bHasHelmet", GetConVarInt(g_cvVipHelm));
			SetEntityHealth(client, GetConVarInt(g_cvVipHP));
			SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount") + GetConVarInt(g_cvVipPieniadzeNaStart));
			SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", GetConVarFloat(g_cvVipPredkoscGracza));
			SetEntityGravity(client, GetConVarFloat(g_cvVipGrawitacja));
			if (GetClientTeam(client) == CS_TEAM_CT && GetEntProp(client, Prop_Send, "m_bHasDefuser") == 0)GivePlayerItem(client, "item_defuser");
			if (GetConVarBool(g_cvVipHEGranat))GivePlayerItem(client, "weapon_hegrenade");
			if (GetConVarBool(g_cvVipFlashGranat))GivePlayerItem(client, "weapon_flashbang");
			if (GetConVarBool(g_cvVipSmokeGranat))GivePlayerItem(client, "weapon_smokegrenade");
			if (GetConVarBool(g_cvVipDecoyGranat))GivePlayerItem(client, "weapon_decoy");
			if (GetConVarBool(g_cvVipHealGranat))GivePlayerItem(client, "weapon_healthshot");
			if (GetConVarBool(g_cvVipIncGranat))GivePlayerItem(client, "weapon_incgrenade");
			if (GetConVarBool(g_cvVipMolotovGranat))GivePlayerItem(client, "weapon_molotov");
			if (GetConVarBool(g_cvVipTaGranat))GivePlayerItem(client, "weapon_tagrenade");
		}
	}
	else if(IsPlayerPremium(client))
	{
		if(RoundCount == 1 || RoundCount == 15)
		{
			SetEntProp(client, Prop_Send, "m_bHasHelmet", 0);
		}
		else
		{
			SetEntProp(client, Prop_Send, "m_ArmorValue", GetConVarInt(g_cvPremiumArmor));
			SetEntProp(client, Prop_Send, "m_bHasHelmet", GetConVarInt(g_cvPremiumHelm));
			SetEntityHealth(client, GetConVarInt(g_cvPremiumHP));
			SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount") + GetConVarInt(g_cvPremiumPieniadzeNaStart));
			SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", GetConVarFloat(g_cvPremiumPredkoscGracza));
			SetEntityGravity(client, GetConVarFloat(g_cvPremiumGrawitacja));
			if (GetClientTeam(client) == CS_TEAM_CT && GetEntProp(client, Prop_Send, "m_bHasDefuser") == 0)GivePlayerItem(client, "item_defuser");
			if (GetConVarBool(g_cvPremiumHEGranat))GivePlayerItem(client, "weapon_hegrenade");
			if (GetConVarBool(g_cvPremiumFlashGranat))GivePlayerItem(client, "weapon_flashbang");
			if (GetConVarBool(g_cvPremiumSmokeGranat))GivePlayerItem(client, "weapon_smokegrenade");
			if (GetConVarBool(g_cvPremiumDecoyGranat))GivePlayerItem(client, "weapon_decoy");
			if (GetConVarBool(g_cvPremiumHealGranat))GivePlayerItem(client, "weapon_healthshot");
			if (GetConVarBool(g_cvPremiumIncGranat))GivePlayerItem(client, "weapon_incgrenade");
			if (GetConVarBool(g_cvPremiumMolotovGranat))GivePlayerItem(client, "weapon_molotov");
			if (GetConVarBool(g_cvPremiumTaGranat))GivePlayerItem(client, "weapon_tagrenade");
		}
	}

	if (RoundCount >= GetConVarInt(g_cvVipRunda_MenuBroni))
	{
		if (GetConVarBool(g_cvVipMenu_Broni))MenuGlowne(client);
	}
	else if (RoundCount >= GetConVarInt(g_cvPremiumRunda_MenuBroni))
	{
		if (GetConVarBool(g_cvPremiumMenu_Broni))MenuGlowne(client);
	}
}

public Action Event_PlayerDeath(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	int attacker = GetClientOfUserId(GetEventInt(hEvent, "attacker"));
	int victim = GetClientOfUserId(GetEventInt(hEvent, "userid"));

	if (IsPlayerVIP(attacker))
	{
		if (!IsValidClient(attacker)) {
			return;
		}

		if (GetClientTeam(attacker) != GetClientTeam(victim))
		{
			bool headshot = GetEventBool(hEvent, "headshot");
			int PieniadzeGracza = GetEntProp(attacker, Prop_Send, "m_iAccount");
			int HP = GetClientHealth(attacker);

			if (headshot) {
				SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipHeadShotPieniadze) + PieniadzeGracza);
				if (HP + GetConVarInt(g_cvVipHeadShotHP) > GetConVarInt(g_cvVipMaxHP))SetEntityHealth(attacker, GetConVarInt(g_cvVipMaxHP));
				if (HP + GetConVarInt(g_cvVipHeadShotHP) <= GetConVarInt(g_cvVipHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvVipHeadShotHP));
			}
			else {
				SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipKillPieniadze) + PieniadzeGracza);
				if (HP + GetConVarInt(g_cvVipKillHP) > GetConVarInt(g_cvVipHeadShotHP))SetEntityHealth(attacker, GetConVarInt(g_cvVipHeadShotHP));
				if (HP + GetConVarInt(g_cvVipKillHP) <= GetConVarInt(g_cvVipHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvVipKillHP));
			}
		}
	}
	else if(IsPlayerPremium(attacker))
	{
		if (!IsValidClient(attacker)) {
			return;
		}

		if (GetClientTeam(attacker) != GetClientTeam(victim))
		{
			bool headshot = GetEventBool(hEvent, "headshot");
			int PieniadzeGracza = GetEntProp(attacker, Prop_Send, "m_iAccount");
			int HP = GetClientHealth(attacker);

			if (headshot) {
				SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumHeadShotPieniadze) + PieniadzeGracza);
				if (HP + GetConVarInt(g_cvPremiumHeadShotHP) > GetConVarInt(g_cvPremiumMaxHP))SetEntityHealth(attacker, GetConVarInt(g_cvPremiumMaxHP));
				if (HP + GetConVarInt(g_cvPremiumHeadShotHP) <= GetConVarInt(g_cvPremiumHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvPremiumHeadShotHP));
			}
			else {
				SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumKillPieniadze) + PieniadzeGracza);
				if (HP + GetConVarInt(g_cvPremiumKillHP) > GetConVarInt(g_cvPremiumHeadShotHP))SetEntityHealth(attacker, GetConVarInt(g_cvPremiumHeadShotHP));
				if (HP + GetConVarInt(g_cvPremiumKillHP) <= GetConVarInt(g_cvPremiumHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvPremiumKillHP));
			}
		}
	}
}

public Action Event_BombPlanted(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	int client = GetClientOfUserId(GetEventInt(hEvent, "userid"));
	int PieniadzeGracza = GetEntProp(client, Prop_Send, "m_iAccount");

	if (IsPlayerVIP(client)) {

		SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipPieniadzePodlozenie) + PieniadzeGracza);
	}
	else if(IsPlayerPremium(client)) {

		SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumPieniadzePodlozenie) + PieniadzeGracza);
	}
}

public Action Event_BombDefused(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	int client = GetClientOfUserId(GetEventInt(hEvent, "userid"));
	int PieniadzeGracza = GetEntProp(client, Prop_Send, "m_iAccount");

	if (IsPlayerVIP(client)) {
		SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipPieniadzeRozbrojenie) + PieniadzeGracza);
	}
	
	else if (IsPlayerPremium(client)) {
		SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumPieniadzeRozbrojenie) + PieniadzeGracza);
	}
}

public Action Event_RoundEnd(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
	int winnerTeam = GetEventInt(hEvent, "winner");

	for (int client = 1; client < MAXPLAYERS + 1; client++)
	{
		if (IsPlayerVIP(client) && IsValidClient(client))
		{
			RemoveNades(client);

			if (GetClientTeam(client) == winnerTeam)
			{
				SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipWygranaPieniadze) + GetEntProp(client, Prop_Send, "m_iAccount"));
			}
		}
		else if (IsPlayerPremium(client) && IsValidClient(client))
		{
			RemoveNades(client);

			if (GetClientTeam(client) == winnerTeam)
			{
				SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumWygranaPieniadze) + GetEntProp(client, Prop_Send, "m_iAccount"));
			}
		}
	}
}

public Action Event_TagTable(Event event, const char[] chName, bool bDontBroadcast)
{
	int client = GetClientOfUserId(event.GetInt("userid"));

	char TagTabela[128];
	char TagTabelaPremium[128];
	g_cvVipTag_Tabela.GetString(TagTabela, sizeof(TagTabela));
	g_cvPremiumTag_Tabela.GetString(TagTabelaPremium, sizeof(TagTabelaPremium));

	if (IsPlayerVIP(client))
	{
		if (GetConVarBool(g_cvVipTag_Tabela_wlaczone))CS_SetClientClanTag(client, TagTabela);
	}
	else if(IsPlayerPremium(client))
	{
		if (GetConVarBool(g_cvPremiumTag_Tabela_wlaczone))CS_SetClientClanTag(client, TagTabelaPremium);
	}
}

public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3], float angles[3], int &weapon)
{
	if (!g_cvVipDoubleJump.BoolValue)
		return Plugin_Handled;
		
	if (!g_cvPremiumDoubleJump.BoolValue)
		return Plugin_Handled;	
	

	if (IsPlayerVIP(client))
	{
		static int g_fLastButtons[MAXPLAYERS + 1], g_fLastFlags[MAXPLAYERS + 1], g_iJumps[MAXPLAYERS + 1], fCurFlags, fCurButtons;
		fCurFlags = GetEntityFlags(client);
		fCurButtons = GetClientButtons(client);
		if (g_fLastFlags[client] & FL_ONGROUND && !(fCurFlags & FL_ONGROUND) && !(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP)g_iJumps[client]++;
		else if (fCurFlags & FL_ONGROUND)g_iJumps[client] = 0;
		else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP && g_iJumps[client] == 1)
		{
			g_iJumps[client]++;
			float vVel[3];
			GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel);
			vVel[2] = 250.0;
			TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel);
		}

		g_fLastFlags[client] = fCurFlags;
		g_fLastButtons[client] = fCurButtons;
	}
	else if (IsPlayerPremium(client))
	{
		static int g_fLastButtons[MAXPLAYERS + 1], g_fLastFlags[MAXPLAYERS + 1], g_iJumps[MAXPLAYERS + 1], fCurFlags, fCurButtons;
		fCurFlags = GetEntityFlags(client);
		fCurButtons = GetClientButtons(client);
		if (g_fLastFlags[client] & FL_ONGROUND && !(fCurFlags & FL_ONGROUND) && !(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP)g_iJumps[client]++;
		else if (fCurFlags & FL_ONGROUND)g_iJumps[client] = 0;
		else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP && g_iJumps[client] == 1)
		{
			g_iJumps[client]++;
			float vVel[3];
			GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel);
			vVel[2] = 250.0;
			TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel);
		}

		g_fLastFlags[client] = fCurFlags;
		g_fLastButtons[client] = fCurButtons;
	}
	return Plugin_Continue;
}

stock void StripAllWeapons(int client)
{
	int iEnt;
	for (int i = 0; i <= 2; i++)
	{
		while ((iEnt = GetPlayerWeaponSlot(client, i)) != -1)
		{
			RemovePlayerItem(client, iEnt);
			AcceptEntityInput(iEnt, "Kill");
		}
	}
}

stock void RemoveNades(int client)
{
	while (RemoveWeaponBySlot(client, 3)) {  }
	for (int i = 0; i < 6; i++)
	SetEntProp(client, Prop_Send, "m_iAmmo", 0, _, g_iaGrenadeOffsets[i]);
}

stock bool RemoveWeaponBySlot(int client, int iSlot)
{
	int iEntity = GetPlayerWeaponSlot(client, iSlot);
	if (IsValidEdict(iEntity)) {
		RemovePlayerItem(client, iEntity);
		AcceptEntityInput(iEntity, "Kill");
		return true;
	}
	return false;
}

bool IsPlayerVIP(int client)
{
	if (IsPlayerPremium(client))
		return false;
		
	if (CheckCommandAccess(client, "sm_Vip", 0, true) || FreeVip)
		return true;

	return false;
}

bool IsPlayerVIP(int client)	//Zakładam, że to Vip
{
	if(IsPlayerPremium(client))	//Jeżeli gracz ma Svipa(zakładam też, że Super Vip jest lepszy niż zwykły), to nie ma Vipa
		return false;

	if(CheckCommandAccess(client, "sm_vip", 0, false) || FreeVip)
		return true;

	return false;
}

bool IsPlayerPremium(int client)	//a to Svip
{
	if(CheckCommandAccess(client, "sm_premium", 0, false))
		return true;

	return false;
}

 

 

Nie kompiluje pluginu 😕

 image.png.7552ed28c45da5c7f367b656b8ee0554.png

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie masz określonej procedury

public bool IsValidClient(int client) 
{
    if(!(1 <= client <= MaxClients) || !IsClientInGame(client)) 
        return false; 
     
    return true

I masz 2 razy procedure bool IsPlayerVIP, zdecyduj się i powinno się ładnie skompilować

Edytowano przez NWayne

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
3 minuty temu, NWayne napisał:

Nie masz określonej metody


public bool IsValidClient(int client) 
{
    if(!(1 <= client <= MaxClients) || !IsClientInGame(client)) 
        return false; 
     
    return true

I masz 2 razy metode bool IsPlayerVIP, zdecyduj się i powinno się ładnie skompilować

 

Tutaj kod:

Spoiler

/* << Includy >> */
#include <cstrike>
#include <sourcemod>
#include <sdktools>
#include <sdkhooks>
#include <multicolors>
 
/* << Define >> */
#define PL_VERSION "1.4"
 
/* << Pragma >> */
#pragma newdecls required
#pragma semicolon 1
 
/* << ConVary (VIP) >> */
ConVar g_cvVipHP;
ConVar g_cvVipMaxHP;
ConVar g_cvVipHeadShotHP;
ConVar g_cvVipKillHP;
ConVar g_cvVipPredkoscGracza;
ConVar g_cvVipGrawitacja;
ConVar g_cvVipArmor;
ConVar g_cvVipHelm;
ConVar g_cvVipHEGranat;
ConVar g_cvVipFlashGranat;
ConVar g_cvVipSmokeGranat;
ConVar g_cvVipDecoyGranat;
ConVar g_cvVipHealGranat;
ConVar g_cvVipIncGranat;
ConVar g_cvVipMolotovGranat;
ConVar g_cvVipTaGranat;
ConVar g_cvVipPieniadzeNaStart;
ConVar g_cvVipPieniadzePodlozenie;
ConVar g_cvVipPieniadzeRozbrojenie;
ConVar g_cvVipHeadShotPieniadze;
ConVar g_cvVipKillPieniadze;
ConVar g_cvVipWygranaPieniadze;
ConVar g_cvVipTag_Tabela_wlaczone;
ConVar g_cvVipTag_Tabela;
ConVar g_cvVipDoubleJump;
ConVar g_cvVipMenu_Broni;
ConVar g_cvVipRunda_MenuBroni;
ConVar g_cvVipDarmowy_Vip;
ConVar g_cvVipOdGodziny;
ConVar g_cvVipDoGodziny;
 
/* << ConVary (Premium) >> */
ConVar g_cvPremiumHP;
ConVar g_cvPremiumMaxHP;
ConVar g_cvPremiumHeadShotHP;
ConVar g_cvPremiumKillHP;
ConVar g_cvPremiumPredkoscGracza;
ConVar g_cvPremiumGrawitacja;
ConVar g_cvPremiumArmor;
ConVar g_cvPremiumHelm;
ConVar g_cvPremiumHEGranat;
ConVar g_cvPremiumFlashGranat;
ConVar g_cvPremiumSmokeGranat;
ConVar g_cvPremiumDecoyGranat;
ConVar g_cvPremiumHealGranat;
ConVar g_cvPremiumIncGranat;
ConVar g_cvPremiumMolotovGranat;
ConVar g_cvPremiumTaGranat;
ConVar g_cvPremiumPieniadzeNaStart;
ConVar g_cvPremiumPieniadzePodlozenie;
ConVar g_cvPremiumPieniadzeRozbrojenie;
ConVar g_cvPremiumHeadShotPieniadze;
ConVar g_cvPremiumKillPieniadze;
ConVar g_cvPremiumWygranaPieniadze;
ConVar g_cvPremiumTag_Tabela_wlaczone;
ConVar g_cvPremiumTag_Tabela;
ConVar g_cvPremiumDoubleJump;
ConVar g_cvPremiumMenu_Broni;
ConVar g_cvPremiumRunda_MenuBroni;
 
/* << Inty >> */
int RoundCount = 0;
int FreeVip = 0;
int g_iaGrenadeOffsets[] =  { 15, 17, 16, 14, 18, 17 };
 
 
/* << Informacje o pluginie >> */
public Plugin myinfo =
{
    name = "[CS:GO] VIP",
    author = "Bioly",
    description = "[CS:GO] Vip na serwery CSGO",
    version = PL_VERSION,
    url = "#"
}
 
public void OnPluginStart()
{
    HookEvent("round_start", Event_RoundStart);
    HookEvent("player_spawn", Event_TagTable);
    HookEvent("player_spawn", Event_PlayerSpawn);
    HookEvent("player_death", Event_PlayerDeath);
    HookEvent("bomb_planted", Event_BombPlanted);
    HookEvent("bomb_defused", Event_BombDefused);
    HookEvent("round_end", Event_RoundEnd);
    HookEvent("announce_phase_end", ResetPoZmianie);
    HookEvent("cs_intermission", ResetPoZmianie);
 
    /* << ConVary (Vip) >> */
    g_cvVipMaxHP = CreateConVar("max_zycie_vip", "130", "Maksymalna ilość zdrowia dla vipa");
    g_cvVipHP = CreateConVar("zycie_vip", "110", "Ile zdrowia ma posiadać vip na start rundy?");
    g_cvVipKillHP = CreateConVar("kill_hp_vip", "5", "Ile zdrowia ma dostawać vip za zabicie gracza?");
    g_cvVipHeadShotHP = CreateConVar("hs_hp_vip", "10", "Ile zdrowia ma dostawać vip za zabójstwo z HeadShot'a");
    g_cvVipPredkoscGracza = CreateConVar("vip_predkosc_ruchu", "1.0", "Prędkość ruchu vip'a (1.0 - standardowo)");
    g_cvVipGrawitacja = CreateConVar("vip_grawitacja", "1.0", "Grawitacja dla vip'a (1.0 - standardowo)");
    g_cvVipArmor = CreateConVar("armor_vip", "100", "Punkty kamizelki dla vipa? (od 1 - 100)");
    g_cvVipHelm = CreateConVar("helm_vip", "1", "Czy vip ma posiadać darmowy hełm? (0/1)");
    g_cvVipPieniadzeNaStart = CreateConVar("vip_dodatkowy_Pieniadze", "0", "Ilość dodatkowego Pieniadzeu na start rundy jaki ma vip dostawać.");
    g_cvVipKillPieniadze = CreateConVar("Pieniadze_kill_vip", "200", "Ile vip ma dostawać pieniędzy za zabójstwo ?");
    g_cvVipHeadShotPieniadze = CreateConVar("Pieniadze_hs_vip", "500", "Ile vip ma dostawać pieniędzy za zabójstwo w głowę?");
    g_cvVipPieniadzePodlozenie = CreateConVar("Pieniadze_podlozenie_vip", "1000", "Ile Pieniadzeu ma dostawać vip za podłożenie bomby?");
    g_cvVipPieniadzeRozbrojenie = CreateConVar("Pieniadze_rozbrojenie_vip", "1000", "Ile Pieniadzeu ma dostawać vip za rozbrojenie bomby?");
    g_cvVipWygranaPieniadze = CreateConVar("Pieniadze_wygranie_rundy", "500", "Ile Pieniadzeu ma dostawać vip za wygranie rundy?");
    g_cvVipHEGranat = CreateConVar("vip_he", "1", "Czy vip ma dostawać granat HE na start rundy?");
    g_cvVipFlashGranat = CreateConVar("vip_flash", "1", "Czy vip ma dostawać granat Flash na start rundy?");
    g_cvVipSmokeGranat = CreateConVar("vip_smoke", "1", "Czy vip ma dostawać granat Smoke na start rundy?");
    g_cvVipDecoyGranat = CreateConVar("vip_decoy", "0", "Czy vip ma dostawać granat Decoy na start rundy?");
    g_cvVipHealGranat = CreateConVar("vip_heal", "0", "Czy vip ma dostawać granat Leczący na start rundy?");
    g_cvVipIncGranat = CreateConVar("vip_inc", "1", "Czy vip ma dostawać granat Podpalający (CT) na start rundy?");
    g_cvVipMolotovGranat = CreateConVar("vip_molotov", "1", "Czy vip ma dostawać granat Podpalający (TT) na start rundy?");
    g_cvVipTaGranat = CreateConVar("vip_tactic", "0", "Czy vip ma dostawać granat Taktyczny na start rundy?");
    g_cvVipTag_Tabela = CreateConVar("vip_tag", "0", "Czy w tabeli ma widniec tag dla vip'a?");
    g_cvVipTag_Tabela = CreateConVar("sm_clantag", "[VIP]", "Jaki tag w tabeli ma posiadać VIP?");
    g_cvVipDoubleJump = CreateConVar("double_jump", "1", "Czy vip ma posiadać podwójny skok?");
    g_cvVipMenu_Broni = CreateConVar("vip_menu_broni", "1", "Czy ma być menu broni dla vip'a?");
    g_cvVipRunda_MenuBroni = CreateConVar("vip_runda_menubroni", "3", "Od ktorej rundy ma pokazywac menu broni dla vip'a?");
    g_cvVipDarmowy_Vip = CreateConVar("vip_od_danej_godzint", "0", "Czy ma być włączony VIP dla graczy w nocy od x do x godziny?");
    g_cvVipOdGodziny = CreateConVar("vip_od_godziny", "23", "Od ktorej godziny ma byc darmowy vip?");
    g_cvVipDoGodziny = CreateConVar("vip_do_godziny", "7", "Do ktorej godziny ma byc darmowy vip?");
   
    /* << ConVary (Premium) >> */
    g_cvPremiumHP = CreateConVar("zycie_premium", "120", "Ile zdrowia ma posiadać premium na start rundy?");
    g_cvPremiumMaxHP = CreateConVar("max_zycie_premium", "150", "Maksymalna ilość zdrowia dla vipa");
    g_cvPremiumKillHP = CreateConVar("kill_hp_premium", "10", "Ile zdrowia ma dostawać premium za zabicie gracza?");
    g_cvPremiumHeadShotHP = CreateConVar("hs_hp_premium", "15", "Ile zdrowia ma dostawać premium za zabójstwo z HeadShot'a");
    g_cvPremiumPredkoscGracza = CreateConVar("premium_predkosc_ruchu", "1.0", "Prędkość ruchu premium'a (1.0 - standardowo)");
    g_cvPremiumGrawitacja = CreateConVar("premium_grawitacja", "1.0", "Grawitacja dla premium'a (1.0 - standardowo)");
    g_cvPremiumArmor = CreateConVar("armor_premium", "100", "Punkty kamizelki dla premiuma? (od 1 - 100)");
    g_cvPremiumHelm = CreateConVar("helm_premium", "1", "Czy vip ma posiadać darmowy hełm? (0/1)");
    g_cvPremiumPieniadzeNaStart = CreateConVar("premium_dodatkowy_Pieniadze", "0", "Ilość dodatkowego Pieniadzeu na start rundy jaki ma vip dostawać.");
    g_cvPremiumKillPieniadze = CreateConVar("Pieniadze_kill_premium", "300", "Ile vip ma dostawać pieniędzy za zabójstwo ?");
    g_cvPremiumHeadShotPieniadze = CreateConVar("Pieniadze_hs_premium", "700", "Ile vip ma dostawać pieniędzy za zabójstwo w głowę?");
    g_cvPremiumPieniadzePodlozenie = CreateConVar("Pieniadze_podlozenie_premium", "1500", "Ile Pieniadzeu ma dostawać vip za podłożenie bomby?");
    g_cvPremiumPieniadzeRozbrojenie = CreateConVar("Pieniadze_rozbrojenie_premium", "1500", "Ile Pieniadzeu ma dostawać vip za rozbrojenie bomby?");
    g_cvPremiumWygranaPieniadze = CreateConVar("Pieniadze_wygranie_rundy", "700", "Ile Pieniadzeu ma dostawać vip za wygranie rundy?");
    g_cvPremiumHEGranat = CreateConVar("premium_he", "1", "Czy vip ma dostawać granat HE na start rundy?");
    g_cvPremiumFlashGranat = CreateConVar("premium_flash", "1", "Czy vip ma dostawać granat Flash na start rundy?");
    g_cvPremiumSmokeGranat = CreateConVar("premium_smoke", "1", "Czy vip ma dostawać granat Smoke na start rundy?");
    g_cvPremiumDecoyGranat = CreateConVar("premium_decoy", "0", "Czy vip ma dostawać granat Decoy na start rundy?");
    g_cvPremiumHealGranat = CreateConVar("premium_heal", "0", "Czy vip ma dostawać granat Leczący na start rundy?");
    g_cvPremiumIncGranat = CreateConVar("premium_inc", "0", "Czy vip ma dostawać granat Podpalający (CT) na start rundy?");
    g_cvPremiumMolotovGranat = CreateConVar("premium_molotov", "0", "Czy vip ma dostawać granat Podpalający (TT) na start rundy?");
    g_cvPremiumTaGranat = CreateConVar("premium_tactic", "1", "Czy vip ma dostawać granat Taktyczny na start rundy?");
    g_cvPremiumTag_Tabela_wlaczone = CreateConVar("premium_tag", "0", "Czy w tabeli ma widniec tag dla vip'a?");
    g_cvPremiumTag_Tabela = CreateConVar("sm_clantag_premium", "[Premium]", "Jaki tag w tabeli ma posiadać VIP?");
    g_cvPremiumDoubleJump = CreateConVar("double_jump_premium", "1", "Czy vip ma posiadać podwójny skok?");
    g_cvPremiumMenu_Broni = CreateConVar("vip_menu_broni_premium", "1", "Czy ma być menu broni dla vip'a?");
    g_cvPremiumRunda_MenuBroni = CreateConVar("vip_runda_menubroni_premium", "3", "Od ktorej rundy ma pokazywac menu broni dla vip'a?");
 
}
 
public void OnMapStart()
{
    AutoExecConfig(true, "AB_Konfiguracja_Vipa_Premium");
    RoundCount = 0;
}
 
public Action MenuGlowne(int client)
{
    if (IsValidClient(client)) {
        if (IsPlayerVIP(client)) {
               
            Menu menu = new Menu(MenuHandler1);
            menu.SetTitle("Menu VIP : Wybierz Broń");
            menu.AddItem("weapon_ak47", "AK-47");
            menu.AddItem("weapon_m4a1", "M4A4");
            menu.AddItem("weapon_m4a1_silencer", "M4A1-S");
            menu.AddItem("weapon_awp", "AWP");
            menu.ExitButton = true;
            menu.Display(client, 15);
        }
        else if (IsPlayerPremium(client)){
            Menu menu = new Menu(MenuHandler1);
            menu.SetTitle("Menu Premium : Wybierz Broń");
            menu.AddItem("weapon_ak47", "AK-47");
            menu.AddItem("weapon_m4a1", "M4A4");
            menu.AddItem("weapon_m4a1_silencer", "M4A1-S");
            menu.AddItem("weapon_mp5sd", "MP5-SD");
            menu.AddItem("weapon_awp", "AWP");
            menu.ExitButton = true;
            menu.Display(client, 15);
        }
    }
}
 
public int MenuHandler1(Menu menu, MenuAction action, int client, int itemNum)
{
    if (action == MenuAction_Select)
    {
        char info[32];
        GetMenuItem(menu, itemNum, info, sizeof(info));
 
        if (IsPlayerAlive(client))
        {
            StripAllWeapons(client);
            GivePlayerItem(client, "weapon_knife");
            GivePlayerItem(client, info);
            MenuBroni(client);
        }
    }
 
    else if (action == MenuAction_End) {
        CloseHandle(menu);
    }
}
 
public Action MenuBroni(int client)
{
    if (IsValidClient(client)) {
        if (IsPlayerVIP(client)) {
            Menu menusec = new Menu(MenuHandler2);
            menusec.SetTitle("Menu VIP : Wybierz Pistolet");
            menusec.AddItem("weapon_deagle", "Deagle");
            menusec.AddItem("weapon_fiveseven", "Five-Seven");
            menusec.AddItem("weapon_elite", "Dual Elites");
            menusec.AddItem("weapon_p250", "p250");
            menusec.ExitButton = true;
            menusec.Display(client, 15);
        }
        else if(IsPlayerPremium(client)){
            Menu menusec = new Menu(MenuHandler2);
            menusec.SetTitle("Menu Premium : Wybierz Pistolet");
            menusec.AddItem("weapon_deagle", "Deagle");
            menusec.AddItem("weapon_fiveseven", "Five-Seven");
            menusec.AddItem("weapon_tec9", "Tec-9");
            menusec.AddItem("weapon_cz75a", "CZ7a");
            menusec.AddItem("weapon_elite", "Dual Elites");
            menusec.AddItem("weapon_p250", "p250");
            menusec.AddItem("weapon_glock18", "Glock-18");
            menusec.AddItem("weapon_usp", "USP");
            menusec.ExitButton = true;
            menusec.Display(client, 15);
        }
    }
}
 
public int MenuHandler2(Menu menusec, MenuAction action, int client, int itemNum)
{
 
    if (action == MenuAction_Select)
    {
        char info[32];
        GetMenuItem(menusec, itemNum, info, sizeof(info));
 
        if (IsPlayerAlive(client)) {
            GivePlayerItem(client, info);
        }
    }
 
    else if (action == MenuAction_End) {
        CloseHandle(menusec);
    }
}
 
public Action Event_RoundStart(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    if (GetConVarBool(g_cvVipDarmowy_Vip))
    {
        int od_godziny = GetConVarInt(g_cvVipOdGodziny);
        int do_godziny = GetConVarInt(g_cvVipDoGodziny);
        if(od_godziny || do_godziny)
        {
            char godzina_str[8];
            FormatTime(godzina_str, sizeof(godzina_str), "%H", GetTime());
            int godzina = StringToInt(godzina_str);
            if(od_godziny > do_godziny)
                FreeVip = (godzina >= od_godziny || godzina < do_godziny)? 1: 0;
            else
                FreeVip = (godzina >= od_godziny && godzina < do_godziny)? 1: 0;
        }
        else
            FreeVip = 0;
    }
 
    if (GameRules_GetProp("m_bWarmupPeriod") != 1)
        RoundCount = RoundCount + 1;
}
 
public Action ResetPoZmianie(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    RoundCount = 0;
}
 
public Action Event_PlayerSpawn(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    int client = GetClientOfUserId(GetEventInt(hEvent, "userid"));
 
    if (GameRules_GetProp("m_bWarmupPeriod") == 1)
        return;
 
    if (IsPlayerVIP(client))
    {
        if(RoundCount == 1 || RoundCount == 15)
        {
            SetEntProp(client, Prop_Send, "m_bHasHelmet", 0);
        }
        else
        {
            SetEntProp(client, Prop_Send, "m_ArmorValue", GetConVarInt(g_cvVipArmor));
            SetEntProp(client, Prop_Send, "m_bHasHelmet", GetConVarInt(g_cvVipHelm));
            SetEntityHealth(client, GetConVarInt(g_cvVipHP));
            SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount") + GetConVarInt(g_cvVipPieniadzeNaStart));
            SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", GetConVarFloat(g_cvVipPredkoscGracza));
            SetEntityGravity(client, GetConVarFloat(g_cvVipGrawitacja));
            if (GetClientTeam(client) == CS_TEAM_CT && GetEntProp(client, Prop_Send, "m_bHasDefuser") == 0)GivePlayerItem(client, "item_defuser");
            if (GetConVarBool(g_cvVipHEGranat))GivePlayerItem(client, "weapon_hegrenade");
            if (GetConVarBool(g_cvVipFlashGranat))GivePlayerItem(client, "weapon_flashbang");
            if (GetConVarBool(g_cvVipSmokeGranat))GivePlayerItem(client, "weapon_smokegrenade");
            if (GetConVarBool(g_cvVipDecoyGranat))GivePlayerItem(client, "weapon_decoy");
            if (GetConVarBool(g_cvVipHealGranat))GivePlayerItem(client, "weapon_healthshot");
            if (GetConVarBool(g_cvVipIncGranat))GivePlayerItem(client, "weapon_incgrenade");
            if (GetConVarBool(g_cvVipMolotovGranat))GivePlayerItem(client, "weapon_molotov");
            if (GetConVarBool(g_cvVipTaGranat))GivePlayerItem(client, "weapon_tagrenade");
        }
    }
    else if(IsPlayerPremium(client))
    {
        if(RoundCount == 1 || RoundCount == 15)
        {
            SetEntProp(client, Prop_Send, "m_bHasHelmet", 0);
        }
        else
        {
            SetEntProp(client, Prop_Send, "m_ArmorValue", GetConVarInt(g_cvPremiumArmor));
            SetEntProp(client, Prop_Send, "m_bHasHelmet", GetConVarInt(g_cvPremiumHelm));
            SetEntityHealth(client, GetConVarInt(g_cvPremiumHP));
            SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount") + GetConVarInt(g_cvPremiumPieniadzeNaStart));
            SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", GetConVarFloat(g_cvPremiumPredkoscGracza));
            SetEntityGravity(client, GetConVarFloat(g_cvPremiumGrawitacja));
            if (GetClientTeam(client) == CS_TEAM_CT && GetEntProp(client, Prop_Send, "m_bHasDefuser") == 0)GivePlayerItem(client, "item_defuser");
            if (GetConVarBool(g_cvPremiumHEGranat))GivePlayerItem(client, "weapon_hegrenade");
            if (GetConVarBool(g_cvPremiumFlashGranat))GivePlayerItem(client, "weapon_flashbang");
            if (GetConVarBool(g_cvPremiumSmokeGranat))GivePlayerItem(client, "weapon_smokegrenade");
            if (GetConVarBool(g_cvPremiumDecoyGranat))GivePlayerItem(client, "weapon_decoy");
            if (GetConVarBool(g_cvPremiumHealGranat))GivePlayerItem(client, "weapon_healthshot");
            if (GetConVarBool(g_cvPremiumIncGranat))GivePlayerItem(client, "weapon_incgrenade");
            if (GetConVarBool(g_cvPremiumMolotovGranat))GivePlayerItem(client, "weapon_molotov");
            if (GetConVarBool(g_cvPremiumTaGranat))GivePlayerItem(client, "weapon_tagrenade");
        }
    }
 
    if (RoundCount >= GetConVarInt(g_cvVipRunda_MenuBroni))
    {
        if (GetConVarBool(g_cvVipMenu_Broni))MenuGlowne(client);
    }
    else if (RoundCount >= GetConVarInt(g_cvPremiumRunda_MenuBroni))
    {
        if (GetConVarBool(g_cvPremiumMenu_Broni))MenuGlowne(client);
    }
}
 
public Action Event_PlayerDeath(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    int attacker = GetClientOfUserId(GetEventInt(hEvent, "attacker"));
    int victim = GetClientOfUserId(GetEventInt(hEvent, "userid"));
 
    if (IsPlayerVIP(attacker))
    {
        if (!IsValidClient(attacker)) {
            return;
        }
 
        if (GetClientTeam(attacker) != GetClientTeam(victim))
        {
            bool headshot = GetEventBool(hEvent, "headshot");
            int PieniadzeGracza = GetEntProp(attacker, Prop_Send, "m_iAccount");
            int HP = GetClientHealth(attacker);
 
            if (headshot) {
                SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipHeadShotPieniadze) + PieniadzeGracza);
                if (HP + GetConVarInt(g_cvVipHeadShotHP) > GetConVarInt(g_cvVipMaxHP))SetEntityHealth(attacker, GetConVarInt(g_cvVipMaxHP));
                if (HP + GetConVarInt(g_cvVipHeadShotHP) <= GetConVarInt(g_cvVipHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvVipHeadShotHP));
            }
            else {
                SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipKillPieniadze) + PieniadzeGracza);
                if (HP + GetConVarInt(g_cvVipKillHP) > GetConVarInt(g_cvVipHeadShotHP))SetEntityHealth(attacker, GetConVarInt(g_cvVipHeadShotHP));
                if (HP + GetConVarInt(g_cvVipKillHP) <= GetConVarInt(g_cvVipHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvVipKillHP));
            }
        }
    }
    else if(IsPlayerPremium(attacker))
    {
        if (!IsValidClient(attacker)) {
            return;
        }
 
        if (GetClientTeam(attacker) != GetClientTeam(victim))
        {
            bool headshot = GetEventBool(hEvent, "headshot");
            int PieniadzeGracza = GetEntProp(attacker, Prop_Send, "m_iAccount");
            int HP = GetClientHealth(attacker);
 
            if (headshot) {
                SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumHeadShotPieniadze) + PieniadzeGracza);
                if (HP + GetConVarInt(g_cvPremiumHeadShotHP) > GetConVarInt(g_cvPremiumMaxHP))SetEntityHealth(attacker, GetConVarInt(g_cvPremiumMaxHP));
                if (HP + GetConVarInt(g_cvPremiumHeadShotHP) <= GetConVarInt(g_cvPremiumHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvPremiumHeadShotHP));
            }
            else {
                SetEntProp(attacker, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumKillPieniadze) + PieniadzeGracza);
                if (HP + GetConVarInt(g_cvPremiumKillHP) > GetConVarInt(g_cvPremiumHeadShotHP))SetEntityHealth(attacker, GetConVarInt(g_cvPremiumHeadShotHP));
                if (HP + GetConVarInt(g_cvPremiumKillHP) <= GetConVarInt(g_cvPremiumHeadShotHP))SetEntityHealth(attacker, HP + GetConVarInt(g_cvPremiumKillHP));
            }
        }
    }
}
 
public Action Event_BombPlanted(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    int client = GetClientOfUserId(GetEventInt(hEvent, "userid"));
    int PieniadzeGracza = GetEntProp(client, Prop_Send, "m_iAccount");
 
    if (IsPlayerVIP(client)) {
 
        SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipPieniadzePodlozenie) + PieniadzeGracza);
    }
    else if(IsPlayerPremium(client)) {
 
        SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumPieniadzePodlozenie) + PieniadzeGracza);
    }
}
 
public Action Event_BombDefused(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    int client = GetClientOfUserId(GetEventInt(hEvent, "userid"));
    int PieniadzeGracza = GetEntProp(client, Prop_Send, "m_iAccount");
 
    if (IsPlayerVIP(client)) {
        SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipPieniadzeRozbrojenie) + PieniadzeGracza);
    }
   
    else if (IsPlayerPremium(client)) {
        SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumPieniadzeRozbrojenie) + PieniadzeGracza);
    }
}
 
public Action Event_RoundEnd(Handle hEvent, const char[] chName, bool bDontBroadcast)
{
    int winnerTeam = GetEventInt(hEvent, "winner");
 
    for (int client = 1; client < MAXPLAYERS + 1; client++)
    {
        if (IsPlayerVIP(client) && IsValidClient(client))
        {
            RemoveNades(client);
 
            if (GetClientTeam(client) == winnerTeam)
            {
                SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvVipWygranaPieniadze) + GetEntProp(client, Prop_Send, "m_iAccount"));
            }
        }
        else if (IsPlayerPremium(client) && IsValidClient(client))
        {
            RemoveNades(client);
 
            if (GetClientTeam(client) == winnerTeam)
            {
                SetEntProp(client, Prop_Send, "m_iAccount", GetConVarInt(g_cvPremiumWygranaPieniadze) + GetEntProp(client, Prop_Send, "m_iAccount"));
            }
        }
    }
}
 
public Action Event_TagTable(Event event, const char[] chName, bool bDontBroadcast)
{
    int client = GetClientOfUserId(event.GetInt("userid"));
 
    char TagTabela[128];
    char TagTabelaPremium[128];
    g_cvVipTag_Tabela.GetString(TagTabela, sizeof(TagTabela));
    g_cvPremiumTag_Tabela.GetString(TagTabelaPremium, sizeof(TagTabelaPremium));
 
    if (IsPlayerVIP(client))
    {
        if (GetConVarBool(g_cvVipTag_Tabela_wlaczone))CS_SetClientClanTag(client, TagTabela);
    }
    else if(IsPlayerPremium(client))
    {
        if (GetConVarBool(g_cvPremiumTag_Tabela_wlaczone))CS_SetClientClanTag(client, TagTabelaPremium);
    }
}
 
public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3], float angles[3], int &weapon)
{
    if (!g_cvVipDoubleJump.BoolValue)
        return Plugin_Handled;
       
    if (!g_cvPremiumDoubleJump.BoolValue)
        return Plugin_Handled; 
   
 
    if (IsPlayerVIP(client))
    {
        static int g_fLastButtons[MAXPLAYERS + 1], g_fLastFlags[MAXPLAYERS + 1], g_iJumps[MAXPLAYERS + 1], fCurFlags, fCurButtons;
        fCurFlags = GetEntityFlags(client);
        fCurButtons = GetClientButtons(client);
        if (g_fLastFlags[client] & FL_ONGROUND && !(fCurFlags & FL_ONGROUND) && !(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP)g_iJumps[client]++;
        else if (fCurFlags & FL_ONGROUND)g_iJumps[client] = 0;
        else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP && g_iJumps[client] == 1)
        {
            g_iJumps[client]++;
            float vVel[3];
            GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel);
            vVel[2] = 250.0;
            TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel);
        }
 
        g_fLastFlags[client] = fCurFlags;
        g_fLastButtons[client] = fCurButtons;
    }
    else if (IsPlayerPremium(client))
    {
        static int g_fLastButtons[MAXPLAYERS + 1], g_fLastFlags[MAXPLAYERS + 1], g_iJumps[MAXPLAYERS + 1], fCurFlags, fCurButtons;
        fCurFlags = GetEntityFlags(client);
        fCurButtons = GetClientButtons(client);
        if (g_fLastFlags[client] & FL_ONGROUND && !(fCurFlags & FL_ONGROUND) && !(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP)g_iJumps[client]++;
        else if (fCurFlags & FL_ONGROUND)g_iJumps[client] = 0;
        else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP && g_iJumps[client] == 1)
        {
            g_iJumps[client]++;
            float vVel[3];
            GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel);
            vVel[2] = 250.0;
            TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel);
        }
 
        g_fLastFlags[client] = fCurFlags;
        g_fLastButtons[client] = fCurButtons;
    }
    return Plugin_Continue;
}
 
stock void StripAllWeapons(int client)
{
    int iEnt;
    for (int i = 0; i <= 2; i++)
    {
        while ((iEnt = GetPlayerWeaponSlot(client, i)) != -1)
        {
            RemovePlayerItem(client, iEnt);
            AcceptEntityInput(iEnt, "Kill");
        }
    }
}
 
stock void RemoveNades(int client)
{
    while (RemoveWeaponBySlot(client, 3)) {  }
    for (int i = 0; i < 6; i++)
    SetEntProp(client, Prop_Send, "m_iAmmo", 0, _, g_iaGrenadeOffsets[i]);
}
 
stock bool RemoveWeaponBySlot(int client, int iSlot)
{
    int iEntity = GetPlayerWeaponSlot(client, iSlot);
    if (IsValidEdict(iEntity)) {
        RemovePlayerItem(client, iEntity);
        AcceptEntityInput(iEntity, "Kill");
        return true;
    }
    return false;
}
 
bool IsPlayerVIP(int client)    //Zakładam, że to Vip
{
    if(IsPlayerPremium(client)) //Jeżeli gracz ma Svipa(zakładam też, że Super Vip jest lepszy niż zwykły), to nie ma Vipa
        return false;
 
    if(CheckCommandAccess(client, "sm_vip", 0, false) || FreeVip)
        return true;
 
    return false;
}
 
bool IsPlayerPremium(int client)    //a to Svip
{
    if(CheckCommandAccess(client, "sm_premium", 0, false))
        return true;
 
    return false;
}
 
bool IsValidClient(int client)
{
    if(client >= 1 && client <= MaxClients && IsClientInGame(client))
        return true;
    return false;
}

 

 

Po zabici kogoś automatycznie wszyscy gracze mają 15HP

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

dopisałeś w pliku admin_overrides.cfg "sm_premium"?

 

#offtopic. Dlaczego zmieniasz autora w pluginie lulz

Edytowano przez TenTaki

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
34 minuty temu, TenTaki napisał:

#offtopic. Dlaczego zmieniasz autora w pluginie lulz

Bo to jest Polska która nie uszanuję czyjejś włożonej pracy i po prostu podpisuję się pod czyjeś projekty.

Ich rozumowanie jest w takim stylu:
Zmienię wartość cvara lub dodam jedną linijkę, jestem autorem pluginu.

 

Takich ludzi należy ignorować i traktować ich w taki sposób jak traktują inne osoby.

  • Lubię to! 2
  • Dobry pomysł! 2
  • Wow! 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
3 godziny temu, Mesharsky napisał:

Bo to jest Polska która nie uszanuję czyjejś włożonej pracy i po prostu podpisuję się pod czyjeś projekty.

Ich rozumowanie jest w takim stylu:
Zmienię wartość cvara lub dodam jedną linijkę, jestem autorem pluginu.

 

Takich ludzi należy ignorować i traktować ich w taki sposób jak traktują inne osoby.

Nie do końca się zgodzę...

 

W zupełności popieram fakt, że nadpisywanie creditsów jest policzkiem w twarz dla autora i ma on prawo się denerwować (gdyby ktoś robił tak z moimi dodatkami też bym się pogniewał)

Niemniej, nie należy na dzień dobry pisać o ignorancji - myślę, że wytłumaczenie jak należy postępować nawróci go na odpowiednie tory. Taka postawa bardzo zniechęca i pozostawia niesmak.

 

tl;dr - nie opluwajmy się, a dogadujmy 😉

  • Kocham to! 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
11 godzin temu, Mesharsky napisał:

Bo to jest Polska która nie uszanuję czyjejś włożonej pracy i po prostu podpisuję się pod czyjeś projekty.

Ich rozumowanie jest w takim stylu:
Zmienię wartość cvara lub dodam jedną linijkę, jestem autorem pluginu.

 

Takich ludzi należy ignorować i traktować ich w taki sposób jak traktują inne osoby.

Podsyłałem na poprawkę do kogoś innego i wstawiłem poprostu kod który działał ale wywalał błędem nawet nie zauważyłem że autor zmieniony.. Sorry

Jak wejdziesz na moje serwery normalnie jesteś wpisany w autorze pluginu VIP i każdym innym który posiadam od Ciebie

Edytowano przez Akeno|AdvancedNet
  • Lubię to! 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
2 minuty temu, Akeno|AdvancedNet napisał:

Podsyłałem na poprawkę do kogoś innego i wstawiłem poprostu kod który działał ale wywalał błędem nawet nie zauważyłem że autor zmieniony.. Sorry

Jak wejdziesz na moje serwery normalnie jesteś wpisany w autorze pluginu VIP i każdym innym który posiadam od Ciebie

Wiem że to nie ty podpisałeś się pod autora mojego pluginu tylko deb** z innej sieci.

Po drugie nie bierz nic od tamtego człowieka bo wiedza na temat SM jest mu obca i jego działania są dziecięce.

 

=======================================================================

 

Dalej masz problemy z pluginem?

  • Lubię to! 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
13 godzin temu, Mesharsky napisał:

Wiem że to nie ty podpisałeś się pod autora mojego pluginu tylko deb** z innej sieci.

Po drugie nie bierz nic od tamtego człowieka bo wiedza na temat SM jest mu obca i jego działania są dziecięce.

 

=======================================================================

 

Dalej masz problemy z pluginem?

Tak niestety nadal nie działa 😕

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
2 godziny temu, Akeno|AdvancedNet napisał:

Tak niestety nadal nie działa 😕

w pliku admin_overrides.cfg dopisałeś "sm_premium"?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
9 minut temu, TenTaki napisał:

w pliku admin_overrides.cfg dopisałeś "sm_premium"?

Tak wszystko mam ponieważ aktualnie mam VIP oraz przeróbke na SVIP właśnie na takich ustawieniach. Więc to wina bezpośrednio pluginu.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się
Zaloguj się, aby obserwować  

  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.

×