Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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

Po osiągnięciu danego czasu daje nam inne info


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
4 odpowiedzi w tym temacie

#1 XXL

    Wszechwiedzący

  • Power User

Reputacja: 114
Zaawansowany

  • Postów:568
Offline

Napisano 21.12.2014 16:11

Witam nie wiedziałem jak nazwać temat  :D

 

Mam pytanko jak zrobić: np. Wchodzimy na serwer i od razu wpisujemy komendę /sklep to pisze nam na say: sklep jest czynny po 30 sekundach po starcie rundy 

 

A gdy wpiszemy po 30 sekundach od starcia rundy komendę /sklep to wyświetla nam informacje na say Że sklep zostanie otwarty za chwilę 

 

komenda /sklep dałem jako przykład oraz informacje po prostu chce aby po danym czasie od rozpoczęcia rundy zmieniła się informacja na say

 

Myślę że dobrze wytłumaczyłem ;)


Użytkownik XXL edytował ten post 21.12.2014 16:12

  • +
  • -
  • 0

#2 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 678
Wszechmogący

  • Postów:1258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 21.12.2014 16:28

Zmienna bool, event nowej rundy, task zmiana wartości boola po 30 sekundach od startu rundy i po jej rozpoczeciu i gotowe.


  • +
  • -
  • 0

"Ż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.


#3 XXL

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 114
Zaawansowany

  • Postów:568
Offline

Napisano 21.12.2014 16:39

Zmienna bool, event nowej rundy, task zmiana wartości boola po 30 sekundach od startu rundy i po jej rozpoczeciu i gotowe.

 

Można po ludzku? bo jedynie tego taska rozumiem :D


  • +
  • -
  • 0

#4 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 678
Wszechmogący

  • Postów:1258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 21.12.2014 18:49

1. Definiujesz nową zmienną 

new bool: czy_mozna_uzyc_sklepu
;

2. Używasz tego eventu w plugin_init(), który wykonuje się zawsze po freezetime

register_logevent("Poczatek_Rundy", 2, "1=Round_Start")

3. Ustawiasz w nim tą zmienną na false.

4. Ustawiasz w nim taska, który wykona się za 30 sekund, by zmienić wartość tejże zmiennej na true ( da Ci to możliwość sprawdzenia, czy 30 sekund minęło )

5. W sklepie sprawdzasz, czy ta zmienna wynosi true, jeżeli wynosi to zezwalasz na użycie sklepu, w przeciwnym wypadku informujesz gracza komunikatem taki jaki podałeś, że 30 sekund nie minęło, wstrzymujesz działanie za pomocą

return PLUGIN_HANDLED

 

Ot to cała filozofia, chyba o niczym nie zapomniałem.


Wielkie Jol (21.12.2014 18:50):
Ale notatki są ekstra xD

  • +
  • -
  • 1

"Ż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.


#5 grankee

    Godlike

  • Support Team

Reputacja: 507
Wszechwiedzący

  • Postów:1500
  • Lokalizacja:Radom
Offline

Napisano 22.12.2014 04:18

Ja tu nie widzę potrzeby używania taska.

new Float:czas

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
	// Add your code here...
}
public Poczatek_Rundy()
{
	czas=get_gametime()
}
public czy_minelo_30_sekund()
{
	if((get_gametime()-czas)>30) 
		return true
	return false
}

  • +
  • -
  • 2




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

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