Jest może funkcja która sprawdza odległość gracza od bs'a lub hostów ? Chciałem użyć tego aby łowcy nie stawiali pułapek w tych miejscach, a może jakoś inaczej da się to rozwiązać ?
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.
|
Guest Message by DevFuse
funkcja
Temat rozp. DB, 16.06.2009 18:56
2 odpowiedzi w tym temacie
#1
Napisano 16.06.2009 18:56
#2
Napisano 16.06.2009 20:39
Nie można po prostu wziąć 2 byty i obliczyć odległość między nimi, bo np. func_bomb_target 'odstaje' od miejsca położenia - odległość jest liczona od +- środka bryły, a odległość do najbliższej krawędzi jest inna (mniejsza, o ile nie stoisz wewnątrz). Stąd tyle zachodu z szukaniem w sferze
gImportantEnts - przechowuje id bytów, od których pułapki muszą zachować odległość. Jest to lepsze niż pobieranie klasy i sprawdzanie czy jest na liście - porównanie liczb jest łatwiejsze dla komputera niż porównanie tekstów,
giPointer - przechowuje indeks następnego elementu tablicy == ilość zajętych komórek,
gszImportantClass - zawiera stałą dla kompilacji listę klas, których byty mają zostać dodane do listy, możesz coś dodać np. któryś z listy: func_vip_safetyzone, func_escapezone, func_hostage_rescue, info_hostage_rescue
Do testów użyj komendy -
W razie problemów mogę pomóc w implementacji tego w DM
gImportantEnts - przechowuje id bytów, od których pułapki muszą zachować odległość. Jest to lepsze niż pobieranie klasy i sprawdzanie czy jest na liście - porównanie liczb jest łatwiejsze dla komputera niż porównanie tekstów,
giPointer - przechowuje indeks następnego elementu tablicy == ilość zajętych komórek,
gszImportantClass - zawiera stałą dla kompilacji listę klas, których byty mają zostać dodane do listy, możesz coś dodać np. któryś z listy: func_vip_safetyzone, func_escapezone, func_hostage_rescue, info_hostage_rescue
#define MAX_ENTS 20- tyle bytów zmieści się w tablicy, żadna znana mi standardowa mapa nie ma łącznie nawet 10 BombSite`ów+Hostów, więc powinno wystarczyć,
- cvar, nazwę możesz zmienić - korzystam ze 'wskaźnika'; w takiej odległości od gracza szukam tych bytów.diablo_min_distance 100
Do testów użyj komendy -
pulapka
//
bind p pulapka
W razie problemów mogę pomóc w implementacji tego w DM
Załączone pliki
#3
Napisano 16.06.2009 21:25
podziękował serdecznie
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych