Ir para conteúdo
  • 0

outbreaks

Pergunta

Queria um npc que vai pra quest, quando termina de mata todos os monstros, ele e teleportado pro cp,

ganhado uma recompensa!

e

Uma script que coloka um efeito no chao que aprece em 2 em 2 s, e quem pisa

leva um dano, o dano que eu possa modifica!

Editado por outbreaks
Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Mano, tá mt mal explicado.

O NPC "vai" pra quest, ou envia o player para uma quest? Se ele de fato for pra algum lugar, outros player ficarão temporariamente sem acesso à ele (já que ele não estará em seu lugar original). Isso mesmo que vc quer?

E quem é que mata os monstros? Eu entendi que é o próprio NPC, aliás, parece que vc quer que o NPC faço tudo sozinho. Isso mesmo?

E o que seria "teleportado pro cp"? O que é cp?

Tenta ser um pouco mais claro.

 

Ps.: Acho que cp seria dp, certo?

Editado por jefersonzc
Link para o comentário
Compartilhar em outros sites

  • 0

Esses tiles que o player pisa, são em posições específicas, ou randômicas?

Sobre o primeiro pedido, poderia informar quantos monstros o player precisa matar? E quais são?

E se o player morrer, poderá fazer a quest novamente?

Editado por zipter98
Link para o comentário
Compartilhar em outros sites

  • 0

Quais as posições dos tiles, por favor? E quantos são?

E a quantidade de monstros que devem ser mortos para o player ser teleportado ao CP? E quais são estes monstros? Porygon e Porygon2?

 

 

EDIT: O tile que você se refere é tipo o do CW da PxG, né? Se for, o script será assim +-, né: A cada x tempo, em alguns tiles, aparecerá um efeito que, depois de dois segundos após a execução deste efeito, o player que estiver no local em que o efeito foi "soltado", tomará uma x quantia de hit na life, certo?

Editado por zipter98
Link para o comentário
Compartilhar em outros sites

  • 0

Tenta assim o NPC: --O npc, após teleportar o player, some.

 

local keywordHandler = KeywordHandler:new()

local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local pos = {x = xxx, y = yyy, z = zzz} --pos q será teleportado.
if msgcontains(string.lower(msg), 'help') or msgcontains(string.lower(msg), 'mission') then
selfSay("Você gostaria de me ajudar em uma missão?", cid)
talkState[talkUser] = 1
elseif (msgcontains(string.lower(msg), 'yes') or msgcontains(string.lower(msg), 'sim')) and talkState[talkUser] == 1 then
selfSay("Boa sorte!", cid)
doRemoveCreature(getNpcCid())
doTeleportThing(cid, pos)
talkState[talkUser] = 0
return true
end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

O tile de dano, eu não tenho certeza se vai funcionar, fiz rapidinho aqui. data/globalevents/scripts
Tag, antes de tudo:
<globalevent name="nome desse globalevent" interval="intervalo da execução do script" script="arquivo.lua" />
E, o script:
function onThink(cid, interval, lastExecution)
 
local posis = {{x = xxx, y = yyy, z = zzz}, {x = xxx, y = yyy, z = zzz}, {x = xxx, y = yyy, z = zzz}, {x = xxx, y = yyy, z = zzz}}   --Edite aqui as posições dos tiles.
local cfg = {
    eff_one = xxx,    --Efeito que irá aparecer no tile de dano após os dois segundos.
    eff_two = xxx,    --Efeito que irá aparecer nos tiles de dano.
}
 
function dmg(cid)
    doCreatureAddHealth(cid, getCreatureHealth(cid)/2)
    doSendMagicEffect(i, cfg.eff_one)
end
 
    for a, i in ipairs(posis) do
        doSendMagicEffect(i, cfg.eff_two)
        if isInArray(i, getThingPos(cid)) then
            addEvent(dmg, 2000)
    end
end
return true
end
Editado por zipter98
Link para o comentário
Compartilhar em outros sites

  • 0
[03/11/2013 23:31:37] [Error - GlobalEvent Interface]
[03/11/2013 23:31:37] data/globalevents/scripts/tiles.lua:onThink
[03/11/2013 23:31:37] Description:
[03/11/2013 23:31:37] (luaGetThingPosition) Thing not found
deu isso e n funciono ainda

function onThink(cid, interval, lastExecution)

local posis = {{x = 1086, y = 1065, z = 12}, {x = 1087, y = 1065, z = 12}, {x = 1088, y = 1065, z = 12}, {x = 1089, y = 1065, z = 12}, {x = 1090, y = 1065, z = 12}, {x = 1091, y = 1065, z = 12}, {x = 1092, y = 1065, z = 12}} --Edite aqui as posições dos tiles.
local cfg = {
eff_one = 0, --Efeito que irá aparecer no tile de dano após os dois segundos.
eff_two = 56, --Efeito que irá aparecer nos tiles de dano.
}

function dmg(cid)
doCreatureAddHealth(cid, -getCreatureHelth(cid)/2)
doSendMagicEffect(i, cfg.eff_one)
end

for a, i in ipairs(posis) do
doSendMagicEffect(i, cfg.eff_two)
if isInArray(i, getThingPos(cid)) then
addEvent(dmg, 2000)
end
end
return true
end

Editado por outbreaks
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...