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

Działania na graczach z drużyny


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

#1 fexus

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:87
  • Lokalizacja:a
Offline

Napisano 14.07.2012 22:03

Jako, że mój temat w dziale diablo został zlany piszę tutaj. Więc, jak napisać kod by po użyciu mocy, działała ona na graczy w drużynie:
a) jeżeli są w danej odległości od gracza.
B) działa nie ważne gdzie kto jest.
I czy wystarczy ten kod a potem (przykładowo) funkcja[id] = 1 i wszystkim graczom ustawi funkcja[id] na wartość 1 ?
  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 14.07.2012 23:59

Możesz za pomocą funkcji get_distance_f pobrać odległość pomiędzy graczem, który użyje mocy a graczami z drużyny i jeśli <= max_distance, to wykonać kod na graczach.
Jeśli na wszystkich, to wystarczy proste
new iPlayers[32], iNum;
get_players(iPlayers, iNum, "ahe", get_user_team(id) == 2 ? "TERRORIST" : "CT");
for(new i = 0; i < iNum; i++){
iPlayer = iPlayers[i];

}
Aby pobrać odległość, możesz użyć np. takiego kodu:

new iPlayers[32], iNum,  iPlayer, Float:flDist, Float:fOrigin[2][3];
get_players(iPlayers, iNum, "ahe", get_user_team(id) == 2 ? "TERRORIST" : "CT");
for(new i = 0; i < iNum; i++){
iPlayer = iPlayers[i];

pev(iPlayer, pev_origin, fOrigin[0]);
pev(id, pev_origin, fOrigin[1]);

flDist = get_distance_f(fOrigin[0], fOrigin[1]);

if(flDist <= MAX_DISTANCE){
// wykonaj kod na graczu
}
}


#3 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 15.07.2012 00:07

Jeśli chodzi o działania na graczach w pobliżu jakiegoś miejsca, to find_sphere_class jest dobrym rozwiązaniem.
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#4 fexus

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:87
  • Lokalizacja:a
Offline

Napisano 16.07.2012 15:08

Mam kolejne pytanie związane z graczami w odległości. Czy da się zrobić, aby w okół klasy były "fale" jak są w totemie. Lecz niewidoczne dla przeciwnej drużyny? I nadal niezbyt rozumiem sposobów działania w określonym miejscu od Bienia, czyli gdzie wpisuję wartość w której ma szukać graczy. Czy lepszym sposobem będzie użycie find_sphere_class ?
  • +
  • -
  • 0

#5 Droso

    Dawniej HubertTM

  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 16.07.2012 15:18

MAX_DISTANCE - tutaj wartosc

Czy lepszym sposobem będzie użycie find_sphere_class ?

Ja używam find_sphere_class wybierz ;)
  • +
  • -
  • 0

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#6 fexus

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:87
  • Lokalizacja:a
Offline

Napisano 16.07.2012 22:25

A co z tą "falą" ? Da radę czy niezbyt ?
  • +
  • -
  • 0

#7 fexus

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:87
  • Lokalizacja:a
Offline

Napisano 18.07.2012 19:22

ref..
  • +
  • -
  • 0




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

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