Ir para conteúdo

Sled System Tutorial... Bye Albert José


Posts Recomendados

Olá pessoal! A pouco tempo atras eu baixei um ot que veio com um arquivo chamado sled nos movements ai fiquei

que nem loco tentando de tudo para faze-lo funcionar! E não foi que eu consegui; e estou aqui para dividir esta bela action com vocês!

 

Psº:Eu não sei quem fez o script porque não tem nada falando no mesmo!

 

Vamos trabalhar: :weight_lift:

Primeiro copie e renomeie um arquivo na pasta movements/scripts

para "sled"; agora cole isto la dentro:

function addSled(params)
local startpos = params.startpos
local spawnDelay = params.spawnDelay

local speed = 250 --The speed in miliseconds before the sled moves 1 tile

local pos = params.pos
local cid = params.cid

-- Dont edit any of the following unless you know what your doing
local groundpos = {x=pos.x, y=pos.y, z=pos.z, stackpos=0}
local ground = getThingfromPos(groundpos)

pos1 = {x=pos.x, y=pos.y, z=pos.z, stackpos=1}
pos2 = {x=pos.x, y=pos.y+2, z=pos.z, stackpos=1}
pos3 = {x=pos.x, y=pos.y+3, z=pos.z, stackpos=1}
pos4 = {x=pos.x, y=pos.y+5, z=pos.z, stackpos=1}
item1 = getThingfromPos(pos1)
item2 = getThingfromPos(pos2)
item3 = getThingfromPos(pos3)
item4 = getThingfromPos(pos4)

newpos = {x=pos.x, y=pos.y+1, z=pos.z}

if ground.actionid == 9001 then
	spawnparams = {startpos = startpos, pos = pos}
	addEvent(spawnSled,spawnDelay*1000,spawnparams)
	setPlayerStorageValue(cid,9006,-1)
else
	doRemoveItem(item1.uid,1)
	doRemoveItem(item2.uid,1)
	doRemoveItem(item3.uid,1)
	doRemoveItem(item4.uid,1)

	newpos1 = {x=newpos.x, y=newpos.y, z=newpos.z}
	newpos2 = {x=newpos.x, y=newpos.y+2, z=newpos.z}
	newpos3 = {x=newpos.x, y=newpos.y+3, z=newpos.z}
	newpos4 = {x=newpos.x, y=newpos.y+5, z=newpos.z}
	doCreateItem(7266,1,newpos1)
	doCreateItem(7268,1,newpos2)
	doCreateItem(7269,1,newpos3)
	doCreateItem(7270,1,newpos4)

	doTeleportThing(cid, newpos)

	newparams = {pos = newpos, cid = cid, startpos = startpos, spawnDelay = 10}
	addEvent(addSled,speed,newparams)
end
end

function spawnSled(params)
local startpos = params.startpos
local pos = params.pos
pos1 = {x=startpos.x, y=startpos.y, z=startpos.z}
pos2 = {x=startpos.x, y=startpos.y+2, z=startpos.z}
pos3 = {x=startpos.x, y=startpos.y+3, z=startpos.z}
pos4 = {x=startpos.x, y=startpos.y+5, z=startpos.z}
doCreateItem(7266,1,pos1)
doCreateItem(7268,1,pos2)
doCreateItem(7269,1,pos3)
doCreateItem(7270,1,pos4)

pos1 = {x=pos.x, y=pos.y, z=pos.z, stackpos=1}
pos2 = {x=pos.x, y=pos.y+2, z=pos.z, stackpos=1}
pos3 = {x=pos.x, y=pos.y+3, z=pos.z, stackpos=1}
pos4 = {x=pos.x, y=pos.y+5, z=pos.z, stackpos=1}
item1 = getThingfromPos(pos1)
item2 = getThingfromPos(pos2)
item3 = getThingfromPos(pos3)
item4 = getThingfromPos(pos4)
doRemoveItem(item1.uid,1)
doRemoveItem(item2.uid,1)
doRemoveItem(item3.uid,1)
doRemoveItem(item4.uid,1)

