Ir para conteúdo
  • Cadastre-se

Scripting Troca de item por pokemon + set nick


Posts Recomendados

.Qual servidor ou website você utiliza como base? 

pokestorm

Qual o motivo deste tópico? 

Ajuda com Adaptação

 

Salve Galera queria saber se é possivel fazer com que o npc troca o item pelo pokemon como abaixo e apenas aceitar a troca se setar o Nick no pokemon

 

Você tem o código disponível? Se tiver publique-o aqui: 

Abaixo Npc que troca Item por poke

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 questSt = 6650
	local checkQuest = getPlayerStorageValue(cid,questSt)
	local playerPos = getCreaturePosition(cid)
	local playerLevel = getPlayerLevel(cid)
	local questLevel = 100
	local tab = {
		[1] = {fName = "Dome Fossil", fId = 8776, pName = "Kabuto"},
		[2] = {fName = "Helix Fossil", fId = 8777, pName = "Omanyte"},
		[3] = {fName = "Ancient Fossil", fId = 8775, pName = "Aerodactyl"},
	}

	if(msgcontains(msg, 'Harry')) then
		if checkQuest < 1 then -- Quer saber mais
			selfSay('Sorry, but I have nothing to talk to you.', cid)
		elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1.
			selfSay('Oh! How is my husband? Is he fine? There are two years since I last seen him! By the way, are you here to give me {something}?', cid)
			talkState[talkUser] = 1
		else  -- Quer saber mais mas já fez a Parte Final.
			selfSay('How are you doing with your ancient pokémon?', cid)
		end
		
	elseif(msgcontains(msg, 'Something') and talkState[talkUser] == 1) then -- Tem algo pra dar
		talkState[talkUser] = 2
		selfSay('Yes, as I expected. Let me check one thing.', cid)
		selfSay('As I see, Harry has given you the '..tab[checkQuest].fName..'. After many years of study and dedication, I discovered a method to bring fossils back to life. Do you want me to transform your '..tab[checkQuest].fName..' into '..tab[checkQuest].pName..'? Just say {yes} or {no}.', cid)
	
	elseif talkState[talkUser] == 2 then
		if msgcontains(msg, 'Yes') then -- Quer transformar o fossil
			if getPlayerItemCount(cid, tab[checkQuest].fId) >= 1 then
				selfSay('Fine then! There it is, your '..tab[checkQuest].fName..' has been transformed into '..tab[checkQuest].pName..'! Congratulations!', cid)
				if #getPlayerPokeballs(cid) >= 6 then
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2469)
					doPlayerSendMailByName(getCreatureName(cid), newpokeball)
					doPlayerSendTextMessage(cid, 27, "You are holding six pokémons, your ("..tab[checkQuest].pName..") will be teleported to the Pokemon Center!")
				else
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2470)
					doPlayerAddItemEx(cid, newpokeball)
				end
					
				doPlayerRemoveItem(cid, tab[checkQuest].fId, 1)
				doSendMagicEffect(playerPos, 162)
				doSendMagicEffect(playerPos, 28)
				addEvent(doSendMagicEffect, 600, playerPos, 29)
				addEvent(doSendMagicEffect, 1200, playerPos, 28)
				setPlayerStorageValue(cid, questSt, 4)
			else
				selfSay("Sorry, but you have no "..tab[checkQuest].fName.." with you.",cid)
			end
			talkState[talkUser] = 0
			
		elseif msgcontains(msg, 'No') then -- Nao quer transformar o fossil
			selfSay('Right then. Then come back when you want it!', cid)
			talkState[talkUser] = 1
		end
	end
	return true
end

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

 

Npc Nick que uso na Base

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
local talkState = {}

