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

[Pytanie] Szukanie bytu odleglosc od bytu


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

#1 Albertd

    Zaawansowany

  • Użytkownik

Reputacja: 34
Życzliwy

  • Postów:138
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 16.02.2012 22:35

Czesc mam pytanie dotyczace modulu Engine a dokladnie chodzi mi o znalezenie bytu w odleglosci od innego bytu wyszukany byt zostanie uruchomiony ;d Jakos tak ;P napisalem co lecz crash serwera kiedy wlacze. Moj kod wyglada tak:

public Otwieranie_Cel()
{
new ent
new Float:origin[3]
new info[32]
static const odleglosc = 200
ent = -1
while((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", "info_player_deathmatch")))
{
pev(ent, pev_origin, origin)
while((ent = engfunc(EngFunc_FindEntityInSphere, ent, origin, odleglosc)))
{
if(!is_valid_ent(ent))
continue

entity_get_string(ent, EV_SZ_classname, info, charsmax(info))
if(!equal(info, "func_door"))
continue
}
}
}

Chodzi tutaj o uruchomienie drzwi znajdujacych sie w odleglosci 200 od bytu info_player_deathmatch. xD
Lecz nie dziala wiec proszę was o pomoc ,mi sie skonczyly pomysly;p
Z
gory dziekuje oraz pozdrawiam.
  • +
  • -
  • 0

#2 Albertd

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 34
Życzliwy

  • Postów:138
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 18.02.2012 15:48

Odswiezam ;)
  • +
  • -
  • 0

#3 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 19.02.2012 18:00

Potrzebujesz dwóch zmiennych na id enta oraz force_use na znalezionym bycie
public Otwieranie_Cel()
{
	new ent, ent2
	new Float:origin[3]
	new info[32]
	static const odleglosc = 200
	ent = -1
	while((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", "info_player_deathmatch")))
	{
		pev(ent, pev_origin, origin)
		while((ent2 = engfunc(EngFunc_FindEntityInSphere, ent, origin, odleglosc)))
		{
			
			if(!is_valid_ent(ent2))
				continue
			
			entity_get_string(ent2, EV_SZ_classname, info, charsmax(info))
			if(!equal(info, "func_door"))
				continue
				
			force_use(ent2, 0);
		}
	}
}

  • +
  • -
  • 0

#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 19.02.2012 18:03

mały błąd
(ent2 = engfunc(EngFunc_FindEntityInSphere, ent, origin, odleglosc))
na
(ent2 = engfunc(EngFunc_FindEntityInSphere, ent2, origin, odleglosc))
  • +
  • -
  • 0

#5 Albertd

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 34
Życzliwy

  • Postów:138
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 23.02.2012 22:46

Przepraszam ze tak pozno.
Teraz to sprawdzilem lecz nie dziala. :D
  • +
  • -
  • 0




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

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