ppos1 = {x=startpos.x, y=startpos.y, z=startpos.z, stackpos=253}
ppos2 = {x=startpos.x, y=startpos.y+2, z=startpos.z, stackpos=253}
ppos3 = {x=startpos.x, y=startpos.y+3, z=startpos.z, stackpos=253}
ppos4 = {x=startpos.x, y=startpos.y+5, z=startpos.z, stackpos=253}
player1 = getThingfromPos(ppos1)
player2 = getThingfromPos(ppos2)
player3 = getThingfromPos(ppos3)
player4 = getThingfromPos(ppos4)

nppos1 = {x=startpos.x+1, y=startpos.y, z=startpos.z}
nppos2 = {x=startpos.x+1, y=startpos.y+2, z=startpos.z}
nppos3 = {x=startpos.x+1, y=startpos.y+3, z=startpos.z}
nppos4 = {x=startpos.x+1, y=startpos.y+5, z=startpos.z}
if player1.itemid > 0 then
	doTeleportThing(player1.uid, nppos1)
end
if player2.itemid > 0 then
	doTeleportThing(player2.uid, nppos2)
end
if player3.itemid > 0 then
	doTeleportThing(player3.uid, nppos3)
end
if player4.itemid > 0 then
	doTeleportThing(player4.uid, nppos4)
end
end

function onStepIn(cid, item, pos)
if isPlayer(cid) == 1 then
	isMoving = getPlayerStorageValue(cid,9006)
	if item.itemid == 7266 and isMoving == -1 then
		params = {cid = cid, pos = pos, startpos = pos, spawnDelay = 10}
		addEvent(addSled, 100, params)
		setPlayerStorageValue(cid,9006,1)
	end
end
end

Depois adicione essa tag no arquivo "movements.xml" que se situa na pasta "data/movements":

<movevent event="StepIn" itemid="7266" script="sled.lua"/>

 

Agora eu vou explicar como configurar seu sled:

 

1º Passo: Crie o treno com os seguintes comandos:

.Sled aqui: id 7266

.Pula esse Sqm

.Husky 1: id 7268

.Husky 2: id 7271

.Pula esse Sqm

.Husky 3: id 7270

Se você não intendeu nada olha na foto abaixo:

Ss003.png

Ps¹: Ele só anda em linha reta para o sul! Você tera que certificar que o caminho

dele até o fim (Ja vou explicar) estara livre de qualquer item!

 

É hora de botar um ponto final na rota dele senão ele não para mais... :nuts:

 

Escolha a parada do seu sled e lembre-se que tem que ser reto e para o sul e alem disto

precisa ter 5 sqms livres de qualquer obstrução e adicione a action id:"9001" no mesmo;

Se você não intendeu essa tambem veja na foto abaixo:

Ss006.png

 

Obrigado a todos que comentarem e espero que façam bom proveito desta action!!! :rolleyes:

Não esqueça de deixar um comentario bem animador. :secret:

 

Ps²: Esta action só funciona em servers 8.0 para cima! Eu só testei no Aries 4.5...

Qualquer duvida me mande um Mp!

Editado por Albert José
Link para o comentário
Compartilhar em outros sites

Então cara, eu fiz tudo corretamente aqui e deu o seguinte erro..

"..:: Loading movements.xml...Warning: [Event::loadScript] Can not load script. data/movements/scripts/sled.lua:49: '<eof>' expected near 'end' [done]..."

 

Espero que consiga arrumar..

Att,

Fogo.

Editado por Fogo
Link para o comentário
Compartilhar em outros sites

//Albert José.

 

Eu baixei a nova versão do aires,por que eu usava a antiga, fiz tudo corretamente denovo mas deu o mesmo erro.. Será que pode postar o video de como fazer?

 

 

Att,

Fogo.

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 3 weeks later...
×
×
  • Criar Novo...