Machine! 2 #1 Postado 14 Agosto, 2008 (editado) Galera tbm achei issu na net ontem ^^ Post original feito por colex! Introdução: Este script de Montanha-Russa é um sistema facil de utilizar, foi elaborado de forma a que qualquer pessoa pudesse usar sem qualquer alteração no script, mas para aquele que gostam de personalizar o script, eu adicionei um sistema de "eventos" e um par de funções para tornar muito facil a alteração e adaptação do script sem ser necessário entender o script em si. O script foi criado num OTServer 8.1, porém voce pode facilmente actualiza-lo para qualquer outra versão, quando voce faz o download do script, ele vem com um ficheiro README que ajuda-o no processo de actualização e tambem dá algumas informações extras. Features: Um script funciona com todas as montanhas-russas do server A velocidade aumenta quando voce desce uma rampa A velocidade diminui quando voce sobe uma rampa Voce pode adicionar impulsores ao trilho (aumenta a velocidade)* Voce pode adicionar freios ao trilho (diminui a velocidade)* Voce pode facilmente adicionar comportamentos personalizados ao ficheiro de eventos *leia o README para ter mais informações de como fazer isso Roller Coaster's Video: Este é um filme de exemplo da Roller Coaster que eu fiz para testar o script (não foi filmado com a ultima versão do script) http://www.youtube.com/watch?v=vdlaJ9bmo9k O VIDEO MOSTRA! Download: http://rapidshare.com/files/137265506/RollerCoaster___Colex.rar.html( 2.68KB ) O download contem 4 arquivos: README.txt, RollerCoaster.lua, RollerCoasterEvents.lua e actions.xml Script: Estou a postar o script no próprio tópico para aqueles que não querem fazer o download do mesmo, mas querem dar uma olhada no script... Para obter todas as informações e ter um funcionamento correcto do sistema, é necessário o download do mesmo. ------Roller Coaster System by Colex-------dofile('data\\actions\\scripts\\RollerCoasterEvents.lua') local TRAINS = {7131, 7132} local all = {7121, 7122, 7123, 7124, 7125, 7126, 7133, 7134, 7135, 7136} local ACTION_TRAIN = {1001, 1002} local RAILS = { {id = all[1], dirs = {{dir = SOUTH, out = 2},{dir = NORTH, out = 2}}}, {id = all[2], dirs = {{dir = EAST, out = 1},{dir = WEST, out = 1}}}, {id = all[3], dirs = {{dir = EAST, out = 1},{dir = SOUTH, out = 2}}}, {id = all[4], dirs = {{dir = WEST, out = 1},{dir = SOUTH, out = 2}}}, {id = all[5], dirs = {{dir = EAST, out = 1},{dir = NORTH, out = 2}}}, {id = all[6], dirs = {{dir = WEST, out = 1},{dir = NORTH, out = 2}}}, {id = all[7], stop = 1}, {id = all[8], stop = 1}, {id = all[9], stop = 1}, {id = all[10], stop = 1}, } local SLOW = 500 local FAST = 200 local INCREASE = 50 local DECREASE = 50 local DOWN_INCREASE = 450 local UP_DECREASE = 155 local INFOS = {} TRUE = 1 FALSE = 0 function getRail(pos) local stack = 1 local found = 0 repeat pos.stackpos = stack rail = getThingfromPos(pos) if (rail.itemid == 0) then break end for i, r in ipairs(RAILS) do if (rail.itemid == r.id) then found = 1 break end end stack = stack + 1 until (found == 1) return rail end function moveTrain(cid) params = INFOS[cid] pos = getCreaturePosition(cid) rail = getRail(pos) dir = -1 for i,r in ipairs(RAILS) do if (rail.itemid == r.id) then if (RollerCoaster:onMove(cid, rail, r, pos) == FALSE) then table.remove(INFOS, cid) return 1 end if (r.stop ~= nil) then if (r.stop == 1) then RollerCoaster:onExitQuery(cid) addEvent(exitTrain, 2000, cid) return 1 end end change = rail.actionid - 1000 power = 0 power = change doChangeType(cid, r.id, INFOS[cid].beforeid) info = r.dirs[iNFOS[cid].type] dir = info.dir if ((power == 1) or (power == 2)) then if (RollerCoaster:onChangeSpeed(cid, power) == TRUE) then if (power == 2) then INFOS[cid].speed = INFOS[cid].speed - INCREASE elseif (power == 1) then INFOS[cid].speed = INFOS[cid].speed + DECREASE end end end if (INFOS[cid].currZ ~= pos.z) then if (RollerCoaster:onChangeLevel(cid, INFOS[cid].currZ, pos.z) == TRUE) then if (INFOS[cid].currZ > pos.z) then INFOS[cid].speed = INFOS[cid].speed + UP_DECREASE elseif (params.currZ < pos.z) then params.speed = params.speed - DOWN_INCREASE end end end if (params.speed < 1) then params.speed = 1 end params.currZ = pos.z newid = TRAINS[info.out] INFOS[cid].beforeid = r.id break end end if (dir ~= -1) then doSetItemOutfit(cid, newid, -1) doMoveCreature(cid, dir) addEvent(moveTrain,params.speed,cid) else RollerCoaster:onExitQuery(cid) addEvent(exitTrain, 2000, cid) end end function exitTrain(cid) table.remove(INFOS, cid) RollerCoaster:onExit(cid) doSetItemOutfit(cid, TRAINS[1], 0) pos = getCreaturePosition(cid) pos.y = pos.y - 1 doTeleportThing(cid, pos, 1) mayNotMove(cid, 0) end function enterTrain(params) if (RollerCoaster:onEnter(cid, params[2]) == TRUE) then doSetItemOutfit(params[1], params[2], -1) pos = getCreaturePosition(params[1]) table.insert(INFOS, params[1],{type = params.type, speed = SLOW, currZ = pos.z}) addEvent(moveTrain,1000,params[1]) end end function getSpeed(cid) if (INFOS[cid].speed ~= nil) then return INFOS[cid].speed end return FALSE end function setSpeed(cid, speed) if (INFOS[cid].speed ~= nil) then INFOS[cid].speed = speed return TRUE end return FALSE end function onUse(cid, item, fromPosition, itemEx, toPosition) if (isInArray(ACTION_TRAIN, item.actionid) == TRUE) then if (RollerCoaster:onEnterQuery(cid, item) == TRUE) then doTeleportThing(cid, toPosition, 1) mayNotMove(cid, 1) addEvent(enterTrain,500,{cid, item.itemid, type=(item.actionid-1000)}) end end return TRUE end ----"No Scripting Needed" System----- local change = {} change[all[1]] = {all[3], all[4]} change[all[2]] = {all[4], all[6]} change[all[3]] = {all[1], all[4], all[6]} change[all[4]] = {all[1], all[2], all[3], all[5], all[6]} change[all[5]] = {all[4]} change[all[6]] = {all[2], all[3], all[4]} change[all[7]] = {} change[all[8]] = {} change[all[9]] = {} change[all[10]] = {} function doChangeType(cid, id, beforeID) if (table.getn(change[id]) > 0) then if (isInArray(change[id],beforeID) == TRUE) then if (INFOS[cid].type == 1) then INFOS[cid].type = 2 else INFOS[cid].type = 1 end end end end Espero que gostem e façam bom proveito dele. Atenciosamente, Colex Este post foi editado por Colex: 23:22 - 02/08/2008 Editado 14 Agosto, 2008 por marlontrovao 1 1 tibia e henriquebom reagiu a isto Compartilhar este post Link para o post
Nord 2 #2 Postado 14 Agosto, 2008 Cheguei a pegar o script na OTFans e fiz até umas modificações, fico perfeito. E vc coloca créditos nos tópicos pelo menos. Aprovado. Compartilhar este post Link para o post
Mock 32 #3 Postado 14 Agosto, 2008 interessante eu pensei que fosse mais simples o0 Compartilhar este post Link para o post
541320 0 #4 Postado 14 Agosto, 2008 Putz mas como eu vou montar minha montanha russa no mapa?? Compartilhar este post Link para o post
Deragon 25 #5 Postado 14 Agosto, 2008 eu fiz um o meu tem mais funções ;D ele tem sisteminha de troca pista automatico se tiver alguem na pista oO isso eu jah vi no ****************** [ X T ] e marlontrovao quer ganhar p.acc no rapidshare com um arkivo de 2.68 kb kkkkkkkkkk tente outra vez Compartilhar este post Link para o post
Elys Zarox 0 #6 Postado 14 Agosto, 2008 nuss bem complexo seria melhor com fotos =] ta otimoo tutorial parabens Compartilhar este post Link para o post
Sago 0 #7 Postado 14 Agosto, 2008 O Colex faz cada script melhor que o outro... :} Muito massa esse script ... Não existe nada que o tibia não tem agora :} Tibia global não é nada perto dos melhores OT Servs... =/ Aprovado Compartilhar este post Link para o post
Machine! 2 #8 Postado 14 Agosto, 2008 Galera vo procura o video do colex explicando como montar a montanhas russa e vo posta-lo aqui para vcs! Compartilhar este post Link para o post
gslayeryourotsv9 0 #9 Postado 14 Março, 2009 cara não intendi nada primero tem q colocar oque aonde o script pq eu n entendi :/me esplica plz Compartilhar este post Link para o post
Kofesco II 0 #10 Postado 14 Março, 2009 Segui o Readme e tentei atualizar para 8.4. Não deu certo alguém sabe como colocar em OT 8.4??? Ou se existe um sistema desses melhor??? Compartilhar este post Link para o post
Kofesco II 0 #11 Postado 20 Março, 2009 Descobri o que tinha feito de errado. Apesar de ngm ter me ajudado vlw Compartilhar este post Link para o post
x bruno x 0 #12 Postado 24 Março, 2009 Roxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx maneiro Compartilhar este post Link para o post
mercav800 0 #13 Postado 28 Abril, 2009 eu q nunca vi isso eu achei mtu loko Compartilhar este post Link para o post
Arch 0 #14 Postado 15 Maio, 2009 retiraram o video do youtube alguem pode postar ss d como fazer no mapa e como funciona? Compartilhar este post Link para o post
abcdefghj 0 #15 Postado 28 Maio, 2009 Segui o Readme e tentei atualizar para 8.4. Não deu certo alguém sabe como colocar em OT 8.4??? Ou se existe um sistema desses melhor??? tou com a mesma duvida do mano ai Compartilhar este post Link para o post
vinitc 0 #16 Postado 26 Dezembro, 2009 estou a reviver esse topico pois preciso dessa script eu copiei os arquivo para a pasta,copiei o treco das actions.xml fiz um cenario e pus um vagao em cima dos trilhios coloquei action id nele como pede n vai alguem me ajuda plz Compartilhar este post Link para o post
God Pedro 0 #17 Postado 4 Janeiro, 2010 (editado) pow alguem ajuda ae eu naum to danu conta de instala esse script ai naum aonde poe os ids, como faz os treco aee pow esplica melhor ae!! tem muita gente que não ta conseguindo usar isso ai eu ja coloquei o id 1001 e 1002 no carrinho nos trilhos ja fiz de tudo eu dou use no carrinho e naum acontece nada e ngm ajuda a gente affs q paia!!!!!!!! ae por favor se alguem puder explicar isso ai melhor de como instala oq tem q fazer tudo certinho etc.. eu ja agradeço Muito Muito Very Very Thanks Obrigado!! Editado 4 Janeiro, 2010 por God Pedro errei Compartilhar este post Link para o post
KuawiT 0 #19 Postado 13 Janeiro, 2010 Cara eu te amo (sem viadage) valeu msm (: Compartilhar este post Link para o post
Pertonf 0 #20 Postado 9 Janeiro, 2011 pow alguem ajuda ae eu naum to danu conta de instala esse script ai naum aonde poe os ids, como faz os treco aee pow esplica melhor ae!! tem muita gente que não ta conseguindo usar isso ai eu ja coloquei o id 1001 e 1002 no carrinho nos trilhos ja fiz de tudo eu dou use no carrinho e naum acontece nada e ngm ajuda a gente affs q paia!!!!!!!! ae por favor se alguem puder explicar isso ai melhor de como instala oq tem q fazer tudo certinho etc.. eu ja agradeço Muito Muito Very Very Thanks Obrigado!! To com o mesmo problema meu proble é identico com o de vc porfavor alguem ajuda ai pf Compartilhar este post Link para o post