Muito bom cara!
Ta de parabens, REP+
Consegui aquele tsukuyomi em um player só ![]()
Tipo, o monstro "sakura spirit" é um summon seu ou eh 1 bixo q fica no local?
Porque vc esta em 1 sqm pz, certo? E quando vc ta pisando em um sqm pz nao da pra atk o kra.






info
Grupo: Conde
Registrado: 04/08/12
Posts: 762
Reputação: +80
Aew, outro script a pedido do juan500, "Sakura Spirit".
O script consiste em teleportar o caster (player que executa o script) para um local e o player (que foi atingido) para outro, onde a "alma" da Sakura iria atacar os player atingidos.
(O vídeo se localiza no final do tópico)
Em data/monster crie um arquivo.xml nomeie para Sakura Spirit e adicione:
<?xml version="1.0" encoding="UTF-8"?>
<monster name="Sakura Spirit" nameDescription="a Sakura Spirit" race="blood" experience="0" speed="0" manacost="0">
<health now="99999999999" max="99999999999"/>
<look type="136" head="18" body="0" legs="0" feet="0" addons="0" corpse="0"/>
<targetchange interval="10000" chance="1"/>
<strategy attack="200" defense="10"/>
<flags>
<flag summonable="0"/>
<flag attackable="1"/>
<flag hostile="0"/>
<flag illusionable="0"/>
<flag convinceable="0"/>
<flag pushable="0"/>
<flag canpushitems="0"/>
<flag canpushcreatures="0"/>
<flag targetdistance="0"/>
<flag runonhealth="0"/>
</flags>
<attacks>
<attack name="melee" interval="0" attack="0" min="0" max="0"/>
<attack name="lifedrain" interval="0" chance="100" range="7" min="-200" max="-300">
<attribute key="shootEffect" value="suddendeath"/>
</attack>
</attacks>
<defenses armor="0" defense="0">
<defense name="healing" interval="10000" chance="100" min="-99999999999" max="-99999999999">
<attribute key="areaEffect" value="blueshimmer"/>
</defense>
</defenses>
<immunities>
<immunity physical="0"/>
<immunity energy="0"/>
<immunity fire="0"/>
<immunity earth="0"/>
<immunity ice="0"/>
<immunity holy="0"/>
<immunity death="0"/>
<immunity drown="0"/>
<immunity drunk="0"/>
<immunity paralyze="1"/>
<immunity lifedrain="0"/>
<immunity outfit="1"/>
<immunity invisible="1"/>
</immunities>
<summons maxSummons="0">
<summon name="Tsukuyomi" interval="3000" chance="0" max="1"/>
</summons>
<voices interval="1000" chance="50">
<voice sentence="Spirit Sakura!!"/>
<voice sentence="No!"/>
<voice sentence="Spirit!"/>
<voice sentence="!!!"/>
</voices>
</monster>
Editando:
-Verde: Frases
-Vermelho: Intervalo para o monstro sumir
Novamente em data/monster crie um arquivo.xml nomeie para Sakura Spirit2 e adicione:
<?xml version="1.0" encoding="UTF-8"?>
<monster name="Sakura Spirit" nameDescription="a Sakura Spirit" race="blood" experience="0" speed="500" manacost="0">
<health now="99999999999" max="99999999999"/>
<look type="136" head="18" body="0" legs="0" feet="0" addons="0" corpse="0"/>
<targetchange interval="10000" chance="1"/>
<strategy attack="200" defense="10"/>
<flags>
<flag summonable="0"/>
<flag attackable="1"/>
<flag hostile="1"/>
<flag illusionable="0"/>
<flag convinceable="0"/>
<flag pushable="0"/>
<flag canpushitems="0"/>
<flag canpushcreatures="0"/>
<flag targetdistance="0"/>
<flag runonhealth="0"/>
</flags>
<attacks>
<attack name="melee" interval="0" attack="0" min="0" max="0"/>
<attack name="lifedrain" interval="1000" chance="100" range="7" min="-200" max="-300">
<attribute key="shootEffect" value="suddendeath"/>
</attack>
</attacks>
<defenses armor="0" defense="0">
<defense name="healing" interval="10000" chance="100" min="-99999999999" max="-99999999999">
<attribute key="areaEffect" value="blueshimmer"/>
</defense>
</defenses>
<immunities>
<immunity physical="0"/>
<immunity energy="0"/>
<immunity fire="0"/>
<immunity earth="0"/>
<immunity ice="0"/>
<immunity holy="0"/>
<immunity death="0"/>
<immunity drown="0"/>
<immunity drunk="0"/>
<immunity paralyze="1"/>
<immunity lifedrain="0"/>
<immunity outfit="1"/>
<immunity invisible="1"/>
</immunities>
<summons maxSummons="0">
<summon name="Tsukuyomi" interval="3000" chance="0" max="1"/>
</summons>
<voices interval="1000" chance="50">
<voice sentence="Spirit Sakura!!"/>
<voice sentence="No!"/>
<voice sentence="Spirit!"/>
<voice sentence="!!!"/>
</voices>
</monster>
Editando:
-Verde: Frases
-Vermelho: Intervalo para o monstro sumir
Em monsters.xml adicione:
<monster name="Sakura Spirit" file="Sakura Spirit.xml"/>
<monster name="Sakura Spirit2" file="Sakura Spirit2.xml"/>
Em data/movements/scripts crie um arquivo.lua nomeie para Sakura e adicione:
function onStepIn(cid, item, position, fromPosition)
function doHealthSecond(cid, quanty, delay) -- function by vodka
if not isCreature(cid) then return LUA_ERROR end
doCreatureAddHealth(cid, quanty)
doSendMagicEffect(getCreaturePosition(cid), 67)
if delay ~= 1 then addEvent(doHealthSecond, 1000, cid, quanty, delay -1)
elseif delay == 1 then doCreatureSetNoMove(cid, false) end
end
doCreatureSetNoMove(cid, true)
doHealthSecond(cid, 0, 10)
return true
end
Editando:
-Verde: Intervalo da player sem mover (em segundos)
Em movements.xml adicione:
<movevent type="StepIn" actionid="1648" event="script" value="Sakura.lua"/>
Em data/talkactions/scripts crie um arquivo.lua nomeie para alma e adicione:
function onSay(cid, words, param)
local waittime = 20 -- Tempo de exhaustion
local storage = 5560
local pos = getCreaturePosition(cid)
from = {x=pos.x, y=pos.y, z=pos.z}
to = {x = 665, y = 1001, z = 15} -- Para onde o teleport levará (players)
to1 = {x = 668, y = 1001, z = 15} -- Para onde o teleport levará (caster)
area1 = {x = 662, y = 997, z = 15} -- Ponta de cima na esquerda na area que o tp leva
area2 = {x = 672, y = 1005, z = 15} -- Ponta de baixo na direita na area que o tp leva
level = 100 -- Level necessário
ppos = getCreaturePosition(cid)
pl1 = {x=ppos.x-7, y=ppos.y-5, z=ppos.z}
pl2 = {x=ppos.x+7, y=ppos.y+5, z=ppos.z}
if getPlayerLevel(cid) < level then
doPlayerSendCancel(cid, "Você precisa de level "..level.." para usar essa magia.")
return true
end
function back(cid)
if isInArea(getCreaturePosition(cid), area1, area2) then
doTeleportThing(cid, from)
end
end
function go(cid)
if isInArea(getCreaturePosition(cid), pl1, pl2) then
doCreateMonster('Sakura Spirit', pos)
doTeleportThing(cid, to)
end
end
function gos(cid)
if isInArea(getCreaturePosition(cid), from, from) then
doCreateMonster('Sakura Spirit', pos)
doTeleportThing(cid, to1)
end
end
addEvent(doCreatureExecuteTalkAction, 1, cid, '666666666ARS', true)
if exhaustion.check(cid, storage) == false then
for _, pid in ipairs(getPlayersOnline()) do
addEvent(back, 8000, pid) -- Tempo para retornar ao lugar que usou a magia
addEvent(go, 200, pid)
addEvent(gos, 1, pid)
doSendMagicEffect(getCreaturePosition(pid), 63)
doCreatureSay(pid, "Alma", TALKTYPE_MONSTER) --- Mensagem
addEvent(setPlayerStorageValue, 10000, pid, 1634, -1)
end
exhaustion.set(cid, storage, waittime)
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.")
end
return true
end
Editando:
Script auto-explicativo, variáveis em verde.
Novamente em data/talkactions/scripts crie um arquivo.lua nomeie para alma2 e adicione:
function onSay(cid, words, param)
local pos = getCreaturePosition(cid)
mon = {x = 666, y = 1002, z = 15} -- Onde o monstro surgira
doCreateMonster('Sakura Spirit2', mon)
return true
end
Editando:
Script auto-explicativo, variável em verde.
Em talkactions.xml adicione:
<talkaction words="alma" event="script" value="alma.lua"/>
<talkaction words="666666666ARS" event="script" value="alma2.lua"/>
Editando:
-Verde: "Palavra mágica" (palavra que executa a ação)
Obs: Não modifique a tag em vermelho!
Oque fazer no RME?
Vídeo demonstrativo (Spell):
Créditos:
Newtonnotwen, pelo script e pelo post.
juan500, pela ideia da spell.
LuckOake, pelo script inicial
Vodkart, pelo tile
Jhon992, pelo tile
Por favor comentem, se tiver mal explicado eu edito.
Editado Setembro 6 por Newtonnotwen