Ir para conteúdo
  • Cadastre-se

(Resolvido)Quest que dá Book e quest tipo Annihilator


Ir para solução Resolvido por fabiodias,

Posts Recomendados

E aí galera, tudo bem?

 

 

Dessa vez eu venho aqui perguntar como eu faço uma quest que dê um book (com coisas escritas) e também perguntar como eu faço uma quest tipo annihi. Que tenha 4 baús mas você só pode pegar 1, eu acho que se eu botar a mesma storage em todos vai dar bug ;s

Nem todo loop infinito é ruim ;P 

User *eu = new User("otteN");
RepSystem<User> *myRep = new RepSystem<User>("jóinha");
myRep->setAlvo(eu);

/* só por ser criado já sou o melhor membro */ 

while(eu->isMelhorMembro()){
myRep->reputar();
}

 

Link para o post
Compartilhar em outros sites

                                                                         github.png TFS 0.4 DEV                                                                                                       nvzl0l.jpg
 
Página no facebook: https://www.facebook.com/Suporterking                                                                                     
Skype: fabinhodias01
 
 
"A almapermanece em suas criações" 


h3dhnuI.jpg           
(Dou suporte apenas em tópicos..)

Link para o post
Compartilhar em outros sites

Cara, esses tópicos não tem nada a ver com minhas pergunttas.

Nem todo loop infinito é ruim ;P 

User *eu = new User("otteN");
RepSystem<User> *myRep = new RepSystem<User>("jóinha");
myRep->setAlvo(eu);

/* só por ser criado já sou o melhor membro */ 

while(eu->isMelhorMembro()){
myRep->reputar();
}

 

Link para o post
Compartilhar em outros sites
  • Solução

cara do book tem,pois só vai mudar o id..

agora criando quest com mais Baús siga o tutorial abaixo V

 

Vá em Actions/scripts e cria um novo arquivo newquest.lua e adicione:

