Jump to content
  • Chmurka
  • Boróweczka
  • Jabłuszko
  • Limonka
  • Czekoladka
  • Węgielek
Sign in to follow this  
Mesharsky

[CSGO] Informacja po śmierci

Recommended Posts

Udostępniam wam półtora letnią wersję pluginu na info po śmieci.

Zrobię tutaj na złość panu @Roberrt i dam tutaj wersję tą którą dałem na pecetowicz kiedyś, czyli tą źle napisaną (w sensie nie optymalnie ? bo można to napisać 3 razy krócej XD, ale mi sie nie chce bo gram w lola i w overcooked2 ).

 

Opis:

 

Plugin wyświetla po śmierci następujące informacje: 

Kto cię zabił, z jakiej broni oraz ile zostało graczowi HP.

Dodatkowo jeżeli ktoś asystował przy zabójstwu to również taka informacja będzie miała miejsce ?

 

Instalacja:

 

Plik .sp do addons/sourcemod/scripting (opcjonalne)

Plik .smx do addons/sourcemod/plugins

 

KOD ŹRÓDŁOWY

 

Spoiler

/*	Copyright (C) 2018/2019 Mesharsky
	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.
	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.
	
	You should have received a copy of the GNU General Public License
	along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#pragma semicolon 1

#define PLUGIN_AUTHOR "Mesharsky"
#define PLUGIN_VERSION "0.1"

#include <sourcemod>
#include <sdktools>
#include <multicolors>
#include <cstrike>

#pragma newdecls required

StringMap fullWeaponName;

public Plugin myinfo = 
{
	name = "[CSGO] Informacja po zginięciu", 
	author = PLUGIN_AUTHOR, 
	description = "Informacje po zginięciu", 
	version = PLUGIN_VERSION, 
	url = "https://How2Kill.pl"
};

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

public Action Event_PlayerDeath(Event event, const char[] name, bool bDontBroadcast)
{
	char weapon[64];
	char fullName[16];
	
	int client = GetClientOfUserId(event.GetInt("userid"));
	int attacker = GetClientOfUserId(event.GetInt("attacker"));
	int asyster = GetClientOfUserId(event.GetInt("assister"));
	
	event.GetString("weapon", weapon, sizeof(weapon));
	
	if (!attacker)
		return;
	
	if (attacker == client)
		return;
	
	if (!IsValidClient(attacker))
		return;
	
	if (GameRules_GetProp("m_bWarmupPeriod") == 1)
		return;
	
	// Sorry for that ugly ass code.
	fullWeaponName = CreateTrie();
	
	fullWeaponName.SetString("sawedoff", "Obrzyn (Sawed-Off)");
	fullWeaponName.SetString("mag7", "Mag-7");
	fullWeaponName.SetString("nova", "Nova");
	fullWeaponName.SetString("xm1014", "XM1014");
	fullWeaponName.SetString("mp7", "MP7");
	fullWeaponName.SetString("mp9", "MP9");
	fullWeaponName.SetString("ssg08", "SSG 08 (Scout)");
	fullWeaponName.SetString("awp", "AWP");
	fullWeaponName.SetString("famas", "FAMAS");
	fullWeaponName.SetString("ump45", "UMP-45");
	fullWeaponName.SetString("bizon", "PP-Bizon");
	fullWeaponName.SetString("mac10", "Mac-10");
	fullWeaponName.SetString("galilar", "Galil AR");
	fullWeaponName.SetString("p90", "P90");
	fullWeaponName.SetString("ak47", "AK-47");
	fullWeaponName.SetString("m4a1_silencer", "M4A1-S");
	fullWeaponName.SetString("m4a1_silencer_off", "M4A1-S");
	fullWeaponName.SetString("m4a1", "M4A4");
	fullWeaponName.SetString("sg556", "SG 553");
	fullWeaponName.SetString("aug", "AUG");
	fullWeaponName.SetString("m249", "M249");
	fullWeaponName.SetString("negev", "Negev");
	fullWeaponName.SetString("scar20", "Scar-20");
	fullWeaponName.SetString("g3sg1", "G3SG1");
	
	fullWeaponName.SetString("cz75a", "CZ-75");
	fullWeaponName.SetString("usp_silencer", "USP-S");
	fullWeaponName.SetString("usp_silencer_off", "USP-S");
	fullWeaponName.SetString("deagle", "Deagle");
	fullWeaponName.SetString("revolver", "Revolver");
	fullWeaponName.SetString("glock", "Glock");
	fullWeaponName.SetString("p250", "P250");
	fullWeaponName.SetString("hkp2000", "P2000");
	fullWeaponName.SetString("tec9", "TEC-9");
	fullWeaponName.SetString("fiveseven", "FiveSeven");
	fullWeaponName.SetString("elite", "Dwie Berrety");
	
	if (!fullWeaponName.GetString(weapon, fullName, sizeof(fullName)))
	{
		Format(fullName, sizeof(fullName), weapon);
	}
	
	CPrintToChat(client, "★ {lightred}[Death_Info]{yellow} Gracz {lightred}%N {yellow}zabił cię z broni: {green}%s", attacker, fullName);
	CPrintToChat(client, "★ {lightred}[Death_Info]{yellow} Zostało mu: {green}%dHP", GetClientHealth(attacker));
	if (asyster)
	{
		CPrintToChat(client, "★ {lightred}[Death_Info]{yellow} Przy zabójstwie asystował: {green}%N", asyster);
	}
}

bool IsValidClient(int client)
{
	if (client <= 0 || client > MaxClients) {
		return false;
	}
	
	if (!IsClientInGame(client)) {
		return false;
	}
	
	if (IsFakeClient(client)) {
		return false;
	}
	
	return true;
} 

 

 

 

H2K_InformacjaPoZginieciu.sp
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

H2K_InformacjaPoZginieciu.smx
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

  • Lubię to! 2
  • Haha! 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

Nasza historia

Na początku byliśmy małą grupą internetowych znajomych, którzy stwierdzili, że potrzebne jest solidne forum, na którym znajdą się ludzie z dużą wiedzą programistyczną ukierunkowaną na CS:GO. Pomysł powstał na początku 2018 roku, a parę miesięcy później, 19 kwietnia, powstała ta strona internetowa. Jako alternatywna odpowiedź na inne tego typu miejsca, poważnie podeszliśmy do tematu, najpierw tłumacząc angielską dokumentację SourceMod'a na język polski, a potem pisząc rozległe poradniki i wypełniając forum najpotrzebniejszymi rzeczami dla właścicieli serwerów i programistów. Cała nasza Ekipa jest dumna z pracy jaką w to włożyliśmy i cieszymy się że zbierają się wokół nas zarówno ludzie znający tematy sourcepawn'a i konfiguracji, jak i również nowe twarze w tym "biznesie", którym z chęcią niesiemy wiedzę oraz pomoc w rozwiązywaniu problemów.

Największe modyfikacje serwerowe

×
×
  • Create New...