Histórico de Edições
Please note that revisions older than 15 days are pruned and will no longer show here
Não há histórico de edição para mostrar, ou este comentário foi editado por um moderador.
-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por Lokozoido
Olá galera do TK,procurei tanto um script de porta com level e não conseguir achar um que funcionasse,então decidi modificar uma script para passar na porta com tal level
Primeiro vai em data/actions/scripts
Crie um arquivo.lua (no caso criei portalvl.lua)
Abra e cole isso lá
Agora vá em data/actions/actions.xml
E adicione isso:
Explicação:
if getPlayerLevel(cid) >= 250 then=Level necessário para passar.
doTeleportThing(cid, {x=1993,y=2187,z=8})= Posição para onde o player será enviado ao clicar na porta
doPlayerSendCancel(cid, "Voce nao tem level 250 para passar.")= Mensagem ao aparecer quando o player não tiver o level necessário
<action actionid="5457" event="script" value="portalvl.lua"/>
Numero para por na porta
Nome do arquivo.lua
Ajudei?RAP+
-
Por Liru
Eu vim aqui pedir um script de uma Porta que só abre se você der um certo item pra ela, e depois de um certo tempo ela fecha e você mesmo tendo o item, não pode passar por ela novamente.
Eu procurei por muitos lugares, mas não achei esse script, os que achei não funcionavam. E eu to dependendo disso pra fazer uma quest do ot.
Eu uso a Base Cyan, se isso importar.
Quem puder ajudar ai rep+
-
Por Digoshow
Pessoal, procurei muiito e não consegui achar, alguem poderia me ajudar a fazer um script action de porta que só jogadores premium account consiga abri-lá?
Uso TFS 0.4, REP+!
-
Por principe sharingan
Bom galera é o seguinte, eu tentei criar um NPC que teleporta por X item. Mas sempre dava um erro quando vai adiciona-lo no mapa. Ai resolvi fazer uma Script que quando você clica na Estatua, porta, parede ou coisa do tipo você é teleportado se tiver X Item.
( PS: Quando vc é teleportado o item não é removido de sua bag. Você cotinua com o item, como se fosse uma permissão !! )
Bom, vamos deixar de papo furado, e vamos ao que interessa. Vai em: data/actions/scripts crie um arquivo .lua com o nome que você quiser e cole isso:
Agora vá em actions.xml e cole essa tag:
Action ID
Nome do arquivo que você criou em: data/actions/scripts
-
Por Cat
Venho trazer a vocês essa adaptação que eu fiz pra minha datapack.
Estava configurando novas door ids e pesquisei alguns tópicos procurando por scripts específicos, e não encontrei. Além disso, notei que muitas pessoas tiveram problemas para adicionar novas portas utilizando o script comum doors ou outros; ou não foram respondidas em vários tópicos.
CONFIGURAR NOVAS DOOR IDS!
Esse código é para novas portas especiais, duplicadas, de eventos ou quests..
Demonstração:
Instalação:
Utilizarei os ids:
Horizontal: Fechada: 12149 / Aberta: 12151
Vertical: Fechada: 12158 / Aberta: 12160
------- • -------
PARTE 1
--- • ---
• Abra data/itens/itens.xml e altere os dois ids das portas que você quer editar, assim como eu fiz:
<item id="12149" article="a" name="closed door"> <attribute key="type" value="door" /> <attribute key="blockprojectile" value="1" /> </item> <item id="12151" article="an" name="open door"> <attribute key="type" value="door" /> </item> <item id="12158" article="a" name="closed door"> <attribute key="type" value="door" /> <attribute key="blockprojectile" value="1" /> </item> <item id="12160" article="an" name="open door"> <attribute key="type" value="door" /> </item>
• Em data/movements/scripts crie uma pasta doors
- Nessa pasta você poderá adicionar outros ids de portas futuramente e manter organizado.
- Dentro de doors, crie dois arquivos: closingdoorH e closingdoorV (.lua) e cole o mesmo código abaixo nos dois:
- Se seus ids forem diferentes presta atenção nessa parte, na antepenúltima linha dos dois scripts:
--> | doTransformItem(item.uid, item.itemid - 2) | <--
• O que essa linha faz:
- Se a minha porta ABERTA é ID12151, ao tirar o pé pra fora dela essa linha vai fazer a porta se transformar em 2 ids anteriores, nesse caso a porta FECHADA ID 12149.
(12151 - 12149 = 2)
- Então por exemplo, se a sua porta aberta for 12180 e a fechada 12150, é assim que tem que ser:
--> | doTransformItem(item.uid, item.itemid - 30) | <--
Código:
function onStepOut(cid, item, position, fromPosition) if(getTileInfo(position).creatures > 0) then return true end local newPosition = {x = position.x, y = position.y, z = position.z} if(isInArray(verticalOpenDoors, item.itemid)) then newPosition.x = newPosition.x + 1 else newPosition.y = newPosition.y + 1 end doRelocate(position, newPosition) local tmpPos = position tmpPos.stackpos = -1 local i, tmpItem, tileCount = 1, {uid = 1}, getTileThingByPos(tmpPos) while(tmpItem.uid ~= 0 and i < tileCount) do tmpPos.stackpos = i tmpItem = getTileThingByPos(tmpPos) if(tmpItem.uid ~= item.uid and tmpItem.uid ~= 0 and not isMoveable(tmpItem.uid)) then doRemoveItem(tmpItem.uid) else i = i + 1 end end doTransformItem(item.uid, item.itemid - 2) return true end
Se preferir, use a versão configurável pra não se perder nas linhas:
Em data/movements/movements.xml
<movevent type="StepOut" itemid="12151" event="script" value="doors/closingdoorh.lua"/> <movevent type="StepOut" itemid="12160" event="script" value="doors/closingdoorv.lua"/>
------- • -------
PARTE 2
--- • ---
Em data/actions/actions.xml adicionei:
<action itemid="12149" event="script" value="doors/door01.lua"/> <action itemid="12158" event="script" value="doors/door02.lua"/>
• Em data/actions/scripts crie uma pasta doors
- Nessa pasta você poderá adicionar outros ids de portas futuramente e manter organizado.
- Dentro de doors, crie dois arquivos: door01 e door02.
- No meu caso, como as duas portas tem a mesma diferença de IDS o script fica o mesmo, então vou colar apenas 1 e você configura como quiser.
door01.lua/door02.lua
function onUse(cid, fromPos, toPos, itemEx) local config = { did = 2, -- Diferença de IDS entre a portas fechada/aberta level = 100, -- level necessario eff = 14, -- efeito ao abrir a porta txt = MESSAGE_EVENT_ADVANCE, -- txt = tipo e cor da mensagem. -- -- ... -- Exemplo: txt = MESSAGE_EVENT_ADVANCE, -- } -- -- MESSAGE_STATUS_CONSOLE_RED -> Texto em vermelho no default chat. -- MESSAGE_STATUS_CONSOLE_ORANGE -> Texto em laranja no default chat. -- MESSAGE_STATUS_CONSOLE_BLUE -> Texto em azul no default chat. -- MESSAGE_EVENT_ADVANCE -> Texto em branco na tela. -- MESSAGE_STATUS_WARNING -> Texto em vermelho na tela. -- MESSAGE_INFO_DESCR -> Texto em verde na tela. -- MESSAGE_EVENT_DEFAULT -> Texto em branco no server log. } local levelcheck = getPlayerLevel(cid) if levelcheck >= config.level then doTeleportThing(cid, toPos) doSendMagicEffect(getCreaturePosition(cid), (config.eff)) doTransformItem(itemEx.uid, itemEx.itemid + config.did) else doPlayerSendTextMessage(cid, config.txt, "Voce precisa ter level " ..config.level.." para entrar aqui") end end
Informações no script.
-