function creatureSayCallback(cid, _type, msg)
	if(not npcHandler:isFocused(cid)) then
        return false
    end
	
	local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
	
	NickQuestStorage = 8850
	NickQuestBookId = 1955
	NickQuestGameBoyId = 2630
	local questStatus = getPlayerStorageValue(cid, NickQuestStorage)
	local playerLevel = getPlayerLevel(cid)

	
	if msgcontains(msg, "nicknames") then
		if isPremium(cid) then
			if playerLevel >=50 then
				if questStatus == -1 then
					selfSay("Before I give nicknames to your pokemons, can you do some favours to me?", cid)
					selfSay("I need a book that I lent to Albert, because it contains so much information that I use in my job. Last time I visited Albert he was living in a little house, in the east of Viridian.", cid)
					setPlayerStorageValue(cid, NickQuestStorage, 0)
				elseif questStatus == 0 then
					selfSay("I need a book that I lent to Albert, because it contains so much information that I use in my job. Last time I visited Albert he was living in a little house, in the east of Viridian.", cid)
				elseif questStatus == 1 then
					if doPlayerRemoveItem(cid, NickQuestBookId, 1) then
						setPlayerStorageValue(cid, NickQuestStorage, 2)
						selfSay("Thank you! I was really missing this book. Now just one more favour, can you get my Game Boy, which is with Ralf? I left with him to fix it, his workshop is in Celadon.", cid)
					else
						selfSay("I need a book that I lent to Albert, because it contains so much information that I use in my job. Last time I visited Albert he was living in a little house, in the east of Viridian.", cid)
					end
				elseif questStatus == 2 then
					selfSay("Can you get my Game Boy, which is with Ralf? I left with him to fix it, his workshop is in Celadon.", cid)
				elseif questStatus == 3 then
					if doPlayerRemoveItem(cid, NickQuestGameBoyId, 1) then
						setPlayerStorageValue(cid, NickQuestStorage, 4)
						selfSay("Thank you VERY MUCH! Now my son won't cry no more and I can do my job tranquil. Do you want me to give {nicknames} to your pokemons?", cid)
					else
						selfSay("Can you get my Game Boy, which is with Ralf? I left with him to fix it, his workshop is in Celadon.", cid)
					end
				elseif questStatus >= 4 then
					selfSay("Oh, ok. Would you like to {give} or {remove} a nickname?", cid)
					talkState[talkUser] = 1
				end
			else
				selfSay("Sorry, come back when you are level 50 or higher.", cid)
			end
		else
			selfSay("Hey, I'm so sorry, but you must be premium account to give nicknames to your pokemons", cid)
		end
		
	elseif talkState[talkUser] == 1 then
		if msgcontains(msg, "give") then
			selfSay("Oh, ok. Which nickname would you like to give to the pokemon in the slot?", cid)
			talkState[talkUser] = 2
		elseif msgcontains(msg, "remove") then
			selfSay("Oh, ok. You want to remove the nickname to the pokemon in the slot for 5K?", cid)
			talkState[talkUser] = 3
		end
		
	elseif talkState[talkUser] == 2 then
		local msg = msg:trim()
		if msg:len() < 4 then
			selfSay("This nickname is too short.", cid)
		elseif msg:len() > 15 then
			selfSay("This nickname is too long.", cid)
		elseif not isValidName(msg) then
			selfSay("This name contains invalid symbols.", cid)
		elseif getMonsterPokedex(msg, false) then
			selfSay("You can't use other's pokemon name.", cid)
		else
			selfSay("Would you like to give the nickname \""..msg.."\" to the pokemon in the slot for 10K?", cid)
			talkState[talkUser] = msg
		end
		
	elseif talkState[talkUser] == 3 then
		if msgcontains(msg, "yes") then
			local pokeball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
			if isPokeballOut(pokeball.itemid) then
				selfSay("Call your pokemon back before changing his nickname.", cid)
			elseif isPokeballIn(pokeball.itemid) then
				if doPlayerRemoveMoney(cid, 500000) then
					local pokeballInfo = getPokeballInfo(pokeball.uid)
					setPokeballDescription(pokeball.uid, pokeballInfo.name, false, pokeballInfo.health, pokeballInfo.healthmax)
					selfSay("Now your pokemon not have a nickname!", cid)
				else
					selfSay("Sorry, you don't have 5K.", cid)
				end
			else
				selfSay("There's no pokeball in the slot!", cid)
			end
		else
			selfSay("Ok then.", cid)
		end
		talkState[talkUser] = 0
		
	elseif type(talkState[talkUser]) == "string" then
		if msgcontains(msg, "yes") then
			local pokeball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
			if isPokeballOut(pokeball.itemid) then
				selfSay("Call your pokemon back before changing his nickname.", cid)
			elseif isPokeballIn(pokeball.itemid) then
				if doPlayerRemoveMoney(cid, 1000000) then
					local pokeballInfo = getPokeballInfo(pokeball.uid)
					setPokeballDescription(pokeball.uid, pokeballInfo.name, talkState[talkUser], pokeballInfo.health, pokeballInfo.healthmax)
					selfSay("Now your pokemon have a new nickname! Enjoy it :)", cid)
				else
					selfSay("Sorry, you don't have 10K.", cid)
				end
			else
				selfSay("There's no pokeball in the slot!", cid)
			end
		elseif msgcontains(msg, "no") then
			selfSay("Why not? This nickname was so good!", cid)
		end
		talkState[talkUser] = 0
		
	else
		talkState[talkUser] = 0
	end
	
	return true
end

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

 

w31Cm4K.png

 

PokeWorks-Pokemon Rpg Online

venha Fazer parte dessa Incrivel Aventura

Criar Conta

____________##___________

Object Builder 0.5.441 

Link para o post
Compartilhar em outros sites
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 questSt = 6650
	local checkQuest = getPlayerStorageValue(cid,questSt)
	local playerPos = getCreaturePosition(cid)
	local playerLevel = getPlayerLevel(cid)
	local questLevel = 100
	local tab = {
		[1] = {fName = "Dome Fossil", fId = 8776, pName = "Kabuto"},
		[2] = {fName = "Helix Fossil", fId = 8777, pName = "Omanyte"},
		[3] = {fName = "Ancient Fossil", fId = 8775, pName = "Aerodactyl"},
	}

	if(msgcontains(msg, 'Harry')) then
		if checkQuest < 1 then -- Quer saber mais
			selfSay('Sorry, but I have nothing to talk to you.', cid)
		elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1.
			selfSay('Oh! How is my husband? Is he fine? There are two years since I last seen him! By the way, are you here to give me {something}?', cid)
			talkState[talkUser] = 1
		else  -- Quer saber mais mas já fez a Parte Final.
			selfSay('How are you doing with your ancient pokémon?', cid)
		end
		
	elseif(msgcontains(msg, 'Something') and talkState[talkUser] == 1) then -- Tem algo pra dar
		talkState[talkUser] = 2
		selfSay('Yes, as I expected. Let me check one thing.', cid)
		selfSay('As I see, Harry has given you the '..tab[checkQuest].fName..'. After many years of study and dedication, I discovered a method to bring fossils back to life. Do you want me to transform your '..tab[checkQuest].fName..' into '..tab[checkQuest].pName..'? Just say {yes} or {no}.', cid)
	
	elseif talkState[talkUser] == 2 then
		if msgcontains(msg, 'Yes') then -- Quer transformar o fossil
			if getPlayerItemCount(cid, tab[checkQuest].fId) >= 1 then
				if getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, name) then
					selfSay('Sorry, your pokemon not have nickname', cid)
					talkState[talkUser] = 0
				end	
				selfSay('Fine then! There it is, your '..tab[checkQuest].fName..' has been transformed into '..tab[checkQuest].pName..'! Congratulations!', cid)
				if #getPlayerPokeballs(cid) >= 6 then
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2469)
					doPlayerSendMailByName(getCreatureName(cid), newpokeball)
					doPlayerSendTextMessage(cid, 27, "You are holding six pokémons, your ("..tab[checkQuest].pName..") will be teleported to the Pokemon Center!")
				else
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2470)
					doPlayerAddItemEx(cid, newpokeball)
				end
					
				doPlayerRemoveItem(cid, tab[checkQuest].fId, 1)
				doSendMagicEffect(playerPos, 162)
				doSendMagicEffect(playerPos, 28)
				addEvent(doSendMagicEffect, 600, playerPos, 29)
				addEvent(doSendMagicEffect, 1200, playerPos, 28)
				setPlayerStorageValue(cid, questSt, 4)
			else
				selfSay("Sorry, but you have no "..tab[checkQuest].fName.." with you.",cid)
			end
			talkState[talkUser] = 0
			
		elseif msgcontains(msg, 'No') then -- Nao quer transformar o fossil
			selfSay('Right then. Then come back when you want it!', cid)
			talkState[talkUser] = 1
		end
	end
	return true
