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

Wymuszenie zakończenia pluginu


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

#1 Novy93

    Zaawansowany

  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:142
  • Lokalizacja:Ruda Śląska
Offline

Napisano 25.08.2010 10:49

Mógłby mi ktoś napisać, czy istnieje funkcja/komenda cokolwiek, która po sprawdzeniu, czy gracz ma flagę T (if) w zależności od wyniku wykona:
jeżeli nie ma flagi - nie udostępni mu dalszej części pluginu / zakończy go od razu / zatrzymie tylko dla tego gracza (no i innych bez flagi),
jeżeli ma flagę to normalnie bez przeszkód wykona plugin dalej.

No i najlepiej z jakimś krótkim wytłumaczeniem co i jak, żebym wiedział.
  • +
  • -
  • 0

#2 Siemir

    Profesjonalista

  • Użytkownik

Reputacja: 113
Zaawansowany

  • Postów:204
  • Steam:steam
  • Lokalizacja:nie znana
Offline

Napisano 25.08.2010 11:17


if(!(get_user_flags(id)& ADMIN_LEVEL_H))//jeśli nie ma flagi "t"

    return PLUGIN_CONTINUE;
dajesz to na początku funkcji którą chcesz ograniczyć, oczywiście możesz dodać tekst w przypadku braku flagi czy co tam chcesz.
  • +
  • -
  • 1

#3 Novy93

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:142
  • Lokalizacja:Ruda Śląska
Offline

Napisano 25.08.2010 15:57

Po wielu, wielu próbach doszedłem do wynikowego kodu:

if ((get_user_flags(id)& ADMIN_LEVEL_H)) // jeśli ma flage T
	{
		return PLUGIN_CONTINUE;
	}
{ 
   Reszta kodu
}

Ale niestety działa to odwrotnie - gracze z flagą T nie mogą korzystać z pluginu. Jakieś pomysły na "odwrócenie procesu" ? (Zamiana "return PLUGIN_CONTINUE;" z "Reszta kodu" nie pomaga).

Użytkownik Novy93 edytował ten post 25.08.2010 15:58

  • +
  • -
  • 0

#4 Knopers

    Nie patrz tak na mnie !

  • Przyjaciel

Reputacja: 588
Wszechwiedzący

  • Postów:2 013
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Cz-wa
Offline

Napisano 25.08.2010 16:15

zapomniałeś o negacji ( ! )
if (!(get_user_flags(id)& ADMIN_LEVEL_H)) //Jeśli gracz nie ma flagi t
  • +
  • -
  • 1

#5 Novy93

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:142
  • Lokalizacja:Ruda Śląska
Offline

Napisano 26.08.2010 10:05

Trochę późno pisze, bo coś tam zepsułem to wreszcie udało mi się wrócić do tego momentu - więc tak:

}
if (! (get_user_flags(player) & ADMIN_RESERVATION ))
	{ 
            KOD
        }
        else
        {
	client_print(player, print_chat, "Wyswietla sie jak nie moze uzyc")
        }
}

Wynikiem czego jest, że nikt nie może korzystać z pluginu.
  • +
  • -
  • 0

#6 Owner123

    Wszechpomocny

  • Użytkownik

Reputacja: 146
Zaawansowany

  • Postów:331
  • Lokalizacja:Barty ;]
Offline

Napisano 26.08.2010 10:28

}

if (! (get_user_flags(player) & ADMIN_RESERVATION ))

	{ 

            client_print(player, print_chat, "Wyswietla sie jak nie moze uzyc")

        }

        else

        {

	    //kod

        }

}

Użytkownik Owner123 edytował ten post 26.08.2010 10:28

  • +
  • -
  • 1

#7 Novy93

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 15
Początkujący

  • Postów:142
  • Lokalizacja:Ruda Śląska
Offline

Napisano 26.08.2010 17:54

No proszę, dało radę ;D

Teraz mam ciut inny problem - ponieważ kod co pokazał Owner123 znajduje się w "public handle_say(id)" toteż użytkownikowi bez flagi T (Chodziło mi o flagę T ale jakoś zeszło na rezerwację), ciągle wyświetla się tekst "Wyswietla sie jak nie moze uzyc". W sensie, że cokolwiek napisze się w czacie - bez flagi T - pojawia się ten tekst w sayu. Da się to jakoś zmienić ?


#Edit
Zrobiłem każdą komendę z osobna na flagę T, więc problem rozwiązany. Wszyscy macie po plusie a temat można zamknąć.
No i jakby kto się interesował, pracowałem nad bankiem AP na flagę T pod ZombieModa. Jeszcze raz dzięki ;)

Użytkownik Novy93 edytował ten post 26.08.2010 18:02

  • +
  • -
  • 0




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

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