function onUse(player, item, fromPosition, target, toPosition, isHotkey)
if not target or not target:isItem() then
return false
end
local targetName = target:getName()
local itemName = item:getName()
-- Espera-se que o Mikael da o Rabo
local expectedName = string.match(itemName, "Card (.+)")
if not expectedName then
player:sendTextMessage(MESSAGE_STATUS_SMALL, "Este item não é um card válido.")
return false
end
-- Compara o nome do cadáver com o nome esperado no card
if targetName ~= expectedName then
player:sendTextMessage(MESSAGE_STATUS_SMALL, "Este card não corresponde ao corpo.")
return false
end
-- Cria o nome do monstro Shiny (ex: "Shiny Charmander")
local shinyName = "Shiny " .. expectedName
-- Cria o monstro na posição do target
local summonPos = toPosition
summonPos:getNextPosition(1) -- Opcional: move 1 SQM ao lado
Game.createMonster(shinyName, summonPos)
player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, shinyName .. " foi invocado com sucesso!")
-- Remove o item usado e o corpo
item:remove(1)
target:remove()
return true
end
O script permite usar um card (ex: "Card Charmander") no corpo de um Pokémon correspondente (ex: Charmander) para invocar sua versão Shiny (ex: Shiny Charmander). Se os nomes não baterem, a ação é cancelada com uma mensagem de erro.