end

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

 

Link para o post
Compartilhar em outros sites

deu este erro

 I/O warning : failed to load external entity "data/npc/Billy Fantasy.xml"
[Warning - Npc::loadFromXml] Cannot load npc file (data/npc/Billy Fantasy.xml).
Info: failed to load external entity "data/npc/Billy Fantasy.xml"

 

w31Cm4K.png

 

PokeWorks-Pokemon Rpg Online

venha Fazer parte dessa Incrivel Aventura

Criar Conta

____________##___________

Object Builder 0.5.441 

Link para o post
Compartilhar em outros sites
16 horas atrás, jenison06 disse:

deu este erro

 I/O warning : failed to load external entity "data/npc/Billy Fantasy.xml"
[Warning - Npc::loadFromXml] Cannot load npc file (data/npc/Billy Fantasy.xml).
Info: failed to load external entity "data/npc/Billy Fantasy.xml"

 

não é erro no script, é erro no xml

Link para o post
Compartilhar em outros sites

nussa mosquei no Npc agora nao passa da parte

20:15 Billy Fantasy: Sorry, but I have nothing to talk to you.

 

 

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 questSt = 7750
	local checkQuest = getPlayerStorageValue(cid,questSt)
	local playerPos = getCreaturePosition(cid)
	local playerLevel = getPlayerLevel(cid)
	local questLevel = 10
	local tab = {
		[1] = {fName = "Thor Costume", fId = 17487, pName = "Addon Electabuzz"},
	}

	if(msgcontains(msg, 'Fantasy')) then
		if checkQuest < 1 then -- Quer saber mais
			selfSay('Sorry, but I have nothing to talk to you.', cid)
		elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1.
			selfSay('Oh! How is my husband? Is he fine? There are two years since I last seen him! By the way, are you here to give me {something}?', cid)
			talkState[talkUser] = 1
		else  -- Quer saber mais mas já fez a Parte Final.
			selfSay('How are you doing with your addon pokémon?', cid)
		end
		
	elseif(msgcontains(msg, 'Something') and talkState[talkUser] == 1) then -- Tem algo pra dar
		talkState[talkUser] = 2
		selfSay('Yes, as I expected. Let me check one thing.', cid)
		selfSay('As I see, Billy Fantasy has given you the '..tab[checkQuest].fName..'. After many years of study and dedication, I discovered a new method to crafit fantasy pokemon. Do you want me to transform your '..tab[checkQuest].fName..' into '..tab[checkQuest].pName..'? Just say {yes} or {no}.', cid)
	
	elseif talkState[talkUser] == 2 then
		if msgcontains(msg, 'Yes') then -- Quer transformar o fossil
			if getPlayerItemCount(cid, tab[checkQuest].fId) >= 1 then
				if getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, name) then
					selfSay('Sorry, your pokemon not have nickname', cid)
					talkState[talkUser] = 0
				end	
				selfSay('Fine then! There it is, your '..tab[checkQuest].fName..' has been transformed into '..tab[checkQuest].pName..'! Congratulations!', cid)
				if #getPlayerPokeballs(cid) >= 6 then
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2469)
					doPlayerSendMailByName(getCreatureName(cid), newpokeball)
					doPlayerSendTextMessage(cid, 27, "You are holding six pokémons, your ("..tab[checkQuest].pName..") will be teleported to the Pokemon Center!")
				else
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2470)
					doPlayerAddItemEx(cid, newpokeball)
				end
					
				doPlayerRemoveItem(cid, tab[checkQuest].fId, 1)
				doSendMagicEffect(playerPos, 162)
				doSendMagicEffect(playerPos, 28)
				addEvent(doSendMagicEffect, 600, playerPos, 29)
				addEvent(doSendMagicEffect, 1200, playerPos, 28)
				setPlayerStorageValue(cid, questSt, 4)
			else
				selfSay("Sorry, but you have no "..tab[checkQuest].fName.." with you.",cid)
			end
			talkState[talkUser] = 0
			
		elseif msgcontains(msg, 'No') then -- Nao quer transformar o fossil
			selfSay('Right then. Then come back when you want it!', cid)
			talkState[talkUser] = 1
		end
	end
	return true
