←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Szukam funkcji, GDY zostałeś zabity, gdy z...

  • +
  • -
Yas - zdjęcie Yas 13.08.2012

Szukam 2 funkcji, a mianowicie

- Gdy zostałeś zabity
- Gdy zabiłeś
Odpowiedz

  • +
  • -
Raen - zdjęcie Raen 13.08.2012

chodzi ci o DeathMsg ?
jeśli tak to tutaj masz:
http://amxx.pl/topic/1680-eventy/
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 13.08.2012

register_event("DeathMsg", "DeathMsg", "a");
public DeathMsg(){
	new killer=read_data(1); // Zabójca
	new victim=read_data(2); // Ofiara
}
Odpowiedz

  • +
  • -
ogieR8 - zdjęcie ogieR8 13.08.2012

speedkill Ci dobrze napisał, a z przykładem to np..


register_event("DeathMsg", "DeathMsg", "a");
public DeathMsg(id) {
new killer = read_data(1) // ten ktory zabil
new victim = read_data(2) // ten ktory zginal
new hs = read_data(3) // ten ktory zabil HS'em

if(is_user_connected(killer) && is_user_connected(victim) && get_user_team(killer) != get_user_team(victim)) { // sprawdza czy oboje są połączeni, oraz czy nie zabiles gracza z tego samego team'u
cs_get_user_money(victim) < 15701 ? cs_set_user_money(killer, cs_get_user_money(killer)+300) : cs_set_user_money(killer, 16000)
cs_get_user_money(victim) > 149 ? cs_set_user_money(victim, cs_get_user_money(victim)-150) : cs_set_user_money(victim, 0)
// 1 linia : daje zabójcy 300 dolarow, jesli ma np 15800 to ustawi mu na 16000 (gdyz wiecej teoretycznie miec nie mozna)
// 2 linia : odbiera ofierze 150$, ale jesli tylu nie ma to ustawia mu na 0 (gdyz ujemnej liczby teoretycznie miec nie mozna)
}
}
Odpowiedz

  • +
  • -
radim - zdjęcie radim 13.08.2012

Bądź kanapka
RegisterHam(Ham_Killed, "player", "fw_player_killed")
Bądź csx, http://amxx.pl/dokum...04/client_death
Użytkownik radim edytował ten post 13.08.2012 13:08
Odpowiedz

  • +
  • -
ogieR8 - zdjęcie ogieR8 13.08.2012

Średnio pomocne w tej sprawie, ale chociaż na podstawie mojego przykładu z postu wstecz i tego poradnika (http://amxx.pl/topic...e-na-obrazenia/) będziesz wiedział jak to ugryźć za pomocą kanapki.
Odpowiedz

  • +
  • -
Yas - zdjęcie Yas 13.08.2012

Dzięki;>
Odpowiedz

Gość_21977_* 13.08.2012

speedkill Ci dobrze napisał, a z przykładem to np..


register_event("DeathMsg", "DeathMsg", "a");
public DeathMsg(id) {
new killer = read_data(1) // ten ktory zabil
new victim = read_data(2) // ten ktory zginal
new hs = read_data(3) // ten ktory zabil HS'em

if(is_user_connected(killer) && is_user_connected(victim) && get_user_team(killer) != get_user_team(victim)) { // sprawdza czy oboje są połączeni, oraz czy nie zabiles gracza z tego samego team'u
cs_get_user_money(victim) < 15701 ? cs_set_user_money(killer, cs_get_user_money(killer)+300) : cs_set_user_money(killer, 16000)
cs_get_user_money(victim) > 149 ? cs_set_user_money(victim, cs_get_user_money(victim)-150) : cs_set_user_money(victim, 0)
// 1 linia : daje zabójcy 300 dolarow, jesli ma np 15800 to ustawi mu na 16000 (gdyz wiecej teoretycznie miec nie mozna)
// 2 linia : odbiera ofierze 150$, ale jesli tylu nie ma to ustawia mu na 0 (gdyz ujemnej liczby teoretycznie miec nie mozna)
}
}

cs_get_user_money(victim) < 15701
Powinno być killer, taka drobna pomyłka.

BTW. Limit 1600$ jest na twardo ustalony przez grę (hardcoded), lecz istnieje możliwość obejścia tych limitów,
np. instalując plugin Server Cvars Unlocker, który pozwala na zmianę limitu pieniędzy
z 16000 na 2147483583, choć na HUDzie widoczne może być co najwyżej 999999$.
Odpowiedz