Mam pytanie , odnośnie jak zrobić , że np. w TT jest 10 osób i 2 z nich może ze sobą walczyć a reszta nie może nikogo bić i wogóle.
Jaka jest to funkcja w kodzie
Z góry dzięki.
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.
|
Napisano 02.11.2014 16:27
Mam pytanie , odnośnie jak zrobić , że np. w TT jest 10 osób i 2 z nich może ze sobą walczyć a reszta nie może nikogo bić i wogóle.
Jaka jest to funkcja w kodzie
Z góry dzięki.
Zapraszam na Najlepsze Serwery
EliteBaseBuilder+Exp | Max 100 LvL | Grupy | Nowy Silnik v7.5 | Nowe Klasy Zombie | Bronie od LvL'a | IP: 79.133.192.40:27063 |
EliteJailBreak | Gangi bez UM | Sklep za Fajki | Ruletka | Dużo Adminów | I wiele wiele więcej! | IP: 80.72.41.98:27032 |
Napisano 02.11.2014 16:40
Używasz Ham_takedamage i pobierasz ID dwóch osób, które mają ze sobą walczyć.
"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.
Napisano 03.11.2014 02:52
reszte blokujesz.
Precyzując:
new plr1,plr2//gracze mogący zadawać/odbierać obrażenia public pligin_init() { RegisterHam(Ham_TakeDamage, "player", "TakeDamage",1); } public TakeDamage(victim,inflictor,attacker) { if(!is_user_alive(attacker))//upewniamy się czy obrażenia powoduje gracz, jeśli nie to kończymy działanie funkcji return HAM_IGNORED if(victim==plr1 && (attacker!=plr1 && attacker!=plr2)) return HAM_SUPERCEDE//ofiarą jest jeden z dopuszczalnych graczy, ale atakującym już nie jest ten drugi albo on sam(np suicide granatem) if(victim==plr2 && (attacker!=plr1 && attacker!=plr2)) return HAM_SUPERCEDE//to co wyżej tylko w drugą stronę tj drugi z graczy if(victim!=plr1 && attacker!=plr1 && victim!=plr2 && attacker!=plr2) return HAM_SUPERCEDE//jeśli attackerem ani ofiarą nie jest żaden z dwóch wybrańców to blokada return HAM_IGNODER }
oczywiście w zmiennych globalnych plr1 i plr2 musisz na bieżąco przechowywać id graczy, którzy mogą ranić/być ranieni.
Jeśli nie chcesz aby to działało ciągle to zrób zmienną globalną o nazwie włącznik i sprawdzaj ją na początku funkcji.
Użytkownik grankee edytował ten post 03.11.2014 03:15
0 użytkowników, 0 gości, 0 anonimowych