end

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

 

w31Cm4K.png

 

PokeWorks-Pokemon Rpg Online

venha Fazer parte dessa Incrivel Aventura

Criar Conta

____________##___________

Object Builder 0.5.441 

Link para o post
Compartilhar em outros sites
9 minutos atrás, jenison06 disse:

nussa mosquei no Npc agora nao passa da parte

20:15 Billy Fantasy: Sorry, but I have nothing to talk to you.

 

 


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 questSt = 7750
	local checkQuest = getPlayerStorageValue(cid,questSt)
	local playerPos = getCreaturePosition(cid)
	local playerLevel = getPlayerLevel(cid)
	local questLevel = 10
	local tab = {
		[1] = {fName = "Thor Costume", fId = 17487, pName = "Addon Electabuzz"},
	}

	if(msgcontains(msg, 'Fantasy')) then
		if checkQuest < 1 then -- Quer saber mais
			selfSay('Sorry, but I have nothing to talk to you.', cid)
		elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1.
			selfSay('Oh! How is my husband? Is he fine? There are two years since I last seen him! By the way, are you here to give me {something}?', cid)
			talkState[talkUser] = 1
		else  -- Quer saber mais mas já fez a Parte Final.
			selfSay('How are you doing with your addon pokémon?', cid)
		end
		
	elseif(msgcontains(msg, 'Something') and talkState[talkUser] == 1) then -- Tem algo pra dar
		talkState[talkUser] = 2
		selfSay('Yes, as I expected. Let me check one thing.', cid)
		selfSay('As I see, Billy Fantasy has given you the '..tab[checkQuest].fName..'. After many years of study and dedication, I discovered a new method to crafit fantasy pokemon. Do you want me to transform your '..tab[checkQuest].fName..' into '..tab[checkQuest].pName..'? Just say {yes} or {no}.', cid)
	
	elseif talkState[talkUser] == 2 then
		if msgcontains(msg, 'Yes') then -- Quer transformar o fossil
			if getPlayerItemCount(cid, tab[checkQuest].fId) >= 1 then
				if getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, name) then
					selfSay('Sorry, your pokemon not have nickname', cid)
					talkState[talkUser] = 0
				end	
				selfSay('Fine then! There it is, your '..tab[checkQuest].fName..' has been transformed into '..tab[checkQuest].pName..'! Congratulations!', cid)
				if #getPlayerPokeballs(cid) >= 6 then
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2469)
					doPlayerSendMailByName(getCreatureName(cid), newpokeball)
					doPlayerSendTextMessage(cid, 27, "You are holding six pokémons, your ("..tab[checkQuest].pName..") will be teleported to the Pokemon Center!")
				else
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2470)
					doPlayerAddItemEx(cid, newpokeball)
				end
					
				doPlayerRemoveItem(cid, tab[checkQuest].fId, 1)
				doSendMagicEffect(playerPos, 162)
				doSendMagicEffect(playerPos, 28)
				addEvent(doSendMagicEffect, 600, playerPos, 29)
				addEvent(doSendMagicEffect, 1200, playerPos, 28)
				setPlayerStorageValue(cid, questSt, 4)
			else
				selfSay("Sorry, but you have no "..tab[checkQuest].fName.." with you.",cid)
			end
			talkState[talkUser] = 0
			
		elseif msgcontains(msg, 'No') then -- Nao quer transformar o fossil
			selfSay('Right then. Then come back when you want it!', cid)
			talkState[talkUser] = 1
		end
	end
	return true
end

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

 

vc testou com a quantidade de item certo, certeza?

Link para o post
Compartilhar em outros sites

achei o problema e que precisa de 2 script pra dar certo.. deu certo porem nao pede nick 

abaixo vou postar os arquivos .

 

o que vc fez esse que esta certo

