Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

DMG z rakiety


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
8 odpowiedzi w tym temacie

#1 Avexis

    Pomocny

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:55
  • Lokalizacja:Polska
Offline

Napisano 12.07.2014 16:21

Czy dmg z rakiety można zablokować jeśli obrońcą jest gracz X, albo po prostu osobą z CT?

Rakiety z pluginu jetpack http://amxx.pl/topic/1311-jetpack/

 

  • +
  • -
  • 0

#2 PoDwOJ

    Pomocny

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:asddasdasda
Offline

Napisano 14.07.2014 19:40

Chodzi ci o to aby TT nie moglo zabijac tt a CT zabijac CT ?



#3 Avexis

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:55
  • Lokalizacja:Polska
Offline

Napisano 16.07.2014 20:13

Żeby TT nie mogło zabijać CT.

Tylko tyle, ale na rakiety jak wiadomo nie podziała godmode.


  • +
  • -
  • 0

#4 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 17.07.2014 08:58

Pobierz classname bytu w Ham_Takedamage i zwróć SUPERCEDE


  • +
  • -
  • 0

#5 Drago36

    Profesjonalista - if you know what i mean

  • Power User

Reputacja: 561
Wszechwiedzący

  • Postów:707
  • GG:
  • Imię:Mów mi D.ave
  • Lokalizacja:Polska
Offline

Napisano 17.07.2014 18:19

Dodatkowy moduł nie jest potrzebny. Wystarczy dodać warunek, czy ofiara znajduje się w drużynie TT, a gdy będzie w innej to dalsza czynność (czyli zadanie obrażeń) się nie wykona.

 

Wszystko trzeba ustawić w stocku jp_radius_damage(entity), gdyż dopiero tam jest wyciągane id ofiary.

 


  • +
  • -
  • 1

#6 PoDwOJ

    Pomocny

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:asddasdasda
Offline

Napisano 17.07.2014 18:21

Tiback myślisz ,że on wie co mu piszesz? napisz mu co dokładnie zrobić i zmienić ma.

 

Drago czy tu chodzi o to ? 

 

if(!is_user_connected(i) || !is_user_alive(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;

Użytkownik PoDwOJ edytował ten post 17.07.2014 18:24


#7 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 17.07.2014 18:36

stock jp_radius_damage(entity)
{
	new id = entity_get_edict(entity, EV_ENT_owner)
	for(new i = 1; i < 33; i++)
	{
		if(is_user_alive(i) && get_user_team(i) != 2) //sprawdzam czy ofiara jest zywy i czy NIE jest w CT
		{
			new dist = floatround(entity_range(entity, i))
			
			if(dist <= get_cvar_num("jp_damage_radius"))
			{
				new hp = get_user_health(i)
				new Float:damage = get_cvar_float("jp_rocket_damage")-(get_cvar_float("jp_rocket_damage")/get_cvar_float("jp_damage_radius"))*float(dist)
				
				new Origin[3]
				get_user_origin(i, Origin)
				
				if(!get_cvar_num("mp_friendlyfire"))
				{
					if(get_user_team(id) != get_user_team(i))
					{
						if(hp > damage)
							jp_take_damage(i, floatround(damage), Origin, DMG_BLAST)
						else
							log_kill(id, i, "Jetpack Rocket", 0)
					}
				}
				else
				{
					if(hp > damage)
						jp_take_damage(i, floatround(damage), Origin, DMG_BLAST)
					else
						log_kill(id, i, "Jetpack Rocket", 0)
				}
			}
		}
	}
}

http://amxx.pl/dokum...5/get-user-team

Tam masz rozpisane teamy. Zablokowałem obrażenia dla CT

 

 

@Drago

Awansik widzę xD. Ja myślałem że te dmg z rakiety to w CoD. Stąd pomysł pobierania classname.


  • +
  • -
  • 2

#8 Drago36

    Profesjonalista - if you know what i mean

  • Power User

Reputacja: 561
Wszechwiedzący

  • Postów:707
  • GG:
  • Imię:Mów mi D.ave
  • Lokalizacja:Polska
Offline

Napisano 17.07.2014 20:49


Drago czy tu chodzi o to ?


if(!is_user_connected(i) || !is_user_alive(i) || cs_get_user_team(i) != CS_TEAM_CT)
continue;

Tak coś w ten deseń.

Warunek nie do końca pasująca do zamierzonego celu.

Twój kod spowoduje, że ofiarami mogą być tylko gracze z CT(a miało być przeciwnie), powinno być cs_get_user_team(i) == CS_TEAM_CT.


  • +
  • -
  • 0

#9 Avexis

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:55
  • Lokalizacja:Polska
Offline

Napisano 18.07.2014 11:18

Drago i Tiback +

Podwoj po pierwszej wypowiedzi Drago już wiedziałem co zrobić, laikiem nie jestem. Dziękuję :)


  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych