-LUA & XML Wywo?anie scryptu TalkAction o danej godzinie.

Status
Zamknięty.

Sru F

User
Zarejestrowany
Dołączył
Styczeń 22, 2011
Posty
41
Liczba reakcji
4
Ot?? mam ma?y problem z odpaleniem jednego ze scrypt?w o danej godzinie.

Mam w globalevent

Kod:
<globalevent name="scrypt" time="08:40:10" value="scrypt.lua"/>
a plik srypt.lua

Kod:
function onTime()

tre?? scryptu z talkactions (talkactions/scrypt/scrypt.lua)

return TRUE
end

Co jest ?le?

Czy mo?na zamiast wywo?ania funkcji wywo?a? od razu komend? ?
 
Odp: Wywo?anie scryptu TalkAction o danej godzinie.

A mo?e spr?buj tak:


Kod:
function onTime(time)

tre?? scryptu z talkactions (talkactions/scrypt/scrypt.lua)

return TRUE
end
 
Odp: Wywo?anie scryptu TalkAction o danej godzinie.

Sprawdz co ci mowia ewentualne bledy w konsoli przy wlaczaniu serwera lub w momencie kiedy ma ruszyc komenda. Wtedy bedziesz wiedzial co jest zle...
Jesli komenda ma jakies parametry itp to musisz wszystko pozmieniac, bo przy jej uzywaniu wpisujesz parametry, a w ten sposob nie wpisujesz bo automat odpala skrypt. Wiec moze cos pominales... Przy bardziej skomplikowanych skryptach trzeba je calkowicie przerobic, nie wystarczy wkleic do innego folderu i zmienic glowna funkcje wywolujaca...

Poza tym, sprawdz dokladnie godzine na serwerze. Jesli go hostujesz np na vpsie czy dedyku ktory ma ustawiony czas na konkretna godzine, np godzine do przodu od twojego kompa, to ustawiasz na 08:40:00 a na vpsie juz jest 09:40:00 i skrypt sie nie odpala...
 
Odp: Wywo?anie scryptu TalkAction o danej godzinie.

Kamil nie pomog?o, to samo.

@Kikimora
- Z czasem jest dobrze, testowa?em inny scrypt i ?adowa? poprawnie, i czas pokazuje w silniku.
- B??d?w ?adnych

Nie wiem, tak wygl?da kod scryptu, mo?e co? ?le jest.

Kod:
<globalevent name="metin" time="14:12:10" value="metin.lua"/>

metin.lua
Kod:
function onTime(time)

local stones = {
        	[1] = {name="Earth Stone"},
        	[2] = {name="Icy Stone"},
        	[3] = {name="Fire Stone"},
        	[4] = {name="Wind Stone"},
	}

local pos = {
		[1] = {pos={x=514, y=573, z=7}},
        	[2] = {pos={x=519, y=573, z=7}},
        	[3] = {pos={x=523, y=573, z=7}},
        	[4] = {pos={x=526, y=573, z=7}},
	}



function onSay()
    local monst = stones[math.random(1, #stones)]
	local poss = pos[math.random(1, #pos)]
	print(monst, poss)
    if not(monst) then return TRUE end
    doCreateMonster(monst.name,poss.pos)
    doBroadcastMessage('[Event Metin Stones]\n '.. monst.name ..' zostal zrespiony. Znajdz go i Pokonaj!', 22)
    return TRUE
end  
return TRUE
end
 
Odp: Wywo?anie scryptu TalkAction o danej godzinie.

function onSay()
Dodales bez sensu funkcje timera n apoczatku przed configiem, a tam gdzie na prawde jest funkcja wywolujaca skrypt zostawiles onSay i sie dziwisz, ze nie dziala.
Funckaj wywolujacac skrypt nie zawsze jest na poczatku, jest przed trescia skryptu. A przed tym moga byc ustalana zmienne lokalne, globalne czy inne configi...
Takze usun na poczatku onTime i wrzuc to w miejsce onSay nizej.
 
Status
Zamknięty.
Back
Do góry