Spoiler



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 questSt = 7750
	local checkQuest = getPlayerStorageValue(cid,questSt)
	local playerPos = getCreaturePosition(cid)
	local playerLevel = getPlayerLevel(cid)
	local questLevel = 10
	local tab = {
		[1] = {fName = "Thor Costume", fId = 17487, pName = "Addon Electabuzz"},
		[2] = {fName = "Helix Fossil", fId = 8777, pName = "Omanyte"},
		[3] = {fName = "Ancient Fossil", fId = 8775, pName = "Aerodactyl"},
	}

	if(msgcontains(msg, 'Cristin')) then
		if checkQuest < 1 then -- Quer saber mais
			selfSay('Sorry, but I have nothing to talk to you.', cid)
		elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1.
			selfSay('Oh! How is my husband? Is he fine? There are two years since I last seen him! By the way, are you here to give me {Costume}?', cid)
			talkState[talkUser] = 1
		else  -- Quer saber mais mas já fez a Parte Final.
			selfSay('How are you doing with your addon pokémon?', cid)
		end
		
	elseif(msgcontains(msg, 'costume') and talkState[talkUser] == 1) then -- Tem algo pra dar
		talkState[talkUser] = 2
		selfSay('Yes, as I expected. Let me check one thing.', cid)
		selfSay('As I see, Billy Fantasy has given you the '..tab[checkQuest].fName..'. After many years of study and dedication, I discovered a new method to crafit fantasy pokemon. Do you want me to fantasy your '..tab[checkQuest].fName..' into '..tab[checkQuest].pName..'? Just say {yes} or {no}.', cid)
	
	elseif talkState[talkUser] == 2 then
		if msgcontains(msg, 'Yes') then -- Quer transformar o fossil
			if getPlayerItemCount(cid, tab[checkQuest].fId) >= 1 then
				if getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, name) then
					selfSay('Sorry, your pokemon not have nickname', cid)
					talkState[talkUser] = 0
				end	
				selfSay('Fine then! There it is, your '..tab[checkQuest].fName..' has been transformed into '..tab[checkQuest].pName..'! Congratulations!', cid)
				if #getPlayerPokeballs(cid) >= 6 then
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2469)
					doPlayerSendMailByName(getCreatureName(cid), newpokeball)
					doPlayerSendTextMessage(cid, 27, "You are holding six pokémons, your ("..tab[checkQuest].pName..") will be teleported to the Pokemon Center!")
				else
					local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2470)
					doPlayerAddItemEx(cid, newpokeball)
				end
					
				doPlayerRemoveItem(cid, tab[checkQuest].fId, 1)
				doSendMagicEffect(playerPos, 162)
				doSendMagicEffect(playerPos, 28)
				addEvent(doSendMagicEffect, 600, playerPos, 29)
				addEvent(doSendMagicEffect, 1200, playerPos, 28)
				setPlayerStorageValue(cid, questSt, 4)
			else
				selfSay("Sorry, but you have no "..tab[checkQuest].fName.." with you.",cid)
			end
			talkState[talkUser] = 0
			
		elseif msgcontains(msg, 'No') then -- Nao quer transformar o fossil
			selfSay('Right then. Then come back when you want it!', cid)
			talkState[talkUser] = 1
		end
	end
	return true
end

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

 

e a parte que liga nesse script

Spoiler



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 questSt = 7750
	local checkQuest = getPlayerStorageValue(cid,questSt)
	local playerPos = getCreaturePosition(cid)
	local playerLevel = getPlayerLevel(cid)
	local questLevel = 10
	
	if(msgcontains(msg, 'fantasy')) then
		if checkQuest < 1 then -- Quer saber mais
			talkState[talkUser] = 1
			selfSay('I believe there are some pokémons that age more than ten thousand years, and they are really rare. By the way, they are fossilized and I think there is a way to bring them back to life. Many people do not trust it, but I tell you, I think it is really possible. If you are interested to help me to prove that is possible, you will need a {Costume} to start.', cid)
		elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1.
			selfSay('My wife Trisha might help you, but there years passed since we last met. You must find her somewhere very far from here, maybe to south-east.', cid)
		else  -- Quer saber mais mas já fez a Parte Final.
			selfSay('Wow! You brought a fossil back to life! I knew it was possible, I knew it! My wife is brilliant, what you think? :P', cid)
		end
	
	elseif(msgcontains(msg, 'Costume') and talkState[talkUser] == 1) then -- Perguntou sobre os fóssies
		talkState[talkUser] = 2
		selfSay('So you really want to see a fantasy creature, huh? Fine then. There are three type of fantasy that I have discovered in my researches: {Thor Costume}, {Helix Fossil} and {Ancient Fossil}. Which one you are decided to get?', cid)
	elseif talkState[talkUser] == 2 then
		if msgcontains(msg, 'Thor Costume') then -- Saber mais sobre Thor Costume
			selfSay('The Thor Costume... I believe this artifact generates a rock/water type pokémon. It seems like a cockroach. Would you like to continue with the {Thor Costume}?', cid)
			talkState[talkUser] = 3
		elseif msgcontains(msg, 'Helix Fossil') then -- Saber mais sobre Helix Fossil
			selfSay('Yes, the Helix Fossil... I believe this artifact generates a water/rock type pokémon. It seems like a helix. Would you like to continue with the {fossil type H}?', cid)
			talkState[talkUser] = 4
		elseif msgcontains(msg, 'Ancient Fossil') then -- Saber mais sobre Ancient Fossil
			selfSay('Oh, the Ancient Fossil... I believe this artifact generates a rock/flying type pokémon. It seems like a feather of a giant bird. Would you like to continue with the {fossil type A}?', cid)
			talkState[talkUser] = 5
		end
		
	elseif(msgcontains(msg, 'Thor Costume') and talkState[talkUser] == 3) then -- Listagem Thor Costume
		if playerLevel >= questLevel then -- Se for level 100+
			selfSay('Right! To give it to you, I need: 10 Electric Tails + 1 Thunder Stones + 1 Thor Costume + 10 wool of yellow sheep. Do you have it?', cid)
			talkState[talkUser] = 6
		else -- Se for level 100-
			selfSay('Your level is too low. You are not expert enough to help me. Just come back here when you are level 100 or higher.', cid)
			talkState[talkUser] = 0
		end
		
	elseif(msgcontains(msg, 'Fossil Type H') and talkState[talkUser] == 4) then -- Listagem Helix Fossil
		if playerLevel >= questLevel then -- Se for level 100+
			selfSay('Right! To give it to you, I need: 10 Electric Tails + 1 Thunder Stones + 1 Thor Costume + 10 Wood ball. Do you have it?', cid)
			talkState[talkUser] = 7
		else -- Se for level 100-
			selfSay('Your level is too low. You are not expert enough to help me. Just come back here when you are level 100 or higher.', cid)
			talkState[talkUser] = 0
		end
		
	elseif(msgcontains(msg, 'Fossil Type A') and talkState[talkUser] == 5) then -- Listagem Ancient Fossil
		if playerLevel >= questLevel then -- Se for level 100+
			selfSay('Right! To give it to you, I need: 75 Moon Stones + 1 Aerodactyl Doll + 2000 Stone Orbs. Do you have it?', cid)
			talkState[talkUser] = 8
		else -- Se for level 100-
			selfSay('Your level is too low. You are not expert enough to help me. Just come back here when you are level 100 or higher.', cid)
			talkState[talkUser] = 0
		end
		
	elseif(msgcontains(msg, 'Yes') and talkState[talkUser] == 6) then -- Confirmou Thor Costume
		if (getPlayerItemCount(cid, 2381) >= 10 and getPlayerItemCount(cid, 2108) >= 1 and getPlayerItemCount(cid, 17487) >= 1 and getPlayerItemCount(cid, 9135) >= 10) then
			selfSay('Very well! You proved me your are a very determined person. Here is your Thor Costume. Now find my wife Trisha somewhere far away from here. This place might be to south-east.', cid)
			doPlayerAddItem(cid, 17487, 1)
			doPlayerRemoveItem(cid, 2381, 10)
			doPlayerRemoveItem(cid, 2108, 1)
			doPlayerRemoveItem(cid, 17487, 1)
			doPlayerRemoveItem(cid, 9135, 10)
			setPlayerStorageValue(cid, 7750, 1)
			doSendMagicEffect(playerPos, 162)
			talkState[talkUser] = 0
		else
			selfSay('Sorry, just ask for your {fossil} when you are with all the items I asked you.', cid)
			talkState[talkUser] = 1
		end
	elseif(msgcontains(msg, 'Yes') and talkState[talkUser] == 7) then -- Confirmou Helix Fossil
		if (getPlayerItemCount(cid, 2087) >= 20 and getPlayerItemCount(cid, 2091) >= 15 and getPlayerItemCount(cid, 6120) >= 1 and getPlayerItemCount(cid, 2419) >= 750 and getPlayerItemCount(cid, 2445) >= 500) then
			selfSay('Very well! You proved me your are a very determined person. Here is your Helix Fossil. Now find my wife Trisha somewhere far away from here. This place might be to south-east.', cid)
			doPlayerAddItem(cid, 8777, 1)
			doPlayerRemoveItem(cid, 2087, 20)
			doPlayerRemoveItem(cid, 2091, 15)
			doPlayerRemoveItem(cid, 6120, 1)
			doPlayerRemoveItem(cid, 2419, 750)
			doPlayerRemoveItem(cid, 2445, 500)
			setPlayerStorageValue(cid, 7750, 2)
			doSendMagicEffect(playerPos, 162)
			talkState[talkUser] = 0
		else
			selfSay('Sorry, just ask for your {fossil} when you are with all the items I asked you.', cid)
			talkState[talkUser] = 1
		end
	elseif(msgcontains(msg, 'Yes') and talkState[talkUser] == 8) then -- Confirmou Ancient Fossil
		if (getPlayerItemCount(cid, 2091) >= 1 and getPlayerItemCount(cid, 9149) >= 1 and getPlayerItemCount(cid, 2445) >= 100) then
			selfSay('Very well! You proved me your are a very determined person. Here is your Ancient Fossil. Now find my wife Trisha somewhere far away from here. This place might be to south-east.', cid)
			doPlayerAddItem(cid, 8775, 1)
			doPlayerRemoveItem(cid, 2091, 75)
			doPlayerRemoveItem(cid, 9149, 1)
			doPlayerRemoveItem(cid, 2445, 2000)
			setPlayerStorageValue(cid, 7750, 3)
			doSendMagicEffect(playerPos, 162)
			talkState[talkUser] = 0
		else
			selfSay('Sorry, just ask for your {fossil} when you are with all the items I asked you.', cid)
			talkState[talkUser] = 1
		end
	end
	return true
