Ir para conteúdo
  • Cadastre-se

Pedido Halloween Npc tfs 0.4


Posts Recomendados

Boa tarde, alguém conseguiria fazer esse npc funcionar no tfs 0.4:

local combat = createCombatObject() 
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN) 

local condition = createConditionObject(CONDITION_OUTFIT) 
setConditionParam(condition, CONDITION_PARAM_TICKS, 3 * 24 * 3600 * 1000) -- here time in miliseconds, default 3 days 
addOutfitCondition(condition, 0, 857, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 853, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 852, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 851, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 843, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 837, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 833, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 785, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 720, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 659, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 597, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 549, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 544, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 523, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 510, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 878, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 877, 0, 0, 0, 0) 
addOutfitCondition(condition, 0, 890, 0, 0, 0, 0) 
setCombatCondition(combat, condition) 

local area = createCombatArea( { {1,1,1,1,1}, {1,1,1,1,1}, {1,1,3,1,1}, {1,1,1,1,1}, {1,1,1,1,1} } ) 
setCombatArea(combat, area) 

local keywordHandler = KeywordHandler:new() 
local npcHandler = NpcHandler:new(keywordHandler) 
NpcSystem.parseParameters(npcHandler) 

-- OTServ event handling functions start 
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 
-- OTServ event handling functions end 
npcHandler:setMessage(MESSAGE_GREET, "Hello |PLAYERNAME|. Say halloween.") 

function halloweenNPC(cid, message, keywords, parameters, node) 
    doCombat(getNpcCid(), combat, numberToVariant(getNpcCid())) 
    npcHandler:say('You are Dead, Suprise!', cid) 
    return true 
end 
keywordHandler:addKeyword({'halloween'}, halloweenNPC, {}) 
npcHandler:addModule(FocusModule:new())

@luanluciano93 @Wakon @xWhiteWolf

Editado por One Punch Man (veja o histórico de edições)

x1fCxnI.png

Link para o post
Compartilhar em outros sites

up

@Larissa Azhaurn @vankk @zipter98

Editado por One Punch Man (veja o histórico de edições)

x1fCxnI.png

Link para o post
Compartilhar em outros sites

Como que deveria funcionar?

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites
2 minutos atrás, One Punch Man disse:

@vankk

Quando eu tento summonar o npc aparece o seguinte erro: cannot load script: data/npc/scripts/halloween.lua

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Halloween" script="data/npc/scripts/halloween.lua" floorchange="0" access="5" level="1" maglevel="1">
    <health now="150" max="150"/>
    <look type="229" head="20" body="39" legs="45" feet="7" addons="3"/>
    <parameters>
    </parameters>
</npc>

 

Estou pelo celular acho que saiu double post

Editado por One Punch Man (veja o histórico de edições)

x1fCxnI.png

Link para o post
Compartilhar em outros sites

Para que voce está especificando esse diretorio data/npc/scripts/halloween.lua? Invés de colocar apenas hallowen.lua?

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites
18 minutos atrás, vankk disse:

Para que voce está especificando esse diretorio data/npc/scripts/halloween.lua? Invés de colocar apenas hallowen.lua?

 

Tentei dessa forma também e não foi.

Eu queria apenas um script que um jogador falasse com o seguinte npc e ele desse uma looktype aleatória para o jogador..

x1fCxnI.png

Link para o post
Compartilhar em outros sites

Vc tbm está utilizando um script muito outdated, se não me engano o Gesior que fez esse script em meados de 2008.

discord.pngDiscord: vankk #7765

Precisando de ajuda? Entre em contato comigo via Discord.

 

Muitos vêm seus muitos dias de glória, mas poucos vêm seus muitos dias de luta.

Link para o post
Compartilhar em outros sites
7 minutos atrás, vankk disse:

Vc tbm está utilizando um script muito outdated, se não me engano o Gesior que fez esse script em meados de 2008.

 

Sim é bem antigo, por isso gostaria de saber se alguém consegue fazer um encima desse não sei se é possível.

 

 

2 minutos atrás, MaTTch disse:

Esse monte de addOutfitCondition seria uma tentativa de botar um outfit aleatório em quem tiver na suposta área?

 

Sim MaTTch, não precisa ser dessa forma, desde que o npc de uma outfit aleatória para o jogador que falar com ele..

x1fCxnI.png

Link para o post
Compartilhar em outros sites
Spoiler

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
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

npcHandler:setMessage(MESSAGE_GREET, "Hello |PLAYERNAME|. Say {halloween}.")

local outfits = {857,853,852,851,843,837,833,785,720,659,597,549,544,523,510,878,877,890}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

function onTargetCreature(cid, target)
	doSetCreatureOutfit(target, math.random(#outfits), 3 * 24 * 3600 * 1000)
end
setCombatCallBack(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

setCombatArea(combat, createCombatArea({
	{1,1,1,1,1},
	{1,1,1,1,1},
	{1,1,3,1,1},
	{1,1,1,1,1},
	{1,1,1,1,1}
}))

function creatureSayCallback(cid, type, msg)
	local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
	if(not npcHandler:isFocused(cid)) then
		return false
	end
	
	if(msg:lower() == "halloween") then
		doCombat(getNpcId(), combat, positionToVariant(getThingPos(getNpcId())))
		npcHandler:say('You are Dead, Suprise!', talkUser)
	end
	return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

Link para o post
Compartilhar em outros sites
11 minutos atrás, MaTTch disse:
  Ocultar conteúdo



local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
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

npcHandler:setMessage(MESSAGE_GREET, "Hello |PLAYERNAME|. Say {halloween}.")

local outfits = {857,853,852,851,843,837,833,785,720,659,597,549,544,523,510,878,877,890}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

function onTargetCreature(cid, target)
	doSetCreatureOutfit(target, math.random(#outfits), 3 * 24 * 3600 * 1000)
end
setCombatCallBack(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

setCombatArea(combat, createCombatArea({
	{1,1,1,1,1},
	{1,1,1,1,1},
	{1,1,3,1,1},
	{1,1,1,1,1},
	{1,1,1,1,1}
}))

function creatureSayCallback(cid, type, msg)
	local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
	if(not npcHandler:isFocused(cid)) then
		return false
	end
	
	if(msg:lower() == "halloween") then
		doCombat(getNpcId(), combat, positionToVariant(getThingPos(getNpcId())))
		npcHandler:say('You are Dead, Suprise!', talkUser)
	end
	return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

Deu erro na linha 18 SetCombatCallBack

x1fCxnI.png

Link para o post
Compartilhar em outros sites

 

2 minutos atrás, MaTTch disse:

Troque setCombatCallBack = setCombatCallback

 

Agora eu consigo sumonar o npc, falo com ele normalmente mas ele não da a outfit:

 

15:15 Halloween: Hello Samsumg. Say halloween.
15:15 Etsuko: Welcome, Samsumg! I have been expecting you.
15:15 Samsumg [1]: halloween
15:15 Halloween: You are Dead, Suprise!

x1fCxnI.png

Link para o post
Compartilhar em outros sites
Spoiler

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
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

npcHandler:setMessage(MESSAGE_GREET, "Hello |PLAYERNAME|. Say {halloween}.")

local outfits = {857,853,852,851,843,837,833,785,720,659,597,549,544,523,510,878,877,890}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

function onTargetCreature(cid, target)
	doSetCreatureOutfit(target, {lookType = math.random(#outfits)}, 3 * 24 * 3600 * 1000)
end
setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

setCombatArea(combat, createCombatArea({
	{1,1,1,1,1},
	{1,1,1,1,1},
	{1,1,3,1,1},
	{1,1,1,1,1},
	{1,1,1,1,1}
}))

function creatureSayCallback(cid, type, msg)
	local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
	if(not npcHandler:isFocused(cid)) then
		return false
	end
	
	if(msg:lower() == "halloween") then
		doCombat(getNpcId(), combat, numberToVariant(getNpcId()))
		npcHandler:say('You are Dead, Suprise!', talkUser)
	end
	return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

Link para o post
Compartilhar em outros sites
3 minutos atrás, MaTTch disse:
  Ocultar conteúdo



local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
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

npcHandler:setMessage(MESSAGE_GREET, "Hello |PLAYERNAME|. Say {halloween}.")

local outfits = {857,853,852,851,843,837,833,785,720,659,597,549,544,523,510,878,877,890}
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)

function onTargetCreature(cid, target)
	doSetCreatureOutfit(target, {lookType = math.random(#outfits)}, 3 * 24 * 3600 * 1000)
end
setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

setCombatArea(combat, createCombatArea({
	{1,1,1,1,1},
	{1,1,1,1,1},
	{1,1,3,1,1},
	{1,1,1,1,1},
	{1,1,1,1,1}
}))

function creatureSayCallback(cid, type, msg)
	local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
	if(not npcHandler:isFocused(cid)) then
		return false
	end
	
	if(msg:lower() == "halloween") then
		doCombat(getNpcId(), combat, numberToVariant(getNpcId()))
		npcHandler:say('You are Dead, Suprise!', talkUser)
	end
	return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

Não da nenhum erro no distro, mas o npc ainda não troca a outfit

x1fCxnI.png

Link para o post
Compartilhar em outros sites

 

1 minuto atrás, MaTTch disse:

Você testo com um player normal?

 

Sim testei, caso você queira deixar o script o mais simples possível para não tomar muito seu tempo, não precisa que ele transforme quem estiver em área apenas o jogador que falar com ele já está bom.

x1fCxnI.png

Link para o post
Compartilhar em outros sites
3 minutos atrás, MaTTch disse:

O estranho é que aqui funcionou e é a mesma versão do distro. Vou dar uma olhada aqui, fazer por condition mesmo.

 

Caramba, to tentando colocar esse npc já tem dias, se você conseguir deixar o mais simples possível e funcionar serei eternamente grato.. Eu não sei se tem algo haver mas como o servidor é derivado pode ser esse o motivo, pode ser que algo bem simples funcione ou não rsrs

 

0s1DfcE.png

Editado por One Punch Man (veja o histórico de edições)

x1fCxnI.png

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo