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.
|
Sprawdzanie czasu "get_systime"
#1
Napisano 09.09.2011 00:47
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
#2
Napisano 09.09.2011 00:58
http://www.amxmodx.o...func&id=250
ostatni parametr to właśnie znacznik czasu, -1 możesz traktować jak podanie get_systime()
w drugą stronę działa funkcja parse_time http://www.amxmodx.o...func&id=252
na podstawie daty liczy ile sekund od 1970
w obu przypadkach potrzebny jest zapis formatu, przy jednej z tych funkcji jest fajna rozpiska, taki format to zwykły string tylko w miejsca na odpowiednie informacje umieszcza się te oznaczenia %CUŚ
%a abbreviated weekday name (Sun)
%A full weekday name (Sunday)
%b abbreviated month name (Dec)
%B full month name (December)
%c date and time (Dec 2 06:55:15 1979)
%d day of the month (02)
%H hour of the 24-hour day (06)
%I hour of the 12-hour day (06)
%j day of the year, from 001 (335)
%m month of the year, from 01 (12)
%M minutes after the hour (55)
%p AM/PM indicator (AM)
%S seconds after the minute (15)
%U Sunday week of the year, from 00 (48)
%w day of the week, from 0 for Sunday (6)
%W Monday week of the year, from 00 (47)
%x date (Dec 2 1979)
%X time (06:55:15)
%y year of the century, from 00 (79)
%Y year (1979)
PS samo sprawdzenie relacji dat możesz zrobić na poziomie znacznika czasu, bez przeliczania na czytelną datę
Użytkownik R3X edytował ten post 09.09.2011 01:01
#3
Napisano 09.09.2011 01:04
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
#4
Napisano 09.09.2011 01:12
teraz = get_systime()
teraz+minuta = get_systime() + 60;
teraz+godzina= get_systime() + 60*60;
teraz+dzień = get_systime() + 24*60*60;
teraz+10 dni = get_systime() + 10*24*60*60;
teraz+miesiąc= get_systime() + 30*24*60*60;
#5
Napisano 09.09.2011 01:43
new sekundy;
parse_time("2011-11-11", "%Y-%m-%d", sekundy);
to zmienna "sekundy" będzie równa sekundom ile upłynęło od 1970 roku do daty podanej w funkcji?
Czyli jednak nie zwracać na to uwagi, że miesiące nie są zawsze równe?No to dodawaj sekundy
teraz = get_systime()
teraz+minuta = get_systime() + 60;
teraz+godzina= get_systime() + 60*60;
teraz+dzień = get_systime() + 24*60*60;
teraz+10 dni = get_systime() + 10*24*60*60;
teraz+miesiąc= get_systime() + 30*24*60*60;
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
#6
Napisano 09.09.2011 02:01
new sekundy = parse_time("2011-11-11", "%Y-%m-%d");
To jest kwestia umowy. Czego oczekujesz gdy ktoś mówi za miesiąc stracisz admina?
Jak nie chcesz dać na 30 dni to pobierz sam numer miesiąca w format_time() i zmień na liczbę.
Z tym możesz już zrobić dużo, np. znaleźć w tablicy ilość dni w następnym miesiącu (zobacz constraint_offset) i użyj tej wartości zamiast '30'.
Użytkownik R3X edytował ten post 09.09.2011 02:03
#7
Napisano 09.09.2011 17:07
format_time(zmienna, charsmax(zmienna), "%Y-%m-%d", ile_dni_do_konca*24*60*60);
Coś takiego?
Chyba już wiem
format_time(zmienna, charsmax(zmienna), "%Y-%m-%d", data_kiedy_sie_konczy);
To będzie coś takiego? W ostatnim parametrze podajemy sekundy, a funkcja zapisuje do zmiennej datę tych sekund?
Można zamknąć.
Użytkownik sebul edytował ten post 09.09.2011 13:04
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
#8
Napisano 09.09.2011 17:09
Ten temat został zamknięty przez moderatora.
Powód: odpowiedz udzielona
Jeśli się z tym nie zgadzasz, 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