end

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

 

 

outra pergunta tem como por para remover o pokemon exemplo: alem dos itens remover tambem o Electabuzz 

 

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

w31Cm4K.png

 

PokeWorks-Pokemon Rpg Online

venha Fazer parte dessa Incrivel Aventura

Criar Conta

____________##___________

Object Builder 0.5.441 

Link para o post
Compartilhar em outros sites
  • 3 weeks later...

UP

w31Cm4K.png

 

PokeWorks-Pokemon Rpg Online

venha Fazer parte dessa Incrivel Aventura

Criar Conta

____________##___________

Object Builder 0.5.441 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por cloudrun2023
      CloudRun - Sua Melhor Escolha para Hospedagem de OTServer!
      Você está procurando a solução definitiva para hospedar seu OTServer com desempenho imbatível e segurança inigualável? Não procure mais! Apresentamos a CloudRun, sua parceira confiável em serviços de hospedagem na nuvem.
       
      Recursos Exclusivos - Proteção DDoS Avançada:
      Mantenha seu OTServer online e seguro com nossa robusta proteção DDoS, garantindo uma experiência de jogo ininterrupta para seus jogadores.
       
      Servidores Ryzen 7 Poderosos: Desfrute do poder de processamento superior dos servidores Ryzen 7 para garantir um desempenho excepcional do seu OTServer. Velocidade e estabilidade garantidas!
       
      Armazenamento NVMe de Alta Velocidade:
      Reduza o tempo de carregamento do jogo com nosso armazenamento NVMe ultrarrápido. Seus jogadores vão adorar a rapidez com que podem explorar o mundo do seu OTServer.
       
      Uplink de até 1GB:
      Oferecemos uma conexão de alta velocidade com até 1GB de largura de banda, garantindo uma experiência de jogo suave e livre de lag para todos os seus jogadores, mesmo nos momentos de pico.
       
      Suporte 24 Horas:
      Estamos sempre aqui para você! Nossa equipe de suporte está disponível 24 horas por dia, 7 dias por semana, para resolver qualquer problema ou responder a qualquer pergunta que você possa ter. Sua satisfação é a nossa prioridade.
       
      Fácil e Rápido de Começar:
      Configurar seu OTServer na CloudRun é simples e rápido. Concentre-se no desenvolvimento do seu jogo enquanto cuidamos da hospedagem.
       
      Entre em Contato Agora!
      Website: https://central.cloudrun.com.br/index.php?rp=/store/cloud-ryzen-brasil
      Email: [email protected]
      Telefone: (47) 99902-5147

      Não comprometa a qualidade da hospedagem do seu OTServer. Escolha a CloudRun e ofereça aos seus jogadores a melhor experiência de jogo possível. Visite nosso site hoje mesmo para conhecer nossos planos e começar!
       
      https://central.cloudrun.com.br/index.php?rp=/store/cloud-ryzen-brasil
       
      CloudRun - Onde a Velocidade Encontra a Confiabilidade!
       

    • Por FeeTads
      SALVE rapaziada do TK, esses dias vim pensando em novos scripts pro meu OT, e em um deles eu precisava que determinada area não contasse frag pro player que matasse outros, PORÉM eu precisava que os players que morressem nessa area ainda assim tivessem as penalidades da sua morte, procurei por ai, achei alguns scripts que apenas tiravam o SKULL e não realmente o FRAG do player.

      **script atualizado 22/10/2023** - melhorado e otimizado, levei o script pra puxar as infos por .lua / creatureScripts

      vou disponibilizar o code aqui, e o que fazer pra determinada area não contar frag.

      SOURCE OTX 2 / TFS 0.x, Funciona em TFS 1.x mudando as tags e ajeitando as sintaxes.

      vá em creatureevent.cpp

      procure por:
      else if(type == "preparedeath") _type = CREATURE_EVENT_PREPAREDEATH;
      Adiciona abaixo:
      else if(type == "nocountfrag") _type = CREATURE_EVENT_NOCOUNTFRAG;

      procure por:
      case CREATURE_EVENT_PREPAREDEATH: return "onPrepareDeath";  
      Adicione abaixo: 
      case CREATURE_EVENT_NOCOUNTFRAG: return "noCountFragArea";

      procure por:
      case CREATURE_EVENT_PREPAREDEATH: return "cid, deathList";
      Adicione abaixo:
      case CREATURE_EVENT_NOCOUNTFRAG: return "cid, target";

      agora no mesmo arquivo, vá até o final do arquivo e adicione essa função:
      uint32_t CreatureEvent::executeNoCountFragArea(Creature* creature, Creature* target) { //noCountFragArea(cid, target) if(m_interface->reserveEnv()) { ScriptEnviroment* env = m_interface->getEnv(); if(m_scripted == EVENT_SCRIPT_BUFFER) { env->setRealPos(creature->getPosition()); std::ostringstream scriptstream; scriptstream << "local cid = " << env->addThing(creature) << std::endl; scriptstream << "local target = " << env->addThing(target) << std::endl; if(m_scriptData) scriptstream << *m_scriptData; bool result = true; if(m_interface->loadBuffer(scriptstream.str())) { lua_State* L = m_interface->getState(); result = m_interface->getGlobalBool(L, "_result", true); } m_interface->releaseEnv(); return result; } else { #ifdef __DEBUG_LUASCRIPTS__ std::ostringstream desc; desc << creature->getName(); env->setEvent(desc.str()); #endif env->setScriptId(m_scriptId, m_interface); env->setRealPos(creature->getPosition()); lua_State* L = m_interface->getState(); m_interface->pushFunction(m_scriptId); lua_pushnumber(L, env->addThing(creature)); lua_pushnumber(L, env->addThing(target)); bool result = m_interface->callFunction(2); m_interface->releaseEnv(); return result; } } else { std::clog << "[Error - CreatureEvent::noCountFragArea] Call stack overflow." << std::endl; return 0; } }

      agora vá em creatureevent.h

      procure por:
      CREATURE_EVENT_PREPAREDEATH
      adicione abaixo:
      CREATURE_EVENT_NOCOUNTFRAG

      procure por:
      uint32_t executePrepareDeath(Creature* creature, DeathList deathList);
      Adicione abaixo:
      uint32_t executeNoCountFragArea(Creature* creature, Creature* target);

      agora vá em player.cpp

      procure por:
      bool Player::onKilledCreature(Creature* target, DeathEntry& entry)
      abaixo de:
      War_t enemy; if(targetPlayer->getEnemy(this, enemy)) { if(entry.isLast()) IOGuild::getInstance()->updateWar(enemy); entry.setWar(enemy); }
      Adicione o seguinte código:
      if (targetPlayer){ CreatureEventList killEvents = getCreatureEvents(CREATURE_EVENT_NOCOUNTFRAG); for (const auto &event : killEvents) { if (!event->executeNoCountFragArea(this, target)) { return true; } } }

      //

      Feito isso, tudo completo na sua source, agora é necessário adicionar o creaturescript dentro do servidor

      vá até creaturescripts/scripts
      crie um arquivo chamado, "noCountFragInArea.lua"
      e dentro dele cole o código:
       
      --[[ script feito por feetads / TibiaKing ]]-- --[[ discord: feetads / FeeTads#0246 ]]-- -- Add positions here for which you do not want to count frags local areas = { [1] = {from = {x = 91, y = 122, z = 7}, to = {x = 98, y = 127, z = 7}}, -- from = area superior esquerda / to = area inferior direita (formando um quadrado) } local onlyKillerInArea = false -- only killer need to be in area? function noCountFragArea(cid, target) if not isCreature(cid) or not isCreature(target) then return true end local posKiller = getPlayerPosition(cid) local posTarget = getPlayerPosition(target) for i = 1, #areas do local area = areas[i] if isInArea(posKiller, area.from, area.to) then if onlyKillerInArea then return false elseif isInArea(posTarget, area.from, area.to) then return false end end end return true end
      agora em creaturescripts.xml
      <event type="nocountfrag" name="fragarea" event="script" value="noCountFragInArea.lua"/>
      agora em creaturescripts/scripts/login.lua
       procure por OU semelhante a esse:
      registerCreatureEvent(cid, "AdvanceSave")
      e abaixo adicione:
      registerCreatureEvent(cid, "fragarea")

      //


      Agora tudo certo, quando quiser adiciona uma area que não pega frag, vá até o script e apenas coloque a area, igual o demonstrado no script

      Exemplo:
      local areas = { [1] = {from = {x = 91, y = 122, z = 7}, to = {x = 98, y = 127, z = 7}}, [2] = {from = {x = 1000, y = 1000, z = 7}, to = {x = 1100, y = 1100, z = 7}}, }
      assim somente colocando a area no script e abrindo o server ou dando /reload, já funcionará a area como não pegar frag.
      Esse sistema pode ser bom pra areas de pvp ativo, onde você ainda quer que o player que morrer perca os atributos, como se fosse uma morte normal, porém não conta frag pra quem matar.
      Bom pra sistemas tipo castle 48h (guild war), onde há diversas mortes e risco de pegar red, atrapalhando a war.

      Façam bom proveito dos scripts, e deixem os créditos no script rsrs

      **Eu fiz as alterações e o simples código por isso vim disponibilizar, créditos meus**
    • Por Muvuka
      Abri canal a força creaturescript acho que funcione no creaturescript cria script creaturescript
       
      <channel id="9" name="HELP" logged="yes"/>
      <channel id="12" name="Report Bugs" logged="yes"/>
      <channel id="13" name="Loot" logged="yes"/>
      <channel id="14" name="Report Character Rules Tibia Rules" logged="yes"/>
      <channel id="15" name="Death Channel"/>
      <channel id="6548" name="DexSoft" level="1"/>
      <channel id="7" name="Reports" logged="yes"/>
       
      antes de 
              if(lastLogin > 0) then adicione isso:
                      doPlayerOpenChannel(cid, CHANNEL_HELP) doPlayerOpenChannel(cid, 1,  2, 3) = 1,2 ,3 Channels, entendeu? NÃO FUNCIONA EU QUERO UM MEIO DE ABRI SEM USA A SOURCE
       
      EU NÃO CONSEGUI ABRI EU NÃO TENHO SOURCE
       
       
    • Por bolachapancao
      Rapaziada seguinte preciso de um script que ao utilizar uma alavanca para até 4 jogadores.
      Os jogadores serão teleportados para hunt durante uma hora e depois de uma hora os jogadores serão teleportados de volta para o templo.
       
      Observação: caso o jogador morra ou saia da hunt o evento hunt é cancelado.

      Estou a base canary
      GitHub - opentibiabr/canary: Canary Server 13.x for OpenTibia community.
       
    • Por RAJADAO
      .Qual servidor ou website você utiliza como base? 
      Sabrehaven 8.0
      Qual o motivo deste tópico? 
      Ajuda com novos efeitos
       
      Olá amigos, gostaria de ajuda para introduzir os seguintes efeitos no meu servidor (usando o Sabrehaven 8.0 como base), adicionei algumas runas novas (avalanche, icicle, míssil sagrado, stoneshower & Thunderstorm) e alguns novos feitiços (exevo mas san, exori san, exori tera, exori frigo, exevo gran mas frigo, exevo gran mas tera, exevo tera hur, exevo frigo hur) mas nenhum dos efeitos dessas magias parece existir no servidor, alguém tem um link para um tutorial ou algo assim para que eu possa fazer isso funcionar?
      Desculpe pelo mau inglês, sou brasileiro.

      Obrigado!


      AVALANCHE RUNE id:3161 \/
      (COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_ICEAREA)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ICE)

      STONESHOWER RUNE id:3175 \/
      (COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_STONES)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_EARTH)

      THUNDERSTORM RUNE id:3202 \/
      (COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_E NERGYHIT)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL)

      ICICLE RUNE id:3158 \/
      COMBAT_ICEDAMAGE
      CONST_ME_ICEAREA
      CONST_ANI_ICE

      SANTO MÍSSIL RUNA id:3182 \/
      (COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
      (COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA)
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_HOLY)

      CONST_ME_PLANTATTACK (exevo gran mas tera)
      CONST_ME_ICETORNADO (exevo gran mas frigo)
      CONST_ME_SMALLPLANTS (exevo tera hur)
      CONST_ME_ICEAREA (exevo frigo hur)
      CONST_ME_ICEATTACK (exori frigo)
      CONST_ME_CARNIPHILA (exori tera)

      EXORI SAN \/
      (COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLHOLY)
      CONST_ME_HOLYDAM IDADE

      EXEVO MAS SAN \/
      CONST_ME_HOLYAREA
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo