Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Boa tarde amigos, estou aqui novamente solicitando a ajuda de vocês.

 

Desta vez necessito de 1 script simples de task aonde acontece da seguinte forma:

 

NPC Zlak: O player pede a missão e ganha storage 20030 com valor 5.

 

Após ele ganhar a storage 20030, um outro script (creature script) adicionado no monstro (Lizard Magistratus), a seguinte função:

 

if storage == 23 and storagelizard == 5 then
  
 -- (ao matar 1 lizard magistratus remover 1 storage)

 

e segue assim até o player ficar com a storagelizard == 1 para ele voltar ao NPC

Link para o post
Compartilhar em outros sites

@Everson Miranda 

 

Em data/creaturescripts/creaturescripts.xml deixe estas tags:

 

Spoiler

	<event type="kill" name="minitask" event="script" value="minitask.lua"/>
	<event type="login" name="minitasklogin" event="script" value="minitasklogin.lua"/>

 

 

 

Agora os scripts lua...

 

minitask.lua

 

Spoiler

local config = {
					['Rat'] = 15244, --["nome do monstro"] = storage
					['Dragon'] = 15245
}


function onKill(cid, target)
	local v = getPlayerStorageValue(cid,config[getCreatureName(target)])
	if v > 1 then
		setPlayerStorageValue(cid, config[getCreatureName(target)], v - 1)
	end
	return true
end

 

 

 

minitasklogin.lua

 

Spoiler

function onLogin(cid)
	registerCreatureEvent(cid, "minitask")
	return true
end

 

 

Link para o post
Compartilhar em outros sites

@antharaz 

Obrigado meu amigo, poderia me ajudar em uma coisa, eu preciso que o player mate primeiro 4 lizards magistratus entregue a missao logo apos ele entregue a task de 6 lizards nobles..

 

tem como me ajudar ?

Link para o post
Compartilhar em outros sites

@antharaz aaaaa, agora entendi sua função

 

 

if v > 1 then
		setPlayerStorageValue(cid, config[getCreatureName(target)], v - 1)

 

este codigo resolve meus problemas, vou testar aqui, interessante vc pôs os 2 em 1 so ^^ ja te digo se funfou

Editado por Everson Miranda (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Parabéns mais uma vez!! Já tem 1 fã ^^

@antharaz funcionou rsrsrs é que eu to mexendo em tanto script que acaba dando um nó na minha mente... ai tem que parar, ler a linha de código devagar para conseguir discernir rsrsrs

Editado por Everson Miranda (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
2 horas atrás, antharaz disse:

@Everson Miranda 

 

Em data/creaturescripts/creaturescripts.xml deixe estas tags:

 

  Ocultar conteúdo


	<event type="kill" name="minitask" event="script" value="minitask.lua"/>
	<event type="login" name="minitasklogin" event="script" value="minitasklogin.lua"/>

 

 

 

Agora os scripts lua...

 

minitask.lua

 

  Ocultar conteúdo


local config = {
					['Rat'] = 15244, --["nome do monstro"] = storage
					['Dragon'] = 15245
}


function onKill(cid, target)
	local v = getPlayerStorageValue(cid,config[getCreatureName(target)])
	if v > 1 then
		setPlayerStorageValue(cid, config[getCreatureName(target)], v - 1)
	end
	return true
end

 

 

 

minitasklogin.lua

 

  Ocultar conteúdo


function onLogin(cid)
	registerCreatureEvent(cid, "minitask")
	return true
end

 

 

Tem como fazer que na hora que a gente mata a quantidade certa dos monstros, eu ganhe items, exp nisso?

Link para o post
Compartilhar em outros sites

@xMateuss Esse script depende de 1 NPC, no caso eu pego a mission ganho 5 de storage e quando eu mato 4 bixos e fico com a storage = a 1 eu volto no npc e entrego a missão. 

Pelo oque eu entendi vc quer matar 100 bixos e ganhar 1 item sem falar no npc?

Link para o post
Compartilhar em outros sites
2 horas atrás, Everson Miranda disse:

@xMateuss Esse script depende de 1 NPC, no caso eu pego a mission ganho 5 de storage e quando eu mato 4 bixos e fico com a storage = a 1 eu volto no npc e entrego a missão. 

Pelo oque eu entendi vc quer matar 100 bixos e ganhar 1 item sem falar no npc?

Quando matar os bixo é falar com o NPC e depois receber 1 item e uma certa quantidade de exp

Link para o post
Compartilhar em outros sites

@xMateuss

Primeira coisa crie um npc com qualquer nome. (.XML e .LUA).

 

no arquivo npc.lua adicione o seguinte código.

Spoiler

local STORAGE = 20015
local STORAGE2 = 20016
local STORAGE3 = 20017
local ITEMR = ID DO ITEM DA RECONPENSA
local EXP = quantidade de experiencia que vai ganhar
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:lower())   end
function onThink()                  npcHandler:onThink()                  end
local talkState = {}
 
function creatureSayCallback(cid, type, msg)
   if(not npcHandler:isFocused(cid)) then
      return false
   end
 
   local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
 
   if msgcontains(msg, "task") then
    if  getPlayerStorageValue(cid, STORAGE) == -1 then
      npcHandler:say("Voce está pronto para matar 100 {Rotworms} ?", cid)
         setPlayerStorageValue(cid, STORAGE, 1)
    elseif getPlayerStorageValue(cid, STORAGE2) == 1 and getPlayerStorageValue(cid, STORAGE3) == -1 then
      npcHandler:say("Parabéns! Voce concluiu a task dos {rotworms}.", cid)
      doPlayerAddExp(cid, EXP)
      doPlayerAddItem(cid,ITEMR, 1)
      setPlayerStorageValue(cid, STORAGE3, 1)
else
    npcHandler:say("desculpe nao e possivel", cid)
end
    
elseif msgcontains(msg, 'yes') or  msgcontains(msg, 'sim') then
        if storage == 1 then
            npcHandler:say("Está certo volte quando matar 100 {Rotworms}.", cid)
            setPlayerStorageValue(cid, STORAGE2, 101)   
end
   return true
end
 
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

agora faça da seguinte forma :

 

Em data/creaturescripts/creaturescripts.xml deixe estas tags:

Spoiler

<event type="kill" name="minitask" event="script" value="minitask.lua"/>
<event type="login" name="minitasklogin" event="script" value="minitasklogin.lua"/>

 

Agora os scripts lua...

 

minitask.lua

Spoiler

local config = {
					['Rotworm] = 20016, --["nome do monstro"] = storage
					['Dragon'] = 20017
}


function onKill(cid, target)
	local v = getPlayerStorageValue(cid,config[getCreatureName(target)])
	if v > 1 then
		setPlayerStorageValue(cid, config[getCreatureName(target)], v - 1)
	end
	return true
end

 

minitasklogin.lua

Spoiler

function onLogin(cid)
	registerCreatureEvent(cid, "minitask")
	return true
end

 

Credito dos arquivos luas tirando o NPC vai para @antharaz 

Editado por Everson Miranda (veja o histórico de edições)
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.

  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por Vitor Bicaleto
      Galera to com o script do addon doll aqui, quando eu digito apenas "!addon" ele aparece assim: Digite novamente, algo está errado!"
      quando digito por exemplo: "!addon citizen" ele não funciona e não da nenhum erro
       
      mesma coisa acontece com o mount doll.. 
    • Por Ayron5
      Substitui uma stone no serve, deu tudo certo fora  esse  erro ajudem  Valendo  Rep+  Grato  

      Erro: data/actions/scripts/boost.lua:557: table index is nil
       [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua)

      Script:
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo