Sam 55 Postado 27 de Novembro Compartilhar Postado 27 de Novembro <action itemid="9564" event="script" value="snakesys.lua"/> function onUse(cid, item, frompos, item2, topos) if not isPlayer(getGlobalStorageValue(SNAKE.freeglobalstorage)) then doTeleportThing(cid,SNAKE.controlpos) SNAKE.timer(cid,1,nil,item.actionid == 0 and 500 or item.actionid) doPlayerSendTextMessage(cid,25,'Hold key CTRL and use the arrows to control snake.') SNAKE.generateFood() else doPlayerSendTextMessage(cid,25,'Please wait.') end end --[[ Script by Mock the bear ]] SNAKE = { _VERSION="1.0 by mock", ---Snake config itemid=1739, freeglobalstorage=28103, itemFood=6394, controlpos={x=1013,y=1164,z=6}, exitpos = {x=1009,y=1157,z=7}, centerpos={x=1012,y=1163,z=7}, timer = function(cid,n,pos_,time) local pos_ = pos_ or {{SNAKE.centerpos}} setGlobalStorageValue(SNAKE.freeglobalstorage,cid) if not isPlayer(cid) then SNAKE.clean() return end for i,pos in pairs(pos_) do SNAKE.find_and_delete(pos[1]) if i == 1 then pos[2] = SNAKE.copypos(pos[1]) pos[1] = getPosByDir({x=pos[1].x,y=pos[1].y,z=pos[1].z,stackpos=255},getCreatureLookDir(cid)) else pos[2] = SNAKE.copypos(pos[1]) pos[1] = pos_[i-1][2] end local ret,p,walk = SNAKE.check(pos[1]) if ret == 1 or ret == 3 then addEvent(doTeleportThing,1000,cid,SNAKE.exitpos) addEvent(doCreatureSay,1100,cid,'Points '..(#pos_-1)..'.') SNAKE.clean() setGlobalStorageValue(SNAKE.freeglobalstorage,0) return end if ret == 2 then doRemoveItem(p.uid,-1) if p.itemid == SNAKE.itemFood then pos_[#pos_+1] = {pos[2],pos[2]} for i=1,5 do addEvent(doSendMagicEffect,100*i,pos[1],29) end SNAKE.generateFood() end end doCreateItem(SNAKE.itemid,1,pos[1]) end local plpos = getCreaturePosition(cid) local generated = {} for i=0,3 do generated = getPosByDir({x=SNAKE.controlpos.x,y=SNAKE.controlpos.y,z=SNAKE.controlpos.z},i) end for i,pos in pairs(generated) do if SNAKE.samepos(plpos,pos) then doTeleportThing(cid,SNAKE.controlpos,false) end addEvent(doSendMagicEffect,100,pos,56,cid) end addEvent(SNAKE.timer,time,cid,n,pos_,time) end, copypos = function(p) return {x=p.x,y=p.y,z=p.z,stackpos=p.stackpos} end, samepos = function(p1,p2) if p1.x == p2.x and p2.y == p2.y then return true end return false end, generateFood = function() local pp = {x=SNAKE.centerpos.x+math.random(-6,6),y=SNAKE.centerpos.y+math.random(-4,4),z=SNAKE.centerpos.z} for i=1,5 do addEvent(doSendMagicEffect,100*i,pp,30) end doCreateItem(SNAKE.itemFood,1,pp) end, clean = function() for y=-4,4 do for x=-6,6 do local pp = {x=SNAKE.centerpos.x+x,y=SNAKE.centerpos.y+y,z=SNAKE.centerpos.z} for i=250,255 do pp.stackpos = i local p = getThingFromPos(pp) if p.itemid ~= 0 then doRemoveItem(p.uid,-1) doSendMagicEffect(pp,15) end end end end end, check = function(pos) for i=1,10 do pos.stackpos = i local p = getThingFromPos(pos) if p.itemid == SNAKE.itemid then return 1,p,true elseif not SNAKE.isWalkable(pos) then return 3,p,false elseif p.itemid ~= 0 then return 2,p end end return false end, find_and_delete = function(pos) for i=0,255 do pos.stackpos = 255-i local p = getThingFromPos(pos) if p.itemid == SNAKE.itemid then return doRemoveItem(p.uid,1) end end end, isWalkable = function(pos, creature, proj, pz)-- by Nord if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end if getTopCreature(pos).uid > 0 and creature then return false end if getTileInfo(pos).protection and pz then return false, true end local n = not proj and 3 or 2 for i = 0, 255 do pos.stackpos = i local tile = getTileThingByPos(pos) if tile.itemid ~= 0 and not isCreature(tile.uid) then if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then return false end end end return true end, } Link para o comentário https://tibiadevs.com/forums/topic/1319-eu-n%C3%A3o-to-conseguindo-configura-snake-system-para-tfs-036/ Compartilhar em outros sites Mais opções de compartilhamento...
morduk 736 Postado 28 de Novembro Compartilhar Postado 28 de Novembro Explica um pouco o que esse sistema faz Link para o comentário https://tibiadevs.com/forums/topic/1319-eu-n%C3%A3o-to-conseguindo-configura-snake-system-para-tfs-036/#findComment-6856 Compartilhar em outros sites Mais opções de compartilhamento...
Sam 55 Postado 28 de Novembro Autor Compartilhar Postado 28 de Novembro Já Consegui Arruma VLW. Link para o comentário https://tibiadevs.com/forums/topic/1319-eu-n%C3%A3o-to-conseguindo-configura-snake-system-para-tfs-036/#findComment-6860 Compartilhar em outros sites Mais opções de compartilhamento...
Administrador Yomee 4863 Postado 5 de Dezembro Administrador Compartilhar Postado 5 de Dezembro Tópico fechado e movido para a área de resolvidos, visto que o problema já foi solucionado. Link para o comentário https://tibiadevs.com/forums/topic/1319-eu-n%C3%A3o-to-conseguindo-configura-snake-system-para-tfs-036/#findComment-6909 Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados