- Dołączył
- Lipiec 27, 2008
- Posty
- 512
- Liczba reakcji
- 31
Siemanko!
Stworzy?em prosty skrypt, kt?rym postanowi?em si? podzieli? z wami.
YourOTS\data\lib\050-function.lua | Na ko?cu dodajemy to:
YourOTS\data\creaturescripts\creaturescripts.xml
YourOTS\data\creaturescripts\scripts\login.lua
Po:
Dodajemy to:
YourOTS\data\creaturescripts\scripts\advance.lua
Stworzy?em prosty skrypt, kt?rym postanowi?em si? podzieli? z wami.
YourOTS\data\lib\050-function.lua | Na ko?cu dodajemy to:
Kod:
czekaj = coroutine.yield
function czekanie(c)
if(coroutine.status(c) ~= 'dead') then
local _, czas = coroutine.resume(c)
addEvent(czekanie, czas, c)
end
end
function zacznijCzekac(f)
if(type(f) == 'function') then
local c = coroutine.create(f)
czekanie(c)
end
end
function timeString(timeDiff)
local dateFormat = {
{"day", timeDiff / 60 / 60 / 24},
{"hour", timeDiff / 60 / 60 % 24},
{"minute", timeDiff / 60 % 60},
{"second", timeDiff % 60}
}
local out = {}
for k, t in ipairs(dateFormat) do
local v = math.floor(t[2])
if(v > 0) then
table.insert(out, (k < #dateFormat and (#out > 0 and ', ' or '') or ' and ') .. v .. ' ' .. t[1] .. (v ~= 1 and 's' or ''))
end
end
return table.concat(out)
end
Kod:
<event type="advance" name="advance" event="script" value="advance.lua"/>
Po:
Kod:
registerCreatureEvent(cid, "ReportBug")
Kod:
registerCreatureEvent(cid, "advance")
Kod:
function onAdvance(cid, skill, oldlevel, newlevel)
local pozycja = getCreaturePosition(cid)
zacznijCzekac(function()
if skill == SKILL__MAGLEVEL then
doPlayerSay(cid, "[MAGICLEVEL UP!]", TALKTYPE_ORANGE_1)
for i = 1, 1 do
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y - 2, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y - 2, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y - 2, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y + 2, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y + 2, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y + 2, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_MORTAREA)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 1, y = pozycja.y, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x + 1, y = pozycja.y, z = pozycja.z}, CONST_ME_MORTAREA)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y - 1, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x, y = pozycja.y - 1, z = pozycja.z}, CONST_ME_MORTAREA)
doSendDistanceShoot(pozycja, {x = pozycja.x - 1, y = pozycja.y, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x - 1, y = pozycja.y, z = pozycja.z}, CONST_ME_MORTAREA)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y + 1, z = pozycja.z}, 31)
doSendMagicEffect({x = pozycja.x, y = pozycja.y + 1, z = pozycja.z}, CONST_ME_MORTAREA)
end
elseif skill == SKILL__LEVEL then
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doCreatureAddMana(cid, getCreatureMaxMana(cid))
doPlayerSay(cid, "[LEVEL UP!]", TALKTYPE_ORANGE_1)
for i = 1, 1 do
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y - 2, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y - 2, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y - 2, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y + 2, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y + 2, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y + 2, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_HEARTS)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 1, y = pozycja.y, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x + 1, y = pozycja.y, z = pozycja.z}, CONST_ME_HEARTS)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y - 1, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x, y = pozycja.y - 1, z = pozycja.z}, CONST_ME_HEARTS)
doSendDistanceShoot(pozycja, {x = pozycja.x - 1, y = pozycja.y, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x - 1, y = pozycja.y, z = pozycja.z}, CONST_ME_HEARTS)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y + 1, z = pozycja.z}, 6)
doSendMagicEffect({x = pozycja.x, y = pozycja.y + 1, z = pozycja.z}, CONST_ME_HEARTS)
end
elseif skill == SKILL_CLUB then
doPlayerSay(cid, "[CLUB FIGHTING UP!]", TALKTYPE_ORANGE_1)
for i = 1, 1 do
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y - 2, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y - 2, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y - 2, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y - 2, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x - 2, y = pozycja.y + 2, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x - 2, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y + 2, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 2, y = pozycja.y + 2, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x + 2, y = pozycja.y + 2, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
czekaj(100)
doSendDistanceShoot(pozycja, {x = pozycja.x + 1, y = pozycja.y, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x + 1, y = pozycja.y, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y - 1, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x, y = pozycja.y - 1, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
doSendDistanceShoot(pozycja, {x = pozycja.x - 1, y = pozycja.y, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x - 1, y = pozycja.y, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
doSendDistanceShoot(pozycja, {x = pozycja.x, y = pozycja.y + 1, z = pozycja.z}, 26)
doSendMagicEffect({x = pozycja.x, y = pozycja.y + 1, z = pozycja.z}, CONST_ME_GROUNDSHAKER)
end

