1local config = {
2 maxClones = 3, -- Número máximo de clones que podem ser criados
3 healthPercent = 0.10, -- Porcentagem da vida do jogador que o clone terá (10%)
4 spellName = "Clone das Sombras", -- Nome fixo da magia (não altere esta linha)
5 words = "utamo clone", -- Nome da magia, pode ser alterado para o nome preferido (ex.: diga no jogo "utamo clone")
6 cooldown = 30, -- Tempo de espera em segundos para usar novamente
7 manaCost = 500, -- Quantidade de mana necessária para usar
8 minLevel = 20, -- Nível mínimo necessário para usar a magia
9 monsterName = "clone", -- Nome do monstro base que será usado como clone
10 exhaustGroup = "support", -- Grupo de exaustão da magia
11 -- Lista de vocações que podem usar a magia
12 vocations = {
13 "Soldier", "elder Soldier",
14 "Regen", "master Regen",
15 "Shooter", "royal Shooter",
16 "vital", "royal vital",
17 "lucky", "royal lucky",
18 "Tanker", "elite Tanker"
19 },
20 needPremium = false -- Define se precisa ser conta premium para usar
21}
22
23local spell = Spell("instant")
24
25function spell.onCastSpell(creature, variant)
26 local player = creature:getPlayer()
27 if not player then
28 return false
29 end
30
31 local summons = player:getSummons()
32 if #summons >= config.maxClones then
33 player:sendCancelMessage("Você já atingiu o número máximo de clones permitidos!")
34 return false
35 end
36
37 local remainingClones = config.maxClones - #summons
38 local playerHealth = player:getHealth()
39 local playerOutfit = player:getOutfit()
40 local playerSpeed = player:getSpeed()
41
42 for i = 1, remainingClones do
43 local clone = Game.createMonster(config.monsterName, player:getPosition())
44 if clone then
45 clone:setMaster(player)
46 clone:rename(player:getName())
47
48 player:addSummon(clone)
49
50 local cloneHealth = math.ceil(playerHealth * config.healthPercent)
51 clone:setMaxHealth(cloneHealth)
52 clone:addHealth(cloneHealth)
53
54 clone:setOutfit(playerOutfit)
55 clone:changeSpeed(playerSpeed)
56 end
57 end
58
59 return true
60end
61
62spell:name(config.spellName)
63spell:words(config.words)
64spell:group(config.exhaustGroup)
65spell:vocation(unpack(config.vocations))
66spell:id(24)
67spell:cooldown(config.cooldown * 1000)
68spell:groupCooldown(2 * 1000)
69spell:level(config.minLevel)
70spell:mana(config.manaCost)
71spell:isSelfTarget(true)
72spell:isAggressive(false)
73spell:needLearn(false)
74spell:isPremium(config.needPremium)
75spell:register()