Skocz do zawartości
Szukaj w
  • Więcej opcji...
Znajdź wyniki, które zawierają...
Szukaj wyników w...

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

Śmierć przez podpalenie


SUPER TIMOR
 Udostępnij

Rekomendowane odpowiedzi

Cześć,

Na COD'zie mam taką klasę, która podpala gracza.

Jeżeli dany gracz zginie od podpalenia, to traktowane jest to jako dmg od world, więc kill nie jest gracza, który podpalił daną jednostkę a idzie sobie w powietrze. Jest jakaś opcja, żeby to skorygować?

Mowa o CS:GO.

 

2a.png


brand-logo.png

Z kodem rabatowym "TIMOR" zyskasz 10% rabatu na wszystkie usługi przez pierwszy miesiąc!

Odnośnik do komentarza
Udostępnij na innych stronach

Ja się domyśliłem o co chodzi, cod i klasa raczej nie jest tu potrzebna. Wystarczy kod lub opis metody jak coś takiego ogarnąć.

 

W evencie śmierci attackerem jest zapewne world (0). Musisz zapisać sobie w jakiejś zmiennej kto dokonał podpalenia i jeśli podpalony gracz zginie od attackera==0 i będzie w  tym czasie podpalony, to zmieniasz attackera w evencie na zapisany ID gracza. Prościzna :)

 

Jedyny problem, to jeśli gracz zginie w czasie podpalenia od upadku, pułapki, czy czegokolwiek innego, co nie jest strzałem gracza, to zostanie to zaliczone jako śmierć od gracza, który go podpalił. Można temu zaradzić, pozyskując typ obrażeń, które otrzymał gracz, ale myślę, że nie jest to gra warta świeczki.

sklepcs (1).png
sklepcs.pl - sklep automatyczny cs:go z wieloma metodami płatności [psc, paypal, skiny, sms, przelew, blik, kod]

logo200.gif
csgotokens.com - tokeny na serwery CS:GO.

gobosting.png
goboosting.pl
- graj i zarabiaj skiny!
Odnośnik do komentarza
Udostępnij na innych stronach

tym czasie podpalony, to zmieniasz attackera w evencie na zapisany ID gracza

Zmieniać to raczej nie do końca dobre słowo, event jest stworzony już po zdarzeniu, więc nie zadziała attacker = noweid oraz return Plugin_Changed;

Trzeba wyłączyć wyświetlanie tego eventu, a następnie utworzyć "fake-event" z nowymi danymi.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie testowałem, ale ponoć jeśli się Pre-Hookuje, to można zmieniać w locie.

 

https://wiki.alliedmods.net/Events_(SourceMod_Scripting)

 

 

Rewriting Events

Rewriting events is just as easy -- events can be modified in pre hooks. For example, say we want to remove headshots from all events:

public void OnPluginStart()
{
	HookEvent("player_death", Event_PlayerDeath, EventHookMode_Pre);
}
 
public Action Event_PlayerDeath(Event event, const char[] name, bool dontBroadcast)
{
	event.SetBool("headshot", false);
	return Plugin_Continue;
}

 

 

Oczywiście, jeśli tak nie zadziała, to Twój sposób, na 100% będzie skuteczny:)

Edytowane przez live4net

sklepcs (1).png
sklepcs.pl - sklep automatyczny cs:go z wieloma metodami płatności [psc, paypal, skiny, sms, przelew, blik, kod]

logo200.gif
csgotokens.com - tokeny na serwery CS:GO.

gobosting.png
goboosting.pl
- graj i zarabiaj skiny!
Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć 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ć grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie
 Udostępnij

×
×
  • Dodaj nową pozycję...