Ir para conteúdo

[Resolvido] [Pedido] Script que após matar monstro aparece um teleport.

Featured Replies

  • Respostas 10
  • Visualizações 8.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • tp.lua local tpId = 1387 local tps = { ["Orshabaal"] = {pos = {x=761, y=57, z=7}, toPos = {x=767, y=52, z=7}, time = 30}, } function removeTp(tp) local t = getTileItemById(tp.pos, tpId) if t then

  • cara farei tu tutorial rapido    1 crie seu monstro normalmalmente copie o arquivo xml de um monstro em C:\Users\Usuário\Desktop\naruto\Naruto Online\data\monster e renomeie para o nome do monstro q

Postado

Dúvida sanada, tag adicionada.

Tópico movido!

Spoiler

local config = {
	delrey = getPlayerCarValue(cid, DELREY),
	cigarro = getPlayerCancer(cid, DERBY),
	prostituta = getPlayerAIDS(cid, cracuda),
	tresOitao = getPlayerRevorvi(cid, 38)
}

if(delrey == "Ligado" and cigarro == "Aceso" and prostituta == "No Colo" and tresOitao == "Carregado") then
	doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Começou o fim de semana. #PAS")
end

 

  • 2 months later...
  • 2 years later...
Postado
Em 22/07/2013 17:31:16, leessandro disse:

cara farei tu tutorial rapido 

 

1 crie seu monstro normalmalmente copie o arquivo xml de um monstro em C:\Users\Usuário\Desktop\naruto\Naruto Online\data\monster e renomeie para o nome do monstro q vc quer  e edite o basico como skills look type experience speed entre outros 

 

 

<?xml version="1.0" encoding="UTF-8"?>
<monster name="nome do monstro" nameDescription="nome do monstro" race="blood" experience="1666" speed="310" manacost="0">
<health now="25000" max="25000"/>
<look type="160" head="0" body="94" legs="79" feet="79" corpse="2916"/>
<targetchange interval="5000" chance="8"/>
<strategy attack="90" defense="20"/>
<flags>
<flag summonable="1"/>
<flag attackable="1"/>
<flag hostile="1"/>
<flag illusionable="0"/>
<flag convinceable="1"/>
<flag pushable="0"/>
<flag canpushitems="1"/>
<flag canpushcreatures="1"/>
<flag targetdistance="1"/>
<flag staticattack="65"/>
<flag runonhealth="0"/>
</flags>
    <script>
    <event name="nome da sua quest"/>
    </script>
<attacks>
<attack name="melee" interval="1000" min="-1180" max="-1400"/>
<attack name="manadrain" interval="2500" chance="10" range="7" min="-860" max="-1215">
<attribute key="areaEffect" value="redshimmer"/>
 
</attack>
<attack name="Venenodark" interval="5000" chance="30" radius="4" target="0" min="-440" max="-600">
</attack>
<attack name="Fogofogo" interval="2000" chance="30" radius="4" target="0" min="-440" max="-600">
</attack>
</attacks>
<defenses armor="80" defense="80">
<defense name="healing" interval="4000" chance="40" min="300" max="300">
<attribute key="areaEffect" value="blueshimmer"/>
</defense>
<defense name="speed" interval="4000" chance="40" speedchange="450" duration="8000">
<attribute key="areaEffect" value="redshimmer"/>
</defense>
</defenses>
<elements>
<element physicalPercent="20"/>
<element icePercent="10"/>
<element holyPercent="-15"/>
<element deathPercent="35"/>
</elements>
<immunities>
<immunity paralyze="1"/>
<immunity lifedrain="1"/>
<immunity outfit="1"/>
<immunity drunk="1"/>
<immunity invisible="1"/>
</immunities>
<voices interval="5000" chance="10">
<voice sentence="Hahahaha, estupido, vou te esmagar!" yell="1"/>
<voice sentence="Voce nao tem chanceee... vou te mataaar"/>
</voices>
<loot>
<item id="2666" countmax="5" chance="20000"/><!-- meat -->
<item id="2152" countmax="30" chance="10000"/><!-- dolar=verde -->
<item id="2145" countmax="2" chance="70000"/><!-- pilula do soldado -->
</loot>
</monster>
 
 
2-criado seu monstro adicione assim em monsters.xml
 
