uchihaitachii 0 Postado Julho 25, 2009 Share Postado Julho 25, 2009 Eu presizo de um npc que quando o cara nao tem vorcaçao(0) vAI NELE E FALA HI E ESCOLHE A VORCAÇAO(EXEMPLO SORCERER) SOR Q ELE NAO GANHA APENAS A VORCAÇAO MAIS TAMBEM OUTFIT EXEMPLO: UCHIHA OUTFIT 10 VORCATION 1 ME AJUDEM Link para o comentário Compartilhar em outros sites More sharing options...
canovas 3 Postado Julho 31, 2009 Share Postado Julho 31, 2009 Onde está vermelho, edite colocando o looktype(oufit) que o player ganhara a cada vocacao que ele escolher. No caso voce tera que trocar a roupa de um player e ver pelo database para escolher o looktype. Eu coloquei para o player nao receber addons, porem voce pode colocar para receber o primeiro addon(1) o segundo(2) ou os dois (3). Este npc nao foi testado por isso qualquer erro poste aqui mesmo ... Espero ter ajudado. Crie um arquivo chamado vocacoes.lua na pasta data/npc/scripts e insira o seguinte código ... -- script by Notorious -- shadowenforced.no-ip.biz 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 level = 100 local playerName = getCreatureName(cid) if msgcontains(msg, 'sim') then selfSay('Que vocacao voce deseja, {sorcerer}, {druid}, {knight} ou {paladin} ? ...', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'sorcerer') and talkState[talkUser] == 1) then if getPlayerVocation(cid) == 0 then doPlayerSetVocation(cid,1) doPlayerAddOutfit(cid,looktype, 0) selfSay('Parabéns, agora você é um Sorcerer !', cid) talkstate[talkUser] = 0 else selfSay('Você já possui uma vocação.', cid) talkstate[talkUser] = 0 end elseif(msgcontains(msg, 'druid') and talkState[talkUser] == 1) then if getPlayerVocation(cid) == 0 then doPlayerSetVocation(cid,2) doPlayerAddOutfit(cid,looktype, 0) selfSay('Parabéns, agora você é um Druid !', cid) else selfSay('Você já possui uma vocação.', cid) end elseif(msgcontains(msg, 'paladin') and talkState[talkUser] == 1) then if getPlayerVocation(cid) == 0 then doPlayerSetVocation(cid,4) doPlayerAddOutfit(cid,looktype, 0) selfSay('Parabéns, agora você é um Paladin !', cid) else selfSay('Você já possui uma vocação.', cid) end elseif(msgcontains(msg, 'knight') and talkState[talkUser] == 1) then if getPlayerVocation(cid) == 0 then doPlayerSetVocation(cid,3) doPlayerAddOutfit(cid,looktype, 0) selfSay('Parabéns, agora você é um Knight !', cid) else selfSay('Você já possui uma vocação.', cid) end elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then talkState[talkUser] = 0 selfSay('Até mais forasteiro ...', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Crie um arquivo chamado Oraculo.xml na pasta data/npc e insira o seguinte codigo ... <?xml version="1.0" encoding="UTF-8"?><npc name="Oraculo" script="data/npc/scripts/vocacoes.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="151" head="114" body="15" legs="80" feet="115" addons="2" corpse="2212"/> <parameters> <parameter key="module_shop" value="1"/> <parameter key="message_greet" value="Ola |PLAYERNAME|. Eu posso lhe transformar em uma das quatro {vocacoes}, o que voce deseja?"/> </parameters> </npc> Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados