Skocz do zawartości
Brum Brum

[CS:GO] Seria zabójstw

Rekomendowane odpowiedzi

Opis: Dodaje licznik zabójstw bez śmierci.

KOD:

 

Spoiler

#pragma semicolon 1
#pragma newdecls required

int Kills[MAXPLAYERS + 1];

public Plugin myinfo = 
{
	name = "ADEPT -> Seria zabójstw", 
	description = "Autorski plugin studioADEPT.net", 
	author = "Brum Brum", 
	version = "1.0", 
	url = "http://www.StudioADEPT.net"
};

public void OnPluginStart()
{
	HookEvent("player_death", Event_PlayerDeath);
	HookEvent("player_spawn", Event_PlayerSpawn);
}

public Action Event_PlayerDeath(Event event,const char[] name,bool dontBroadcast)
{
	int victim = GetClientOfUserId(event.GetInt("userid"));
	int attacker = GetClientOfUserId(event.GetInt("attacker"));
	
	if(IsValidClient(attacker) && IsValidClient(victim)){
		Kills[attacker]++;
		Kills[victim] = 0;
	}
}

public Action Event_PlayerSpawn(Event event,const char[] name,bool dontBroadcast)
{
	int client = GetClientOfUserId(event.GetInt("userid"));
	
	if(IsValidClient(client)) {
		CreateTimer(1.0, ShowKills, GetClientUserId(client), TIMER_REPEAT);
	}
}

public Action ShowKills(Handle timer, int userid)
{
	int client = GetClientOfUserId(userid);
	if (!IsValidClient(client) || !IsPlayerAlive(client))return Plugin_Stop;
	
	SetHudTextParams(0.35, 0.9, 0.9, 0, 255, 0, 255, 0, 10.0, 0.0, 0.0);
	ShowHudText(client, -1, "Seria zabójstw %d", Kills[client]);
	
	return Plugin_Continue;
}

public void OnClientPutInServer(int client){
	Kills[client] = 0;
}

public void OnClientDisconnect(int client){
	Kills[client] = 0;
}

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

Hehe (nie testowane, pisane na szybko)

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • Lubię to! 2
public Action Event_PlayerSpawn(Event event,const char[] name,bool dontBroadcast)
{
	int client = GetClientOfUserId(event.GetInt("userid"));
	
	if(IsValidClient(client)) {
		CreateTimer(1.0, ShowKills, GetClientUserId(client), TIMER_REPEAT);
	}
}

Dlaczego chcesz tworzyć timer co spawn gracza?

@edit @Brum Brumdobra, nevermind nie zauważyłem XD

Edytowane przez Bioły

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
4 minuty temu, Bioły napisał:

public Action Event_PlayerSpawn(Event event,const char[] name,bool dontBroadcast)
{
	int client = GetClientOfUserId(event.GetInt("userid"));
	
	if(IsValidClient(client)) {
		CreateTimer(1.0, ShowKills, GetClientUserId(client), TIMER_REPEAT);
	}
}

Dlaczego chcesz tworzyć timer co spawn gracza?

Gdy gracz umrze timer się wyłącza ?

Edytowane przez Brum Brum

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.


×
×
  • Dodaj nową pozycję...