What's new

Pomoc z p?tl? czasow?

Status
Not open for further replies.

deosey

User
Joined
Sep 4, 2010
Messages
12
Reaction score
0
Witam. Potrzebuj? p?tli czasowej , poniewa? chc? doda? do transformacji efekt powtarzaj?cy si? co jaki? czas np. pioruny na postaci . Wi?c je?li kto? wie jak stworzy? p?tl? czasow? lub ma inny spos?b na dodanie efektu prosi?bym o napisanie.
 

Sensi89

Advanced User
Joined
May 8, 2010
Messages
209
Reaction score
15
Odp: Pomoc z p?tl? czasow?

Walnij sobie skrypt np do globalevents

lub jak wolisz to zwyk?a p?tle for zr?b np na 10 powt?rze?

struktura p?tli for:

Code:
for i = 1, 10 do
 --co ma si? wykonywa?--
end

lub mo?esz zastosowa? p?tle while dzi?ki kt?rej po wywo?aniu skryptu b?dzie on si? powtarza? do czasu gdy warunek podany w p?tli zostanie spe?niony

Code:
local a = 0
while(a <= 12) do
 --co ma si? wykonywa?--
a = a+1
end

Mo?esz r?wnie? doda? do p?tli addEvent dzi?ki czemu p?tla b?dzie si? wykonywa?a co x czasu.
 

Szybol

Advanced User
Joined
Apr 14, 2008
Messages
210
Reaction score
30
Age
31
Odp: Pomoc z p?tl? czasow?

Z addevent

function naszafunkcja()
addEvent(petla, czas (1* 60* 1000 = minuta), jakis parametr do przekazania lecz niekonieczny)
end

function petla(parametr jak powy?ej)
wykonajto(500)-- dzialanie
pisz("wykonalo wykonajto w czas")
end
 

Idk

Senior User
Joined
Aug 5, 2009
Messages
546
Reaction score
68
Age
29
Odp: Pomoc z p?tl? czasow?

PHP:
function powtarzajEffect(cid,effekt, coile, pozycja)
if isPlayer(cid) then

	doSendMagicEffect(pozycja, effekt)
            addEvent(powtarzajEffect,coile*1000,cid)
end
end
Przyk?adowe zastosowanie:

PHP:
function onSay(cid, words, param, channel)
if getPlayerLevel(cid) >= 50 then
local ppos = getCreaturePosition(cid)
powtarzajEffect(cid,34, 2, ppos)
end
 end
 

Sensi89

Advanced User
Joined
May 8, 2010
Messages
209
Reaction score
15
Odp: Pomoc z p?tl? czasow?

Z addevent
function naszafunkcja()
addEvent(petla, czas (1* 60* 1000 = minuta), jakis parametr do przekazania lecz niekonieczny)
end
function petla(parametr jak powy?ej)
wykonajto(500)-- dzialanie
pisz("wykonalo wykonajto w czas")
end

Da?em Ci rapa poniewa? widz? ?e w kolejnym ju? temacie udzieli?e? m?drej i warto?ciowej odpowiedzi i wida? ?e wiesz o czym piszesz.
 

deosey

User
Joined
Sep 4, 2010
Messages
12
Reaction score
0
Odp: Pomoc z p?tl? czasow?

Szybol M?g?by? napisa? dok?adniej co mam zrobi? i gdzie to wpisa? ? Chc? ?eby powtarza? si? jaki? efekt w tym skrypcie :
function onSay(cid, words, param)
------------------------------ustawienia---------------
local mana = 0
local lvl = 0
local voc = 267
local pacc = 0
local vocka = 118
local pacce = 0
local outfit = {lookType=326,lookHead=0,lookAddons=0,lookLegs=0,lookBody=0,lookFeet=0}
local outfitTime = 9000000
--------------------------------koniec ustawien---------
----------------------kod-----------------------------
if(getPlayerMana(cid) >= mana and getPlayerLevel(cid) >= lvl and getPlayerVocation(cid) == vocka) then
doPlayerSetVocation(cid,voc)
doPlayerAddMana(cid,-mana)
doSetCreatureOutfit(cid, outfit, outfitTime)
GDZIE? TUTAJ
doSendMagicEffect(getPlayerPosition(cid), 32)
else
doPlayerSendCancel(cid,"Dostosuj sie do wymagan.")
end
return 1
end
 

Szybol

Advanced User
Joined
Apr 14, 2008
Messages
210
Reaction score
30
Age
31
Odp: Pomoc z p?tl? czasow?

Kod powinien wygl?da? nast?puj?co:

function onSay(cid, words, param)
------------------------------ustawienia---------------
local mana = 0
local lvl = 0
local voc = 267
local pacc = 0
local vocka = 118
local pacce = 0
local outfit = {lookType=326,lookHead=0,lookAddons=0,lookLegs=0,l ookBody=0,lookFeet=0}
local outfitTime = 9000000
local czas = 1* 60* 1000
local efektid = 37
--------------------------------koniec ustawien---------
----------------------kod-----------------------------
if(getPlayerMana(cid) >= mana and getPlayerLevel(cid) >= lvl and getPlayerVocation(cid) == vocka) then
doPlayerSetVocation(cid,voc)
doPlayerAddMana(cid,-mana)
doSetCreatureOutfit(cid, outfit, outfitTime)
-- Addevent by Szybol
addEvent(efekt, czas, cid, efektid)
-- Addevent koniec
else
doPlayerSendCancel(cid,"Dostosuj sie do wymagan.")
end
return 1
end

-- Funkcja Addevent
function efekt(cid, numer)
doSendMagicEffect(getPlayerPosition(cid), numer)
-- Wywoluje siebie tworzac petle
addEvent(efekt, czas, getPlayerPosition(cid), efektid)
end

Mog? by? b??dy bo nie testowa?em ;/
 
Status
Not open for further replies.
Top