Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado

Olá novamente. Estou tentando organizar meu questlog (pra que as missões apareçam, mas só fiquem com status de "completa" após terem sido feitas).

 

Tudo funciona ok, mas o jeito que estou fazendo me parece mais trabalhoso, e "desorganizado". Gostaria de saber se tem como eu fazer um Array de Storages, e depois pegar todas as que estão -1 e setar como 0.

 

Segue formato atual do código:

function onLogin(player)
	
		-- Quest Logs
	if player:getStorageValue(5010) == -1 then
	player:setStorageValue(5010, 0)
	end
	
	if player:getStorageValue(5020) == -1 then
	player:setStorageValue(5020, 0)
	end
	
	if player:getStorageValue(5030) == -1 then
	player:setStorageValue(5030, 0)
	end
	
	if player:getStorageValue(5040) == -1 then
	player:setStorageValue(5040, 0)
	end
	
	if player:getStorageValue(5050) == -1 then
	player:setStorageValue(5050, 0)
	end
	
	if player:getStorageValue(5060) == -1 then
	player:setStorageValue(5060, 0)
	end
	
	if player:getStorageValue(5070) == -1 then
	player:setStorageValue(5070, 0)
	end
	
	if player:getStorageValue(5080) == -1 then
	player:setStorageValue(5080, 0)
	end
	
	if player:getStorageValue(1114) == -1 then
	player:setStorageValue(1114, 0)
	end
	
	if player:getStorageValue(87580) == -1 then
	player:setStorageValue(87580, 0)
	end
	
	if player:getStorageValue(587423) == -1 then
	player:setStorageValue(587423, 0)
	end
	
    return true
	
end 

 

Quero fazer um "local quests" com todas elas, e aí um if só que pegue todas as storages no array "quests" e, caso a storage seja -1, sete ela como 0.

 

Gostaria também de fazer com que caso a storage seja 1, ele "some" um valor a uma storage "quests feitas", por assim dizer. Pra fazer um ranking de quests feitas.

 

Aproveitando o tópico, eu uso ambos clientes 10.00 (outdated) e 11.48 no meu ot, mas quando tento abrir esse questlog (a parte de missões especificamente) no cliente 11 ele crasha. No cliente 10 funciona normalmente. Alguém sabe se isso tem solução?

 

Editado por MatCollier (veja o histórico de edições)

Postado
local storagesQueVaoPraZero = {
	5010,
	5020
}

local storagesParaVerificarESomar = {
	5030,
	5040
}

local storageSoma = 1000

function onLogin(cid)
	for _, storage in ipairs(storagesQueVaoPraZero) do
		if player:getStorageValue(storage) == -1 then
			player:setStorageValue(storage, 1)
		end
	end

	for _, storage in ipairs(storagesParaVerificarESomar) do
		if player:getStorageValue(storage) == 1 then
			player:setStorageValue(storageSoma, player:getStorageValue(storageSoma) + 1)
			player:setStorageValue(storage, 2)	
		end
	end

	return true
end

 

Postado
  • Autor

Cara, muito obrigado mesmo! Tu tas salvando minha vida.

 

Na verdade as mesmas storages que vai verificar se é -1, vai verificar se é 1 (se for -1, seta 0, se for 1, aumenta a storageSoma).

Mas acho que consigo adaptar com isso aí que tu me deu.

 

Só tem 1 porém: Eu não queria mudar as storages que forem =1. Queria adicionar +1 na storage soma e manter ela como 1, porque se a storage virar 2, vai bugar meu questlog. Tem como? Ou por ser uma função onLogin vai ficar somando sempre que eu logar e o número vai ficar errado?

Postado
  • Autor
9 minutos atrás, luanluciano93 disse:

Você pode fazer a contagem toda vez que logar setando uma storage zerada ou colocar pra somar 1 em cada quest.
No primeiro caso você colocar antes do laço isso: 


player:setStorageValue(storageSoma, 0)

 

Entendi! Valeu mesmo mano!!! Agora só preciso criar uma coluna na database pra guardar esse valor, e fazer um ranking de quests feitas né?

Deu perfeitamente certo, muito obrigado mesmo!!!

 

Uma dúvida: Tu acha que tem como fazer essa função dar certo como onThink? Porque eu reparei aqui que o "Quests Feitas", ou no caso a storageSoma, só atualiza quando reloga, mas queria q ele atualizasse assim que uma nova quest fosse feita.

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo