Postado Maio 18, 2016 8 anos Boa noite galera, estou precisando de uma função aparentemente simples. Ex: O jogador precisa matar 2000 dragons em um unico dia(global server save) então contaria das 07:15 da manha de hoje até as 07:00 da manha do dia seguinte (horario que o saver fecha para backup), não pode ser a cada 24 horas, pois se o jogador matou bixo as 11:00 da noite ao reabrir o server ainda nao daria 24h. Resumindo, o player nao pode começar a task em um dia e deixar pra terminar no dia seguinte após o global save. Eu acho que precisaria de um global event que deletasse essa storage todos os dias ao fechar o servidor, para o player começar do 0 assim que o server reabrir, poderia ser adicionado um comando de kicar todos os players e setar a storage para 0 ou mesmo deletar pra todos os jogadores do server. USO TFS 1.2 e pensei em um global event do tipo... local shutdownAtServerSave = true local cleanMapAtServerSave = false local function serverSave() if shutdownAtServerSave then Game.setGameState(GAME_STATE_SHUTDOWN) else Game.setGameState(GAME_STATE_NORMAL) end if cleanMapAtServerSave then cleanMap() end saveServer() end local function thirdServerSaveWarning() Game.broadcastMessage('The Server now is closed!', MESSAGE_STATUS_WARNING) Game.setGameState(GAME_STATE_CLOSED) (aqui poderia entrar uma query seila como faz >>>>>> "Player:setStorageValue(986, 0)" <<<<< para todos os players <<<<<<<<<<<<<<<<<<< addEvent(serverSave, 60000) end local function secondServerSaveWarning() Game.broadcastMessage('The Server will be closed in one minute. See you tomorrow!', MESSAGE_STATUS_WARNING) addEvent(thirdServerSaveWarning, 60000) end local function firstServerSaveWarning() Game.broadcastMessage('The Server will be closed in 3 minutes. Please go to a safe place.', MESSAGE_STATUS_WARNING) addEvent(secondServerSaveWarning, 120000) end function onTime(interval) Game.broadcastMessage('The Server will be closed in 5 minutes. Please go to a safe place.', MESSAGE_STATUS_WARNING) Game.setGameState(GAME_STATE_STARTUP) addEvent(firstServerSaveWarning, 120000) return not shutdownAtServerSave end Editado Maio 19, 2016 8 anos por onix (veja o histórico de edições)
Postado Maio 18, 2016 8 anos Só precisa colocar o código que zera o global storage para executar todo o dia às 07:00...
Postado Maio 18, 2016 8 anos Autor 1 minuto atrás, Talesigorvr disse: Só precisa colocar o código que zera o global storage para executar todo o dia às 07:00... Exato! Desculpe a minha ignorância, mas eu não sei fazer isto. =( e mais um detalhe, não é global storage é player storage. Editado Maio 18, 2016 8 anos por onix (veja o histórico de edições)
Postado Maio 18, 2016 8 anos globalevents/scripts nome_arquivo.lua local storage = 16516 -- storage que você quer zerar. function onTime() setGlobalStorageValue (storage, -1) return true end XML: <globalevent name="dailyQuest" time="07:00" event="script" value="nome_arquivo.lua"/>
Postado Maio 19, 2016 8 anos Autor 1 hora atrás, Talesigorvr disse: local storage = 16516 -- storage que você quer zerar. function onTime() setGlobalStorageValue (storage, -1) return true end Obrigado por ajudar, mas GLOBAL STORAGE e PLAYER STORAGE não é a mesma coisa, se eu atribuir um global storage ao matar 1 montro da task, todos os player do server vão receber essao global storage mesmo sem ter matado, isso seria util em uma world quest, aonde alguns fazem a missao e o server inteiro recebe a recompensa.
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.