Postado Outubro 6, 2017 7 anos Ae galera do TK, estou começando a aprender a programar meus próprios script. Tenho em mente um evento que já está até que 40% feito, porém, cheguei em uma parte que não faço a minima ideia de como fazer. Explicação da minha dificuldade: Pretendo contar as mortes de duas equipe adversária(cada equipe representa uma storage) e após 15 minutos quem tiver o maior número de mortes ganhará uma recompensa. Não faço a minima ideia de como fazer a contagem das mortes entre as equipes dentro do prazo de 15 minutos. OBS: Se poderem, me explica como trabalhar usando os Callbacks envolvidos nesse esquema ficarei grato. Obrigado!! Editado Outubro 6, 2017 7 anos por Bagon (veja o histórico de edições) “Enquanto nos derem ao menos 1% de chance, seguiremos lutando. E venceremos! Esse é o verdadeiro e único Clube da Fé! Vai São Paulo!”
Postado Outubro 6, 2017 7 anos Enquanto o evento ocorrer: - Player do time A mata Player do time B -> aumenta o valor do globalstorage X - Player do time B mata Player do time A -> aumenta o valor do globalstorage Y Ao final do evento verifica qual o maior globalstorage. Contato: Email: [email protected] Discord: Dwarfer#2715
Postado Outubro 6, 2017 7 anos Bom, vou falar uma forma, mas não sei se seria a melhor de fazer esse evento. Primeiramente eu colocaria um: Spoiler setGlobalStorageValue(storage, 0) setGlobalStorageValue(globalStorageTeamRed, 0) setGlobalStorageValue(globalStorageTeamBlue, 0) (usará para começar a contar as mortes). E isso: addEvent(setGlobalStorageValue, 15 * 60 * 1000, storage, -1) addEvent(setGlobalStorageValue, 15 * 60 * 1000, globalStorageTeamRed, -1) addEvent(setGlobalStorageValue, 15 * 60 * 1000, globalStorageTeamBlue, -1) (usará para encerrar a contagem) Depois eu criaria um arquivo com a função onDeath(cid, corpse, deathList) no creaturescripts.xml para adicionar a contagem. Nele você colocaria algo similar a isso: Spoiler function onDeath(cid, corpse, deathList) if getGlobalStorageValue(storage) == -1 then return true end local globalStorageTeamRed = 1111 local globalStorageTeamBlue = 2222 if getPlayerStorageValue(cid, storageDoSeuTeam) == 1 then -- TEAM RED setGlobalStorageValue(globalStorageTeamRed, getGlobalStorageValue(globalStorageTeamRed) + 1) else -- TEAM BLUE setGlobalStorageValue(globalStorageTeamBlue, getGlobalStorageValue(globalStorageTeamBlue) + 1) end return true end Sei que foi uma explicação bem ruim, mas se você tiver um conhecimento básico de lua acho que entenderá.
Postado Outubro 6, 2017 7 anos Autor @Noninhouh e @Dwarfer a função onPrepareDeath pode ser usada também ? Essa função eu tinha configurado para quando o player morrer ser teletransportado de volta ao evento Editado Outubro 6, 2017 7 anos por Bagon (veja o histórico de edições) “Enquanto nos derem ao menos 1% de chance, seguiremos lutando. E venceremos! Esse é o verdadeiro e único Clube da Fé! Vai São Paulo!”
Postado Outubro 6, 2017 7 anos Creio que sim, se ela está funcionando para o player voltar ao evento, provavelmente deve funcionar, porém não sei qual a diferença dela pra a função onDeath se alguém pudesse explicar pra mim seria bom kk
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.