Postado Abril 30, 2013 12 anos Gostaria de pedir um NPC para a versão 8.60 que funcionasse da seguinte forma: Esse NPC iria verificar quem é e quem não é VIP e quem fosse VIP seria teleportado para x local. Quando o player fosse falar com ele, ele falaria: Preciso verificar se você é VIP para poder ter acesso a esta área. Diga "ok" para eu verificar. Quando o player falasse "ok", iria aparecer pra quem não fosse: Desculpe, mas você não é VIP e não pode ter acesso a essa área. E para quem é VIP: Você foi teleportado para a área VIP. Faça bom proveito desta área! Nome do npc: VIP Check Editado Abril 30, 2013 12 anos por zodiak (veja o histórico de edições)
Postado Abril 30, 2013 12 anos Autor Ainda não há VIP... Se possível, no lugar da storage colocar o "x" para que depois eu possa modifica-lo quando eu criar.
Postado Abril 30, 2013 12 anos Crie um arquivo chamado npcteleporvip.lua na pasta data/npc/scripts e cole isto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} 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 function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local toPos = {x=160, y=154, z=7} local storage = 12345 if msgcontains(msg, 'ok') then if getPlayerStorageValue(cid, storage) >= 1 then doTeleportThing(cid, toPos) doSendMagicEffect(toPos, 10) npcHandler:say('You have been teleported to the VIP area, make good use of it!', cid) else npcHandler:say('Sorry, but you are not VIP and can not have access to this area.', cid) end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Configurando local toPos = {x=160, y=154, z=7} local storage = 12345 storage //Storage da VIP toPos //Posição que o jogador será teletransportado Crie um arquivo chamado NpcVIP.xml na pasta data/npc e cole isto <?xml version="1.0" encoding="UTF-8"?> <npc name="Nome Npc" script="data/npc/scripts/npcteleporvip.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 know the VIP area? If yes says {ok}"/> <parameter key="message_walkaway" value="Hey Hey, where you go?"/> <parameter key="message_farewell" value="Goodbye |PLAYERNAME|."/> </parameters> </npc> Configurando <npc name="Nome Npc" script="data/npc/scripts/npcteleporvip.lua" walkinterval="25" floorchange="0" access="5" level="1" maglevel="1"> name="Nome Npc" //Aqui você coloca o nome do NPC Não testado, se der erro avise. Dúvidas? Me avise. Att. Giovani Rodrigo Editado Abril 30, 2013 12 anos por GiovaniRodrigo (veja o histórico de edições) Spoiler local config = { delrey = getPlayerCarValue(cid, DELREY), cigarro = getPlayerCancer(cid, DERBY), prostituta = getPlayerAIDS(cid, cracuda), tresOitao = getPlayerRevorvi(cid, 38) } if(delrey == "Ligado" and cigarro == "Aceso" and prostituta == "No Colo" and tresOitao == "Carregado") then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Começou o fim de semana. #PAS") end
Postado Maio 4, 2013 12 anos Autor Bom, ainda não testei, mas cliquei em Gostei pela ajuda. Qualquer coisa eu posto aqui
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.