Histórico de Curtidas
-
Lisbeky deu reputação a Dwarfer em Boss para mission, usando item.@Lisbeky Não tive como testar, mas se você configurar certinho creio que funcionará.
1. Adicione o NPC
Em data/npc, adicione o arquivo.xml. As falas, o nome do NPC bem como o looktype são apenas para exemplo, configure como quiser.
<?xml version="1.0" encoding="UTF-8"?> <npc name="Ghoster" script="default.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="48"/> <voices> <voice text="Annnnnnkkkhhhhhhhhh" interval2="50"/> <voice text="Boo!" interval2="50"/> <voice text="Why are you scared?" interval2="50"/> </voices> </npc> 2. Em data/actions/scripts crie um arquivo.lua e cole isto dentro:
No actions.xml adicione a tag e edite o id do item:
<action itemid="1111" script="NOMEDOARQUIVO.lua" /> 3. No arquivo do monstro, adicione antes de </monster>, o seguinte:
<script> <event name = "GhostBossDeath"/> </script> 4. Em data/creaturescripts/scripts, crie um arquivo.lua e cole isto dentro:
Edite o storage para os valores da sua quest. Lembrando que só ganharão o storage aqueles que causarem dano ao boss.
No creaturescripts.xml, adicione a tag:
<event type="death" name="GhostBossDeath" event="script" value="NOMEDOARQUIVO.lua"/> É isso.
-
Lisbeky recebeu reputação de MatteusDeli em (Resolvido)Dar use em item e aparecer monstro@MatteusDeli perfeito meu amigo! vc é o cara! obrigada
-
Lisbeky deu reputação a MatteusDeli em (Resolvido)Dar use em item e aparecer monstro@Lisbeky Boa noite, segue o script:
data/actions/scripts crie um arquivo chamado ankh.lua e cole isto dentro:
local config = { time = 3, -- Tempo em segundos para aparecer o monstro effect = 10, -- Efeito que ira sair quando o monstro for trocado monster_created = "demon", -- Nome do monstro que será criado monster_removed = "Orc" -- Nome do monstro que será removido } function onUse(cid, item, frompos, itemEx, topos) if not (isMonster(itemEx.uid)) then doPlayerSendCancel(cid, "Use este item apenas em monstros.") return true end if not (string.lower(getCreatureName(itemEx.uid)) == string.lower(config.monster_removed)) then doPlayerSendCancel(cid, "Voce nao pode usar este item neste monstro.") return true end doRemoveCreature(itemEx.uid) addEvent(function() doCreateMonster(config.monster_created, topos) doSendMagicEffect(topos, config.effect) end, config.time*1000) end data/actions/actions.xml
<action actionid="100" event="script" value="ankha.lua" />
-
Lisbeky deu reputação a Yugami em (Resolvido)Tp que só teleporta se tiver o storageOla amigo, se for oque eu entendi, aqui esta:
Passo a passo:
vá em data/movements e abra o movements.xml e cole a seguinte linha
<movevent type="StepIn" actionid="ACTIONID_DO_TP" event="script" value="nome_do_arquivo.lua"/> em seguida vá em data/movements/scripts e copie qualquer arquivo.lua e cole e faça a substituição de nome para o "nome_do_arquivo" o mesmo que você colocou no passo anterior.
em seguida abra o arquivo e cole o seguinte código:
local c = { pos = {x = 1, y = 1, z = 1}, -- posição que sera levado sem storage storage = 20000, -- storage value = 1, -- valor que ele precisa ter pos_storage = {x = 1, y = 1, z = 1} -- posição que sera levado com storage } function onStepIn(cid, item, position, fromPosition) if getCreatureStorage(cid, c.storage) == c.value then doTeleportThing(cid, c.pos_storage) else doTeleportThing(cid, c.pos) end return true end
-
Lisbeky deu reputação a Tottin em (Resolvido)Setar storage para todos em uma determinada áreaResolvendo seu problema onde ao matar o monstro só quem fragava recebia o storage:
local tps = {
["hyaena"] = {pos = {x=349, y=1103, z=15}, toPos = {x = 518, y = 840, z = 7}, time = 10, storage = 46000},
}
local storage = 46000
local function removeTp(tp)
local t = getTileItemById(tp.pos, 5023).uid
return t > 0 and doRemoveItem(t) and doSendMagicEffect(tp.pos, CONST_ME_POFF)
end
function onDeath(cid, corpse, deathList, frompos, topos)
local tp = tps[getCreatureName(cid)]
if tp then
doCreateTeleport(5023, tp.toPos, tp.pos)
doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1)
addEvent(removeTp, tp.time*1000, tp)
for _, check in pairs(deathList) do
if isPlayer(check) then
setPlayerStorageValue(check, tp.storage, 5)
end
end
end
return true
end
registra no creaturescripts:
<event type="death" name="Storage" event="script" value="seuarquivo.lua"/>
registra no arquivo.xml do boss:
<script>
<event name="Storage"/>
</script>
-
Lisbeky deu reputação a Mor3nao em (Resolvido)Editar coordenadas do tpSó mudar nessa linha aqui em baixo, pos é a posição q o tp tem q aparecer, topos é pra onde o tp vai levar
["Rat"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56123, value = 1},
Nesse caso aqui, quando matar um Rat, vai aparecer um npc na posição x=10, y=10, z=10, e esse tp vai levar pra posição x=2 y=2 z=2, e ele vai durar 92 segundos
E se quiser colocar mais bixos pra aparecerem o tp, copiar e colocar essa linha e colocar abaixo, tipo:
["Rat"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56123, value = 1}, ["Bug"] = {pos = {x=10, y=10, z=10}, toPos = {x=2, y=2, z=2}, time = 92, storage = 56124, value = 1},
Quanto a storage, nao é bom que tenha outra igual ela, oque te recomendo fazer, pra n botar uma storage q ja tenha, é colocar como numero de celular, tipo,
as minhas storages todas são: xx1754231, xx1754232
e assim por diante xD
-
Lisbeky deu reputação a cs007 em (Resolvido)Limite de Players no EventoDê nada, se eu conseguir lhe ajudar já fico feliz.
-
Lisbeky deu reputação a Storm em (Resolvido)Aumentar Charges@Lisbeky
local config = { item = 2131, -- ID do item count = 1, -- Qnt de item que será removida charges = 1000, -- Charges remove = 9020, -- Item que será removido countr = 25, -- Qnt do item que será removida texto = "Você comprou star amulet. Custou 25 Tokens.", texto2 = "Tokens insuficientes. Precisa de 25 Tokens para comprar star amulet.", effect = 15 } function onUse(cid, item, fromPosition, itemEx, toPosition) if doPlayerRemoveItem(cid, config.remove, config.countr) then doPlayerSendTextMessage(cid, 22, config.texto) local item = doPlayerAddItem(cid, config.item, config.count) doItemSetAttribute(item, "charges", config.charges) doSendMagicEffect(fromPosition, config.effect) else doPlayerSendTextMessage(cid, 22, config.texto2) end return true end
-
Lisbeky deu reputação a ITALOx em Ajuda com Script de MorteOlá amigo, o erro não está no script. e sim no mapa do seu servidor.
Você colocou as ids no piso tudo certinho?
como está aqui:
Se sim, vamos lá!
O evento é composto por dois lados. então significa que você vai ter que criar uma posição para cada lado no remeres.
pergunta: mas aonde?
R: vai em Map> Edit Town e crie as posições. para cada lado. exemplo:
E coloque as posições do lado esquerdo e direito. como está aqui:
Vermelho:
Time verde:
e é só coloca as posições do lado direito e esquerdo no script na lib e pronto. quando morrer ele voltará ao seu lado do time.
é isto, e desculpe se errei em algo. qualquer coisa é só falar ai.