Vamos começar pelo NPC.
Crie um arquivo chamado npcquest.lua na pasta data/npc/scripts e cole isso dentro
Crie um arquivo chamado Npc Quest.xml na pasta data/npc e cole isso dentro
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Nome Npc" script="data/npc/scripts/npcquest.lua" walkinterval="25" floorchange="0" access="5" level="1" maglevel="1">
<health now="150" max="150"/>
<look type="128" head="97" body="100" legs="115" feet="114" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Hello, |PLAYERNAME|! Would like to do a {mission} for me?"/>
<parameter key="message_walkaway" value="Hey Hey, where you go?"/>
<parameter key="message_farewell" value="Goodbye |PLAYERNAME|."/>
</parameters>
</npc>
Configurando
Agora vamos para a porta
Actions
Crie um arquivo chamado storagedoor.lua na pasta data/action/scripts e cole isso dentro
function onUse(cid, item, frompos, item2, topos)
if getPlayerStorageValue(cid, 30003) >= 1 then
doTransformItem(item.uid,item.itemid+1)
doTeleportThing(cid, topos)
else
doPlayerSendTextMessage(cid, 22, 'You don\'t have access to area.')
end
end
Adicione a seguinte linha no arquivo actions.xml que esta na pasta data/actions
<action actionid="4587" event="script" value="storagedoor.lua" />
Movements
Crie um arquivo chamado storagedoor.lua na pasta data/movements/scripts e cole isso
function onStepOut(cid, item, position, fromposition)
doTransformItem(item.uid,item.itemid-1)
end
Adicione a seguinte linha no arquivo movements.xml que esta na pasta data/movements
<movements type="StepOut" actionid="4587" event="script" value="storagedoor.lua" />
MapEditor
No MapEditor coloque a porta com o Action ID 4587
Não testei caso der erro avise.
Dúvidas? Me avise.
@EDIT
Editei o script do NPC pois tinha esquecido de algo.
(OBS: Use portas que ela fechada seja um ID antes da aberta, ex: Fechada: 5112 e Aberta: 5113)
Att.
Giovani Rodrigo