Ir para conteúdo

Featured Replies

Postado

Olá pessoal queria fazer uma quest que seja possivel faze-la todo dia, mais vejam oque tem de errado em meus scripts

	<globalevent name="ResetQuest" time="00:00" event="script" value="cardstor.lua"/>
function onTime()
    local globalstor = 50041
    
    if getGlobalStorageValue(globalstor) > 0 then
        setGlobalStorageValue(globalstor, -1)
    end
    
    return true
end

E depois a action:

local config = {
effect = 52,
premiumdays = 1,
remove_on_use = "yes"
}
 
 
function onUse(cid, item, frompos, item2, topos)
doPlayerAddStamina(cid, (2520 - getPlayerStamina(cid)))
doSendMagicEffect(getThingPos(cid), config.effect)
doPlayerAddPremiumDays(cid, config.premiumdays)
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Parabens! Voce acabou de receber um dia de GOLD CARD.")
 
if config.remove_on_use == "yes" then
doRemoveItem(item.uid, 1)
end
return true
end

OBS: Eu registrei no actions.xml so nao axei necessario colocar aqui.

Resolvido por Adriano SwaTT

Ir para solução
  • Respostas 19
  • Visualizações 2.6k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • luanluciano93
    luanluciano93

    local config = { premiumDays = 1, storageQuest = 9999, seconds = 86400, -- seconds de 1 dia. } function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, storageQuest) <

  • Adriano SwaTT
    Adriano SwaTT

    tente assim:   local config = {     premiumDays = 1,     storageQuest = 9999,     timeWait = 1, -- tempo em dias.     staminaRefuel = 3, -- tempo que irá recuperar em horas } function onUse(cid,

  • Ai modifiquei o script que o Adriano fez, testa ai! local config = {     expr = 50000, -- Exp que vai ganhar!     storageQuest = 9999,     timeWait = 1, -- tempo em dias.     staminaRefuel = 3, -- t

Postado
  Em 03/03/2015 em 17:18, falling disse:

Olá pessoal queria fazer uma quest que seja possivel faze-la todo dia, mais vejam oque tem de errado em meus scripts

	<globalevent name="ResetQuest" time="00:00" event="script" value="cardstor.lua"/>
function onTime()
    local globalstor = 50041
    
    if getGlobalStorageValue(globalstor) > 0 then
        setGlobalStorageValue(globalstor, -1)
    end
    
    return true
end

E depois a action:

local config = {
effect = 52,
premiumdays = 1,
remove_on_use = "yes"
}
 
 
function onUse(cid, item, frompos, item2, topos)
doPlayerAddStamina(cid, (2520 - getPlayerStamina(cid)))
doSendMagicEffect(getThingPos(cid), config.effect)
doPlayerAddPremiumDays(cid, config.premiumdays)
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Parabens! Voce acabou de receber um dia de GOLD CARD.")
 
if config.remove_on_use == "yes" then
doRemoveItem(item.uid, 1)
end
return true
end

OBS: Eu registrei no actions.xml so nao axei necessario colocar aqui.

Cara eu não manjo muito, mais fiz uns testes aqui e pelo que parece GlobalStorage é como o nome diz mesmo é 1 GlobalStorage e não a storage de todos os players, tem até 1 table no SQL chamada GlobalStorage, ela serve para fazer eventos diarios por exemplo:

O global event checa se o GlobalStorage XXXX é maior que 0 e faz o teleport ai se tu quiser desligar o evento você muda o storage pra -1 que o evento não vai funcionar.

 

Agora se fosse fazer 1 quest utilizando GlobalStorage como você quer seria assim:

O player ia usar o item e a GlobalStorage XXXX ia mudar para 1, então ninguém mais ia conseguir fazer até o global event mudar o GlobalStorage XXXX para -1, porém ia ficar nisso e só 1 player iria poder fazer a quest por dia no caso...

Acho que é isso, sou iniciante então pode ter algo errado na minha informação!

 

To tentando fazer algum script de quest diaria também, se eu conseguir eu posto aqui pra tu.

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

Postado
local config = {
	premiumDays = 1,
	storageQuest = 9999,
	seconds = 86400, -- seconds de 1 dia.
}

function onUse(cid, item, frompos, item2, topos)
	
	if getPlayerStorageValue(cid, storageQuest) < os.time then
		setPlayerStorageValue(cid, storageQuest, os.time + config.seconds)
		doPlayerAddStamina(cid, (2520 - getPlayerStamina(cid)))
		doSendMagicEffect(getThingPos(cid), 52)
		doPlayerAddPremiumDays(cid, config.premiumDays)
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Parabens! Voce acabou de receber um dia de GOLD CARD.")
		doRemoveItem(item.uid, 1)
	else
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce ainda nao pode usar.")
	end
		
	return true
end
Postado
  Em 03/03/2015 em 19:49, luanluciano93 disse:
local config = {
	premiumDays = 1,
	storageQuest = 9999,
	seconds = 86400, -- seconds de 1 dia.
}

function onUse(cid, item, frompos, item2, topos)
	
	if getPlayerStorageValue(cid, storageQuest) < os.time then
		setPlayerStorageValue(cid, storageQuest, os.time + config.seconds)
		doPlayerAddStamina(cid, (2520 - getPlayerStamina(cid)))
		doSendMagicEffect(getThingPos(cid), 52)
		doPlayerAddPremiumDays(cid, config.premiumDays)
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Parabens! Voce acabou de receber um dia de GOLD CARD.")
		doRemoveItem(item.uid, 1)
	else
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce ainda nao pode usar.")
	end
		
	return true
end

 

To tentando usar esse script aqui, mais quando dou use no item aparece assim na distro:

laIRj3b.png

Achei que fosse eu fazendo cagada na hora de editar o script, mais testei o seu sem mexer nada e da isso também :S

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo