OTS i Tibia
By Azeroth#24.
Więc od razu mówię, że nie moje. .
Jest to skok, działa on tym sposobem, że dajemy actionid podane w skrypcie nad rzeczką, wtedy się przeskakuje rzeczkę. można ustawić w którą stronę się skacze, jest 5 stron:
south - na dół
north - na górę
west - w lewo
east - w prawo
auto - w tą stronę, w którą się idzie. ; p
reszta jest już w skrypcie. ; P
w data/movements/movements.xml dodajemy:
Spoiler:
<movevent event="StepIn" itemid="102" script="skok.lua" />
pogrubione jest id podłogi z której się wyskakuje, można zrobić kilka takich linijek z innymi id.
teraz w data/movements/scripts tworzymy skok.lua
Spoiler:
function skok(cid, o_ile, dir)
if(dir=='north')then
whatDir = 0
elseif(dir=='east')then
whatDir = 1
elseif(dir=='south')then
whatDir = 2
elseif(dir=='west')then
whatDir = 3
elseif(dir=='auto')then
whatDir = getPlayerLookDir(cid)
end
local newpos = getPlayerPosition(cid)
if(whatDir==1)then
newpos.x = newpos.x + o_ile
elseif(whatDir==2)then
newpos.y = newpos.y + o_ile
elseif(whatDir==3)then
newpos.x = newpos.x - o_ile
elseif(whatDir==0)then
newpos.y = newpos.y - o_ile
end
doTeleportThing(cid, newpos)
end
function onStepIn(cid, item, pos)
local actiony = {562, 561,563,564,565} -- id podlogi z ktorej skaczemy
local o_ile = {4, 3,1,4,6} -- o ile ma skoczy
local strona = {'north', 'auto', 'south', 'east', 'west'} -- strona w ktora ma teleportowac
for i=1, #actiony do
if(item.actionid==actiony[i])then
skok(cid, o_ile[i], strona[i])
doPlayerSay(cid, 'JUMP!', 16)
end
end
end
Offline