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

Dobry ten IF?


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

#1 camilost

    ^ BotQ - STER.owiec ^

  • Power User

Reputacja: 434
Wszechobecny

  • Postów:968
  • GG:
  • Steam:steam
  • Imię:Kamil
  • Lokalizacja:Tychy
Offline

Napisano 05.08.2010 00:01

Dodałem kilka klas extra do COD:MW i teraz mam mentlik , bo już wyłączyłem myślenie:

Zrobiłem takiego ifa:
		if(( klasa_gracza[id] == Rambo || klasa_gracza[id] == Ninja || klasa_gracza[id] == Tropiciel || klasa_gracza[id] == Zolnierz || klasa_gracza[id] == Szeregowy || klasa_gracza[id] == General || klasa_gracza[id] == Wojskowy || klasa_gracza[id] ==  Pulkownik || klasa_gracza[id] == Sierzant || klasa_gracza[id] == Kapitan ) && klasa_gracza[attacker] != klasa_gracza[id])
nowe_doswiadczenie += doswiadczenia_za_zabojstwo*2;


Zadziała on prawidłowo?
(Warunek jeśli zabity to 'VIP klasa' a zabijający 'Nie VIP klasa')

I czy dobrze jest tyle w 1 ifie robić
if ( ( klasa_gracza[id] == VIPKlasa || i tak kilka razy) && klasa_gracza[attacker] != klasa_gracza[id])

Wiem że było coś z constem ale już nie pamiętam jak to stosować ^^
  • +
  • -
  • 0

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 05.08.2010 00:19

Logicznie warunek jest w porządku.

jeśli klas masz mniej niż 32 (chyba, że serwer 64 bitowy) to możesz to sprawdzać na polu bitowym

#define VIPY (1<<Rambo) | (1<<Ninja) | ....

if(VIPY & (1<<klasa_gracza[id]) && (klasa_gracza[id] != klasa_gracza[attacker]))){

  • +
  • -
  • 1

#3 camilost

    ^ BotQ - STER.owiec ^

  • Autor tematu
  • Power User

Reputacja: 434
Wszechobecny

  • Postów:968
  • GG:
  • Steam:steam
  • Imię:Kamil
  • Lokalizacja:Tychy
Offline

Napisano 05.08.2010 00:33

#define klasy_premium (1<<Rambo) | (1<<Ninja) | (1<<Tropiciel) | (1<<Zolnierz) | (1<<Szeregowy) | (1<<General) | (1<<Wojskowy) | (1<<Pulkownik) | (1<<Sierzant) | (1<<Kapitan)
I tak:
if(klasy_premium & (1<<item) && !(get_user_flags(id) & ADMIN_LEVEL_H))
zamiast:
if((item == Rambo || item == Ninja || item == Tropiciel || item == Zolnierz || item == Szeregowy || item == General || item == Wojskowy || item ==  Pulkownik || item == Sierzant || item == Kapitan) && !(get_user_flags(id) & ADMIN_LEVEL_H))
Good?
  • +
  • -
  • 0

#4 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 05.08.2010 00:51

wygląda ok
  • +
  • -
  • 1

#5 camilost

    ^ BotQ - STER.owiec ^

  • Autor tematu
  • Power User

Reputacja: 434
Wszechobecny

  • Postów:968
  • GG:
  • Steam:steam
  • Imię:Kamil
  • Lokalizacja:Tychy
Offline

Napisano 05.08.2010 01:05

Później dam znać czy poprawnie działa, bo zapomniałem dać define a i tak skompilowało bez błędu (lol)

05 sierpień 2010 - 03:23:
Dobra jest GIT, dzięki.

To close.
  • +
  • -
  • 0

#6 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 476
  • Lokalizacja:AMXX.PL
Offline

Napisano 05.08.2010 02:35

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Sprawa załatwiona

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




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

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