function onUse(cid,  item,  frompos,  item2,  topos)
if item.uid == 5005 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
doPlayerAddItem(cid, 12391, 1)
setPlayerStorageValue(cid, 5010, 1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
elseif item.uid == 5006 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
doPlayerAddItem(cid, 10943, 1)
setPlayerStorageValue(cid, 5010, 1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR,  "The chest is empty.")
end
elseif item.uid == 5007 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
doPlayerAddItem(cid, 12574, 1)
setPlayerStorageValue(cid, 5010, 1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
elseif item.uid == 5008 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
doPlayerAddItem(cid, 7559, 1)
setPlayerStorageValue(cid, 5010, 1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR,  "The chest is empty.")
end
elseif item.uid == 5009 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
doPlayerAddItem(cid, 7735, 1)
setPlayerStorageValue(cid,  5010,  1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
else
return FALSE
end
 return TRUE
end
Agora vá em Actions/actions.xml e adicione as seguintes tags:


<action uniqueid="5005" script="newquest.lua"/>
<action uniqueid="5006" script="newquest.lua"/>
<action uniqueid="5007" script="newquest.lua"/>
<action uniqueid="5008" script="newquest.lua"/>
<action uniqueid="5009" script="newquest.lua"/>
Feito a parte dos scrips, abra seu mapa e coloque os 5 baús no mapa e em cada baú adicione um uniqueid. Você deve usar um em cada baú que são eles:
 
5005
5006
5007
5008
5009
 
Salve e pronto.

                                                                         github.png TFS 0.4 DEV                                                                                                       nvzl0l.jpg
 
Página no facebook: https://www.facebook.com/Suporterking                                                                                     
Skype: fabinhodias01
 
 
"A almapermanece em suas criações" 


h3dhnuI.jpg           
(Dou suporte apenas em tópicos..)

Link para o post
Compartilhar em outros sites

Tem que usar o 

doItemSetAttribute(uid, attribute, value)

Onde o atributo é "text" ou alguma coisa assim...

 

 

se conseguir usar, dá um toque...

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Valeu Fabiodias, na verdade só precisava do Script para estudar como você fez. Entendi como se faz, valeu.

 

Funcionou Caronte, ty. Só não dou melhor resposta pq a pergunta 'principal' era da Annihi.

Nem todo loop infinito é ruim ;P 

User *eu = new User("otteN");
RepSystem<User> *myRep = new RepSystem<User>("jóinha");
myRep->setAlvo(eu);

/* só por ser criado já sou o melhor membro */ 

while(eu->isMelhorMembro()){
myRep->reputar();
}

 

Link para o post
Compartilhar em outros sites

Valeu Fabiodias, na verdade só precisava do Script para estudar como você fez. Entendi como se faz, valeu.

 

Funcionou Caronte, ty. Só não dou melhor resposta pq a pergunta 'principal' era da Annihi.

ah sim,precisando tamo ai :D

                                                                         github.png TFS 0.4 DEV                                                                                                       nvzl0l.jpg
 
Página no facebook: https://www.facebook.com/Suporterking                                                                                     
Skype: fabinhodias01
 
 
"A almapermanece em suas criações" 


h3dhnuI.jpg           
(Dou suporte apenas em tópicos..)

Link para o post
Compartilhar em outros sites

Funcionou Caronte, ty. Só não dou melhor resposta pq a pergunta 'principal' era da Annihi.
 

 

 

Como você usou ?

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

simplifiquei o script :

 

function onUse(cid, item, frompos, item2, topos)

local stg = 5010
local bau = {
		--[id do bau] = {item, quantidade}
		[5005] = {item = 12391, count = 1},
		[5006] = {item = 10943, count = 1},
		[5007] = {item = 12574, count = 1},
		[5008] = {item = 7559, count = 1},
		[5009] = {item = 7735, count = 1}
}	
	
	for item, baus in pairs(bau) do
		if item.uid == item then
			if getPlayerStorageValue(cid, stg) < -1 then
				doPlayerAddItem(cid, baus[1], baus[2])
				doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
				setPlayerStorageValue(cid, stg, 1)
			else
				doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
			end
		end
	end
return true
end

ai o maxwell me disse que nem precisava utilizar o for e que a checagem do item.uid era inútil, e fez esse :

local stg = 5010
local baus = {
	--[id do bau] = {item, quantidade}
	[5005] = {item = 12391, count = 1},
	[5006] = {item = 10943, count = 1},
	[5007] = {item = 12574, count = 1},
	[5008] = {item = 7559, count = 1},
	[5009] = {item = 7735, count = 1}
} 

function onUse(cid, item, frompos, item2, topos)
	local bau = baus[item.uid]
	
	if getPlayerStorageValue(cid, stg) < -1 then
		doPlayerAddItem(cid, baus[1], baus[2])
		doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
		setPlayerStorageValue(cid, stg, 1)
	else
		doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
	end

	return true
end 

:D

 

EQD4Qy4.gif

Link para o post
Compartilhar em outros sites

 

simplifiquei o script :

 

function onUse(cid, item, frompos, item2, topos)

local stg = 5010
local bau = {
		--[id do bau] = {item, quantidade}
		[5005] = {item = 12391, count = 1},
		[5006] = {item = 10943, count = 1},
		[5007] = {item = 12574, count = 1},
		[5008] = {item = 7559, count = 1},
		[5009] = {item = 7735, count = 1}
}	
	
	for item, baus in pairs(bau) do
		if item.uid == item then
			if getPlayerStorageValue(cid, stg) < -1 then
				doPlayerAddItem(cid, baus[1], baus[2])
				doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
				setPlayerStorageValue(cid, stg, 1)
			else
				doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
			end
		end
	end
return true
end

ai o maxwell me disse que nem precisava utilizar o for e que a checagem do item.uid era inútil, e fez esse :

local stg = 5010
local baus = {
	--[id do bau] = {item, quantidade}
	[5005] = {item = 12391, count = 1},
	[5006] = {item = 10943, count = 1},
	[5007] = {item = 12574, count = 1},
	[5008] = {item = 7559, count = 1},
	[5009] = {item = 7735, count = 1}
} 

function onUse(cid, item, frompos, item2, topos)
	local bau = baus[item.uid]
	
	if getPlayerStorageValue(cid, stg) < -1 then
		doPlayerAddItem(cid, baus[1], baus[2])
		doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "You have found a NAME ITEM.")
		setPlayerStorageValue(cid, stg, 1)
	else
		doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
	end

	return true
end 

:D

 

 

cara já ta resolvido,está cometendo flood creio eu!

                                                                         github.png TFS 0.4 DEV                                                                                                       nvzl0l.jpg
 
Página no facebook: https://www.facebook.com/Suporterking                                                                                     
Skype: fabinhodias01
 
 
"A almapermanece em suas criações" 


h3dhnuI.jpg           
(Dou suporte apenas em tópicos..)

Link para o post
Compartilhar em outros sites

@fabiodias o membro não cometeu flood, ele simplesmente simplificou o script pro criador do tópico, ele comentou algo relacionado ao assunto do tópico então quer dizer que não é flood.

Agora se você analisar, você fez uma denúncia e comentou no tópico, alertando o membro sobre o flood, no caso isso é considerado flood e moderação secundária, preste mais atenção da proxima vez amigo, deixe que a equipe decida se o que o membro comentou é flood ou não, para isso existe o botão de relatar para a equipe!

Leia as regras do fórum : http://www.tibiaking.com/forum/forum/23-regras-do-forum/

 

2.19 - Moderação secundária não será tolerada:
Mensagens como "Ei, esse tópico está na área errada", "Organize seu tópico, está uma bagunça!", só podem ser usadas pelos membros de nossa equipe, caso contrário, esse tipo de ação será considerada flood, já que a correções desse nicho não cabem aos membros e, portanto, caracteriza como desvio do assunto principal do tópico.

2.4 - Mensagens inúteis:
Não poste mensagens sem conteúdo, que não contribuem em nada ou que não estejam relacionadas ao assunto do tópico. Mensagens assim são chamadas de Floods. Postar coisas como "haha", "lol", "me add no msn aí", entre outras, é o que considera-se completamente inútil. Postar várias mensagens iguais, mesmo que em tópicos diferentes, também pode ser considerado Flood.

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.

  • Estatísticas dos Fóruns

    96824
    Tópicos
    519564
    Posts
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo