Versão do ot 8.55
tipo eu queria que tivesse um tile (piso) que o player so pudesse passar se ele falasse com algum npc pedindo uma missão
grato désdejá
Versão do ot 8.55
tipo eu queria que tivesse um tile (piso) que o player so pudesse passar se ele falasse com algum npc pedindo uma missão
grato désdejá
We are the fiend club !
Trabalhos!!
Faça um npc que de um storage id para pessoa, depois faça uma action que cheque se o player tem o storage id.
Obs:Nao fiz o script pq to na casa a minha tia, n tenho nada aki pra fazer o script =/
Yours Mkalo
eu entendi td o que vc disse só que eu ainda não so bom em criar scripts tenho dificuldade nisso ainda
quando puder posta o script aew
We are the fiend club !
Trabalhos!!
NPC:
Em data/npc crie um arquivo chamado questpermission.xml e adicione o seguinte código:
<?xml version="1.0" encoding="UTF-8"?> <npc name="Lector" script="data/npc/scripts/permission.lua" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="128" head="20" body="100" legs="50" feet="99" corpse="2212"/> <parameters> <parameter key="message_greet" value="Hello |PLAYERNAME|. Se Deseja fazer a quest diga {quest}" /> </parameters> </npc>
Agora crie um arquivo chamado permission.lua em data/npc/script e adicione o seguinte código:
local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end -- Script by Focost function questf(cid, message, keywords, parameters, node) if(not npcHandler:isFocused(cid)) then return false end if getPlayerStorageValue(cid, 91012) == -1 then npcHandler:say('Ok, Agora você esta permitido ir!', cid) setPlayerStorageValue(cid, 91012, 1) else npcHandler:say('Você ja tem permissão para ir para quest!', cid) end end local node1 = keywordHandler:addKeyword({'quest'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Tem certeza que quer a permissão para fazer esta quest?'}) node1:addChildKeyword({'yes'}, questf, {npcHandler = npcHandler, onlyFocus = true, reset = true}) node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, Good bye then.', reset = true}) npcHandler:addModule(FocusModule:new())
TILE:
Agora vá em data/movements e abra o arquivo chamado movements.lua adicione abaixo de <movements> isso:
<movevent type="StepIn" actionid="4562" event="script" value="viptile.lua"/>
Depois va em data/movements/scripts e crie um novo arquivo chamado viptile.lua e adicione o seguinte código:
function onStepIn(cid, item, position, fromPosition) if getPlayerStorageValue(cid, 91012) <= 0 then doTeleportThing(cid, fromPosition) doPlayerSendCancel(cid, "Você não pode acessar esta area sem pedir permissão.") else doPlayerSendTextMessage(cid, 22, "Boa Sorte!") end return true end
No map editor procure os tiles que você quer e nele em ACTIONID você adiciona o número 91012
Espero ter ajudado!
Qualquer problema estou ai...
Pow cara valeu ;D
We are the fiend club !
Trabalhos!!