Działania na graczach z drużyny
fexus
14.07.2012
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.
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 ?
a) jeżeli są w danej odległości od gracza.

I czy wystarczy ten kod a potem (przykładowo) funkcja[id] = 1 i wszystkim graczom ustawi funkcja[id] na wartość 1 ?
Gość_21977_* 14.07.2012
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

Jeśli na wszystkich, to wystarczy proste
new iPlayers[32], iNum;Aby pobrać odległość, możesz użyć np. takiego kodu:
get_players(iPlayers, iNum, "ahe", get_user_team(id) == 2 ? "TERRORIST" : "CT");
for(new i = 0; i < iNum; i++){
iPlayer = iPlayers[i];
}
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
}
}
sebul
15.07.2012
Jeśli chodzi o działania na graczach w pobliżu jakiegoś miejsca, to find_sphere_class
jest dobrym rozwiązaniem.

fexus
16.07.2012
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 ?
Droso
16.07.2012
MAX_DISTANCE - tutaj wartosc
Ja używam find_sphere_class wybierzCzy lepszym sposobem będzie użycie find_sphere_class ?