<monster name="nome do monstro" file="nome do documento que vc acabou de criar.xml"/>
 
exemplo
 
<monster name="meu monstro" file="meu monstro.xml"/>
 
onde esta destacado de vermelho sera o nome do arquivo
va em creaturescript depois em script e copia um arquivo .lua de la qualquer e mude o nome pro nome da sua quest igual colocasse no monstro
e adicione isto nele
 
 
local tpId = 5023
local tps = {
        ["Nome do monstro"] = {pos = {x=1277, y=1075, z=7}, toPos = {x=1275, y=1061, z=7}, time = 10},
}
 
function removeTp(tp)
        local t = getTileItemById(tp.pos, tpId)
        if t then
                doRemoveItem(t.uid, 1)
                doSendMagicEffect(tp.pos, CONST_ME_POFF)
        end
end
 
function onDeath(cid)
        local tp = tps[getCreatureName(cid)]
        if tp then
                doCreateTeleport(tpId, tp.toPos, tp.pos)
                doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1)
                addEvent(removeTp, tp.time*1000, tp)
        end
        return TRUE
end

 

 

 

3- Em vermelho o id do teleport que aparecera e so ver no map editor qual teleport vc quer

em azul o nome da criatura

roxo onde o teleport  ira aparecer

laranja pra onde ira te teleportar

 

4-depois disso vai em creaturescripts.xml e adicione

 

<event type="death" name="nome da quest" event="script" value="nome do arquivo.lua"

 

vermelho nome da quest

azul nome do arquivo.lua que voce criou

 

Pronto agora so ligar o server

lembrando as magias , loot, entre otros pode mudar pois este meu monstro e de ot naruto 

mais o sistema de teleport funciona

 

 

 

Não testei ainda, se funcionar dou rep+ 

Queria fazer 1 pedido, teria como adaptar o script pra funcionar da seguinte maneira:  o portal só abre se o  pokemon for morto no local da quest, pq se não for assim só posso colocar pokemons que não tem em nenhum outro respaw, se não tiver ideia de como fazer eu pensei em uma, mas não entendo de script, é só uma ideia base :

 

  if pokemondeath in positions{ dai aqui eu coloco todas as coordenadas de cada sqm da quest ( é um quadrado não muito grande ) se o pokemon morrer em um desses sqm o portal abre se não, não abre

Em 22/07/2013 17:57:39, TonyHalk disse:


tp.lua
local tpId = 1387
local tps = {
	["Orshabaal"] = {pos = {x=761, y=57, z=7}, toPos = {x=767, y=52, z=7}, time = 30},
}

function removeTp(tp)
	local t = getTileItemById(tp.pos, tpId)
	if t then
		doRemoveItem(t.uid, 1)
		doSendMagicEffect(tp.pos, CONST_ME_POFF)
	end
end

function onDeath(cid)
	local tp = tps[getCreatureName(cid)]
	if tp then
		doCreateTeleport(tpId, tp.toPos, tp.pos)
		doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1)
		addEvent(removeTp, tp.time*1000, tp)
	end
	return TRUE
end
explicação:

["Orshabaal"] --------- Nome do monstro
pos = {x=761, y=57, z=7} ----------- onde o Teleport irá abrir
toPos = {x=767, y=52, z=7} ------- onde o teleport vai leva eles
time = 30 ------------ tempo em segundos que o teleport ficará aberto

em creaturescript adicione:

<event type="death" name="tp" event="script" value="tp.lua"/>
no arquivo.xml do seu monstro adicione:

<script>
<event name="tp"/>
</script>

acho que é mais facil :3

 

 

 

Não testei ainda, se funcionar dou rep+ 

Queria fazer 1 pedido, teria como adaptar o script pra funcionar da seguinte maneira:  o portal só abre se o  pokemon for morto no local da quest, pq se não for assim só posso colocar pokemons que não tem em nenhum outro respaw, se não tiver ideia de como fazer eu pensei em uma, mas não entendo de script, é só uma ideia base :

 

  if pokemondeath in positions{ dai aqui eu coloco todas as coordenadas de cada sqm da quest ( é um quadrado não muito grande ) se o pokemon morrer em um desses sqm o portal abre se não, não abre

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.6k

Informação Importante

Confirmação de Termo