Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-01-21, 00:43


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

Nazwa tematu jest do?? dziwna, ale sam nie wiem jak to nazwa?. Jak odlicza? wi?ksze jednostki czasu np. dni? Wywo?uj? jaki? event o godzinie 13:00 dnia 21.01 i chcia?bym, aby rezultat pojawi? si? o 13:00, 24.01. Jak u?o?y? taki "timer"? Chcia?bym zrobi? to na dwa sposoby: niezale?ny czyli od 13:00 21.01 do 13:00 24.01 oraz zale?nie od tego czy gracz jest na serwerze jego czas nalicza si? i event mo?e wykona? si? wtedy gdy ma przegrane 72 godziny. Za pomoc :piwo:

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 01:14


_Haze

Peace Yo!






Wiek: 24
Na forum: 4184 dni
Posty: 1648
Nick w MP: Haze

Piwa: 2628

Respekt: 1020
Respekt: 1020

setTimer co sekunde i sprawdzasz czy ju? jest dana godzina
Więcej informacji znajdziesz w Wikipedii MTA:

getRealTime

albo bawisz si? http://www.unixtimestamp.com/

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 12:30


luki123luki123

Place Game






Wiek: 28
Na forum: 5275 dni
Posty: 1948
Nick w MP: LuKiO

Piwa: 6101

Respekt: 611
Respekt: 611Respekt: 611

Hazmudex, co sekunde setTimer ? Serio po co taka wielka cz?stotliwo??? Wystarczy?o co minute w tym przypadku.

Spos?b nr. 2 jest o wiele bardziej optymalny.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 14:38


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

Zaraz dam kod czy jako? tak ma to wygl?da?.

Oto kod:

--funckja z npclientside
function eventcik()

local dziedorealizacji=math.random(3,6)
local godzinadorealizacji=math.random(1,4)
local minutadorealizacji=math.random(1,30)

local czass=getRealTime()
local years=czass.year
local months=czass.month
local days=czass.monthday dziedorealizacji
local hours=czass.hour godzinadorealizacji
local minutes=czass.minute +minutadorealizacji

triggerServerEvent("event",localPlayer,years,months,days,hours,minutes)
end


function wywalanyEvent(years,months,days,hours,minutes)
local czas=getRealTime()
local rok=czas.year
local miesiac=czas.month
local dzien=czas.monthday
local godzina=czas.hour
local minuta=czas.minute

timmer setTimer(
function()
if rok years then
    if miesiac months then
        if dzien days then
            if godzina hours then
                if minuta minutes then
                    
                    outputChatBox("Sta?o si?.")
        
        killTimer(timmer)
end
    end
        end
            end
                end
end600000)

end
addEvent("event",true)
addEventHandler("event",root,wywalanyEvent)

Co? takiego mo?e by??

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 18:35


_Haze

Peace Yo!






Wiek: 24
Na forum: 4184 dni
Posty: 1648
Nick w MP: Haze

Piwa: 2628

Respekt: 1020
Respekt: 1020

amited, najlepiej robi? timer na id tzn timer [1] przypisany do czego? i przy usuwaniu by?o by pro?ciej

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 19:34


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

Hazmudex, Dasz jaki? przyk?ad takiego kodu?

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 20:41


_Haze

Peace Yo!






Wiek: 24
Na forum: 4184 dni
Posty: 1648
Nick w MP: Haze

Piwa: 2628

Respekt: 1020
Respekt: 1020

amited,
timer= {}
timer[tostring(years..months..days..hours..minutes)] = setTimer(function(years,months,days,hours,minutes)
if rok years then
    if miesiac months then
        if dzien days then
            if godzina hours then
                if minuta minutes then
                    outputChatBox("Sta?o si?.")
                    killTimer(timer[tostring(years..months..days..hours..minutes)])
                end
            end
        end
    end
end
end,60*1000,0,years,months,days,hours,minutes)
tak mniej wi?cej id timera to rok miesiac dzien godzina i minuta(nie testowa?em taki lu?ny kodzik)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-01-21, 21:23


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

No wi?c dobrze mo?na close.

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Tagi: jak :: quotliczyćquot :: większy :: czas :: lua
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Jak "liczyć" większy czas w lua Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku