Vlastné pluginy nefungujú

Veškeré návody, pluginy, atd.. ohledně Counter-Strike 1.6.
Odpovědět
RayCodeCSC
Příspěvky: 27
Registrován: 11 črc 2019 23:52

Vlastné pluginy nefungujú

Příspěvek od RayCodeCSC » 10 zář 2019 16:49

Zdravím, mám problém so serverom. Keď na server nahrám svoje pluginy, tak po smrti (napr. pád z veľkej výšky) ma to nerespawne, ale kamera ako keby zostane "zaseknutá" na mŕtvom hráčovi. HUD vidím stále svoj, a vľavo dole je "0 HP" červeno. Zistil som že to spôsobujú pravdepodobne všetky moje pluginy. V konzole servera mi to píše nech povolím debug mode, ale keď ho povolím, pluginy zasa nefungujú. Prikladám pluginy a ich kódy. Ono... ťažko sa mi to vysvetľuje. To by ste museli ísť na môj server a skúsiť si to samy....

https://uloz.to/file/9XSODxOic6DU/cs-1-6-scripts-me-rar

Uživatelský avatar
DrWarpMan
Zákaznická podpora
Příspěvky: 24
Registrován: 09 kvě 2019 15:26

Příspěvek od DrWarpMan » 10 zář 2019 17:03

Konkrétne plugin, ktorý vyvoláva bug je "vip_vyhody.amxx", pretože v eventoch Ham_Killed a Ham_Spawn, máte funkcie ktoré pridávaniu peniaze attackerovi (útočnikovi), avšak pri "samovražde" útočník neexistuje, skúste použiť tento kód, pridal som podmienku či attacker (útočník) existuje:

Kód: Vybrat vše

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

new g_iMaxPlayers;
#define FIRST_PLAYER_ID	1
#define IsPlayer(%1) (FIRST_PLAYER_ID <= %1 <= g_iMaxPlayers)

public plugin_init()
{
	register_plugin("VIP Vyhody", "1.0", "RayCodeCSC")

	g_iMaxPlayers	 	= get_maxplayers();

	RegisterHam(Ham_TakeDamage, "player", "isDamaged")
	RegisterHam(Ham_Killed, "player", "isKilled")
	RegisterHam(Ham_Spawn, "player", "afterSpawn")
}

public afterSpawn(id)
{
	if(get_user_flags(id) & ADMIN_LEVEL_A)
	{
		cs_set_user_money(id, cs_get_user_money(id) + 30)
	}
	else
	{
		cs_set_user_money(id, cs_get_user_money(id) + 3)
	}
}

public isDamaged(victim, attacker)
{
	if(IsPlayer(attacker))
	{
		if(get_user_flags(attacker) & ADMIN_LEVEL_A)
		{
			cs_set_user_money(attacker, cs_get_user_money(attacker) + 50)
		}
		else
		{
			cs_set_user_money(attacker, cs_get_user_money(attacker) + 15)
		}
	}

	if(get_user_flags(victim) & ADMIN_LEVEL_A)
	{
		cs_set_user_money(victim, cs_get_user_money(victim) + 10)
	}
	else
	{
		cs_set_user_money(victim, cs_get_user_money(victim) - 3)
	}
}


public isKilled(victim, attacker)
{
	if(IsPlayer(attacker))
	{
		if(get_user_flags(attacker) & ADMIN_LEVEL_A)
		{
			cs_set_user_money(attacker, cs_get_user_money(attacker) + 120)
			set_user_health(attacker, get_user_health(attacker) + 5)
			set_user_armor(attacker, get_user_armor(attacker) + 5)
		}
		else
		{
			cs_set_user_money(attacker, cs_get_user_money(attacker) + 30)
		}
	}

	if(get_user_flags(victim) & ADMIN_LEVEL_A)
	{
		cs_set_user_money(victim, cs_get_user_money(victim) + 5)
	}
	else
	{
		cs_set_user_money(victim, cs_get_user_money(victim) - 10)
	}
}
“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” – Martin Fowler
“Marketing is the obverse of programming.” – John McAfee
“Copy and paste is a design error.” – David Parnas

RayCodeCSC
Příspěvky: 27
Registrován: 11 črc 2019 23:52

Příspěvek od RayCodeCSC » 10 zář 2019 18:00

Tak som to už zrejme vyriešil. Chyba predsa len nie je na mojej strane, ale na strane JailBreak Extreme. Dal som si na server Pastout JailBreak mod, a funguje už všetko tak ako má. Akurát sa chcem ešte spýtať, dá sa nejako odstrániť v Pastout JailBreak mod /class menu pre CT? Skrátka aby nemohli používa´t príkaz /class. Neviem... cvar-om ho nejako zakázať alebo niečo také...?

Uživatelský avatar
DrWarpMan
Zákaznická podpora
Příspěvky: 24
Registrován: 09 kvě 2019 15:26

Příspěvek od DrWarpMan » 10 zář 2019 22:27

Chyba bola v danom plugine, len som si neuvedomil, že počas toho ako som testoval daný plugin, tak som ho vlastne nahrával na Váš server, tým pádom, Vy ho tam máte napravený.
“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” – Martin Fowler
“Marketing is the obverse of programming.” – John McAfee
“Copy and paste is a design error.” – David Parnas

Odpovědět