Witam,
pytanie z cyklu: "autor to ***** i nie może sobie poradzić"
if(buttons & IN_RELOAD && !(buttons & IN_ATTACK))
Jak to zastąpić jednym sprawdzeniem?
Gdyby nie negacja użyłbym sumy bitowej...
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.
|
Najlepsza odpowiedź GwynBleidD , 21.06.2015 14:02
if(buttons & (IN_RELOAD|~IN_ATTACK))
IN_RELOAD = 0b00000001 IN_ATTACK = 0b00000010 // dalej: ~IN_ATTACK = 0b11111101 IN_RELOAD|~IN_ATTACK = 0b11111101 // czyli dokładnie to samo, co samo ~IN_ATTACK!Wynik? Sprawdzimy czy jest wciśnięty jakikolwiek przycisk prócz IN_ATTACK, więc jeśli wciśniemy np stzałkę w przud, use, reload, cokolwiek innego... Również gdy razem z tymi przyciskami wciśniemy IN_ATTACK!
IN_RELOAD | IN_ATTACK = 0b00000011 IN_RELOAD & ~IN_ATTACK = 0b00000001 if (buttons & (IN_RELOAD | IN_ATTACK) == (IN_RELOAD & ~IN_ATTACK))Wynik? Najpierw wygaszamy wszystkie bity które nie dotyczą naszych 2ch przycisków, czyli dostajemy 4 możliwe kombinacje:
Napisano 20.06.2015 17:47
Witam,
pytanie z cyklu: "autor to ***** i nie może sobie poradzić"
if(buttons & IN_RELOAD && !(buttons & IN_ATTACK))
Jak to zastąpić jednym sprawdzeniem?
Gdyby nie negacja użyłbym sumy bitowej...
Napisano 20.06.2015 19:23
Ale po co skoro masz już warunek
Napisano 20.06.2015 19:27
Pytam z ciekawości, próbuję zrobić coś czego nie potrafię, a chcę umieć...
jak zrobić żeby było
if(buttons & (IN_RELOAD [...] IN_ATTACK)) //zeby to zsumowac i bylo jako jedno
No wiesz o co chodzi
Napisano 20.06.2015 19:57
if(buttons & (IN_RELOAD|IN_ATTACK))
Napisano 20.06.2015 20:51
Napisano 20.06.2015 21:52
if(buttons & (IN_RELOAD|~IN_ATTACK))
Napisano 21.06.2015 14:02 Najlepsza odpowiedź
if(buttons & (IN_RELOAD|~IN_ATTACK))
IN_RELOAD = 0b00000001 IN_ATTACK = 0b00000010 // dalej: ~IN_ATTACK = 0b11111101 IN_RELOAD|~IN_ATTACK = 0b11111101 // czyli dokładnie to samo, co samo ~IN_ATTACK!Wynik? Sprawdzimy czy jest wciśnięty jakikolwiek przycisk prócz IN_ATTACK, więc jeśli wciśniemy np stzałkę w przud, use, reload, cokolwiek innego... Również gdy razem z tymi przyciskami wciśniemy IN_ATTACK!
IN_RELOAD | IN_ATTACK = 0b00000011 IN_RELOAD & ~IN_ATTACK = 0b00000001 if (buttons & (IN_RELOAD | IN_ATTACK) == (IN_RELOAD & ~IN_ATTACK))Wynik? Najpierw wygaszamy wszystkie bity które nie dotyczą naszych 2ch przycisków, czyli dostajemy 4 możliwe kombinacje:
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
Napisano 21.06.2015 15:01
0 użytkowników, 0 gości, 0 anonimowych