Ir para conteúdo

Featured Replies

Postado

 

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 storage = 67413
local item = 2160   --- Item ID do item que será cobrado
local itemcost =  5   --- Quantidade do item que será cobrado

	if msgcontains(msg, 'sorcerer') then
	 if getPlayerItemCount(cid, item) <= itemcost then
	  selfSay('Você não tem a quantia necessária, lamento', cid)
	   else
		if getPlayerStorageValue(cid, storage) == -1 then
	        doPlayerRemoveItem(cid, item, itemcost)
			doPlayerSetVocation(cid, 1)
			doSendMagicEffect(getPlayerPosition(cid), 28)
			doPlayerSetStorageValue(cid, storage, 1)		
			selfSay('Parabéns {'..getPlayerName(cid)..'} agora você é um {'..getPlayerVocation(cid)..'}!', cid)
			doTeleportThing(cid,{x= 000, y=000, z=000})     ---- Aqui colocara as coordenadas que o player será mandado
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Bem vindo, novo' .. getPlayerVocation(cid) .. ' !')
		else
			selfSay('Desculpe {'..getPlayerName(cid)..'} mais você já tem uma vocação!', cid)
		end
		end
	
	elseif msgcontains(msg, 'druid') then
	 if getPlayerItemCount(cid, item) <= itemcost then
	  selfSay('Você não tem a quantia necessária, lamento', cid)
	   else
		if getPlayerStorageValue(cid, storage) == -1 then
		    doPlayerRemoveItem(cid, item, itemcost)
			doPlayerSetVocation(cid, 2)
			doSendMagicEffect(getPlayerPosition(cid), 28)
			doPlayerSetStorageValue(cid, storage, 1)		
			selfSay('Parabéns {'..getPlayerName(cid)..'} agora você é um {'..getPlayerVocation(cid)..'}!', cid)
			doTeleportThing(cid,{x= 000, y=000, z=000})    ---- Aqui colocara as coordenadas que o player será mandado
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Bem vindo, novo' .. getPlayerVocation(cid) .. ' !')
		else
			selfSay('Desculpe {'..getPlayerName(cid)..'} mais você já tem uma vocação!', cid)
		end	
		end

	elseif msgcontains(msg, 'paladin') then
	 if getPlayerItemCount(cid, item) <= itemcost then
	  selfSay('Você não tem a quantia necessária, lamento', cid)
	   else
		if getPlayerStorageValue(cid, storage) == -1 then
		    doPlayerRemoveItem(cid, item, itemcost)
			doPlayerSetVocation(cid, 3)
			doSendMagicEffect(getPlayerPosition(cid), 28)
			doPlayerSetStorageValue(cid, storage, 1)		
			selfSay('Parabéns {'..getPlayerName(cid)..'} agora você é um {'..getPlayerVocation(cid)..'}!', cid)
			doTeleportThing(cid,{x= 000, y=000, z=000})    ---- Aqui colocara as coordenadas que o player será mandado
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Bem vindo, novo' .. getPlayerVocation(cid) .. ' !')
		else
			selfSay('Desculpe {'..getPlayerName(cid)..'} mais você já tem uma vocação!', cid)
		end
		end
		
	elseif msgcontains(msg, 'knight') then
	 if getPlayerItemCount(cid, item) <= itemcost then
	  selfSay('Você não tem a quantia necessária, lamento', cid)
	   else
		if getPlayerStorageValue(cid, storage) == -1 then
		    doPlayerRemoveItem(cid, item, itemcost)
			doPlayerSetVocation(cid, 4)
			doSendMagicEffect(getPlayerPosition(cid), 28)
			doPlayerSetStorageValue(cid, storage, 1)		
			selfSay('Parabéns {'..getPlayerName(cid)..'} agora você é um {'..getPlayerVocation(cid)..'}!', cid)
			doTeleportThing(cid,{x= 000, y=000, z=000})    ---- Aqui colocara as coordenadas que o player será mandado
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Bem vindo, novo' .. getPlayerVocation(cid) .. ' !')
		else
			selfSay('Desculpe {'..getPlayerName(cid)..'} mais você já tem uma vocação!', cid)
		end
		end
	end
return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())  

 

 

 

 

 

 

 

 

Pra configurar o item que será cobrado, e a quantidade, basta editar:

local item = 2160   --- Item ID do item que será cobrado
local itemcost =  5   --- Quantidade do item que será cobrado

Editado por Nogard (veja o histórico de edições)


spacer.png

 

 

  • 3 years later...
  • Respostas 6
  • Visualizações 1.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Bem amigo ver se isso te ajuda   vá em data/npc crie um arquivo chamado vocation.xml e coloque isso dentro.       Agora vá em data/npc/scripts e crie um arquivo chamado vocation.lua e co

  • arquivo.xml <?xml version="1.0"?> <npc name="Daniel" script="data/npc/scripts/setvocation.lua" walkinterval="1000" floorchange="0"> <health now="100" max="100"/> <look type="133

  • local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:o

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo