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

[ROZWIĄZANE] Kod sprawdzający pozycję - nie działa?


  • Zamknięty Temat jest zamknięty
2 odpowiedzi w tym temacie

#1 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 05.11.2011 10:55

Mam taki kod
stock bool:is_hull_vacant(const Float:origin[3]) {
new tr;
engfunc(EngFunc_TraceHull, origin, origin, 0, HULL_HUMAN, 0, tr);
if(!get_tr2(tr, TR_StartSolid) && !get_tr2(tr, TR_AllSolid) && get_tr2(tr, TR_InOpen))
return true;

return false;
}

Jest on brany z diablo i w samym diablo niby działa, choć raz też miałem z tym problem tak jak teraz, ale zastąpiłem go trochę podobnym kodem, tutaj niestety już tego wykorzystać nie mogę. Robię coś takiego przy śmierci gracza
new Float:fOrgin[3];
entity_get_vector(ofiara, EV_VEC_origin, fOrgin);
fOrgin[2] += 15.0;

if(is_hull_vacant(fOrgin)) {
// kod
}

I ten warunek nigdy nie chce się spełnić, co jest tutaj źle?

Wykorzystałem nawet kod z prezentów, co napisał r3x, czyli
stock bool:is_hull_vacant(const Float:origin[3], hull, id = 0) {
static tr
engfunc(EngFunc_TraceHull, origin, origin, 0, hull, id, tr)
if (!get_tr2(tr, TR_StartSolid) || !get_tr2(tr, TR_AllSolid)) //get_tr2(tr, TR_InOpen))
return true

return false
}

i też warunek nigdy się nie spełnia :o
sebul (05.11.2011 12:05):
Dobra, poradziłem sobie, dałem to sprawdzanie w innym miejscu i o dziwo działa dobrze...

  • +
  • -
  • 0

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


#2 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 05.11.2011 12:06

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

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


#3 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

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

Napisano 05.11.2011 12:08

bo to nie ma szans się spełnić wysokość gracza to 72 u przy kucaniu 36 u , gdy gracz ginie to nie jest gdzieś zablokowany (w sensie wbity w ścianę nie jest , coś takiego zdarza się w wyjątkowych sytuacjach gdy za pomocą amxx'a przeniesiemy gracza ) a przesuniecie o 15 w gore nic nie da gdyż tak jak mówiłem wysokość gracza to minimalnie 36 u więc punkt przesunięty o 15 u w górę zawiera się przestrzeni gracza gdy zajmował za nim zginął więc nie jest on "wolny"
trochę zamotałem ale wiadomo o co chodzi :)
sebul (05.11.2011 12:23):
To może napiszę do czego chciałem to wykorzystać.
Chciałem sprawdzić w danym miejscu (tam gdzie gracz zginął), czy jest wystarczająco miejsca na to by gracz mógł się tam odrodzić.

  • +
  • -
  • 0




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

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