
Witam, mała modyfikacja ale na pewno komuś się przyda. Modyfikacja dodaje graczu, który zginął informacje o tym kto go zabił, jaką klasę posiadał oraz ile mu pozostało HP
1.
(Dokumentacja http://amxx.pl/dokum...37/client_print)
2.
(Dokumentacja http://amxx.pl/dokum...a/i11/colorchat)
A teraz jak to wykonać? Szukamy w kodzie
public SmiercGraczaPost(id, attacker, shouldgib)
pod warunkiem
if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
{
new doswiadczenie_za_zabojstwo = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
new nowe_doswiadczenie = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
if(poziom_gracza[id] > poziom_gracza[attacker])
nowe_doswiadczenie += (poziom_gracza[id]-poziom_gracza[attacker])*(doswiadczenie_za_zabojstwo/10);
if(!perk_gracza[attacker])
UstawPerk(attacker, -1, -1, 1);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
}
dodajemy
Wersja 1:
else if(klasa_gracza[id] && id != attacker) //id != attacker żeby nie pokazywało gdy sami się zabijemy
{
new szName[64];
get_user_name(attacker, szName, sizeof szName - 1)
client_print(id, print_chat, "Zostales zabity przez gracza %s [%s - %d], ktoremu zostalo %d HP", szName, nazwy_klas[klasa_gracza[attacker]], poziom_gracza[attacker], get_user_health(attacker));
}
Wersja 2 (pamiętaj o dodaniu biblioteki "#include <colorchat>"):
else if(klasa_gracza[id] && id != attacker) //id != attacker żeby nie pokazywało gdy sami się zabijemy
{
new szName[64];
get_user_name(attacker, szName, sizeof szName - 1)
ColorChat(id, GREEN, "Zostales zabity przez gracza^x03 %s^x04 [%s - %d], ktoremu zostalo^x03 %d^x04 HP", szName, nazwy_klas[klasa_gracza[attacker]], poziom_gracza[attacker], get_user_health(attacker));
}
całość powinna wyglądać tak
Wersja 1:
public SmiercGraczaPost(id, attacker, shouldgib)
{
if(!is_user_connected(attacker))
return HAM_IGNORED;
if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
{
new doswiadczenie_za_zabojstwo = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
new nowe_doswiadczenie = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
if(poziom_gracza[id] > poziom_gracza[attacker])
nowe_doswiadczenie += (poziom_gracza[id]-poziom_gracza[attacker])*(doswiadczenie_za_zabojstwo/10);
if(!perk_gracza[attacker])
UstawPerk(attacker, -1, -1, 1);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
}
else if(klasa_gracza[id] && id != attacker) //id != attacker żeby nie pokazywało gdy sami się zabijemy
{
new szName[64];
get_user_name(attacker, szName, sizeof szName - 1)
client_print(id, print_chat, "Zostales zabity przez gracza %s [%s - %d], ktoremu zostalo %d HP", szName, nazwy_klas[klasa_gracza[attacker]], poziom_gracza[attacker], get_user_health(attacker));
}
SprawdzPoziom(attacker);
return HAM_IGNORED;
}
Wersja 2:
public SmiercGraczaPost(id, attacker, shouldgib)
{
if(!is_user_connected(attacker))
return HAM_IGNORED;
if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
{
new doswiadczenie_za_zabojstwo = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
new nowe_doswiadczenie = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
if(poziom_gracza[id] > poziom_gracza[attacker])
nowe_doswiadczenie += (poziom_gracza[id]-poziom_gracza[attacker])*(doswiadczenie_za_zabojstwo/10);
if(!perk_gracza[attacker])
UstawPerk(attacker, -1, -1, 1);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
}
else if(klasa_gracza[id] && id != attacker) //id != attacker żeby nie pokazywało gdy sami się zabijemy
{
new szName[64];
get_user_name(attacker, szName, sizeof szName - 1)
ColorChat(id, GREEN, "Zostales zabity przez gracza^x03 %s^x04 [%s - %d], ktoremu zostalo^x03 %d^x04 HP", szName, nazwy_klas[klasa_gracza[attacker]], poziom_gracza[attacker], get_user_health(attacker));
}
SprawdzPoziom(attacker);
return HAM_IGNORED;
}
Gotowe, myślę że komuś się przyda.
Pozdrawiam


Dodatki SourceMod














