Killua 389 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 (editado) Esse código funciona assim: O player (somente líder da guild) da use no item escolhido e todos da guild recebem uma mensagem assim "PLAYER líder da guild está te chamando para o lado dele, você quer ir? Diga !yes para aceitar. Você tem X segundos para aceitar.". Depois disso, todos os membros da guild tem alguns segundos (configurável) para aceitar. Todos que aceitarem, vão ser teleportados para o lado do líder. Eu fiz ele para concorrer no OMS 5. Descrição: Ao usar um certo item, o jogador irá convidar todos os membros de sua guild para serem teleportados para o seu lado. Aquele que aceitarem, serão teleportados após alguns segundos (configurável). - Somente o líder da guild pode usar o item. - Após ter usado uma vez, é preciso aguardar alguns segundos (configurável) para usar novamente. - Jogadores que estiverem Pz Locked (em combate com outros jogadores) não serão teleportados. - Vários itens poderão ter essa funcionalidade, pois é usado com actionID. Instalando: Crie guildCall.lua em data/actions/scripts e coloque: -- Script feito por Killua, antigo amoeba13 -- #OMS 5 local tempo = 60 -- Tempo que os players tem para aceitar local cooldown = 60 -- Cooldown para chamar os membros novamente function getOnlineGuildMembersByRank(guildId, rank, selectLowerRanks) -- Função feita pelo Omega para o AGS. if not rank then rank = 3 selectLowerRanks = true end local list = {} for _, pid in pairs(getPlayersOnline()) do if getPlayerGuildId(pid) == guildId then local playerRank = getPlayerGuildLevel(pid) if playerRank == rank or (selectLowerRanks and playerRank <= rank) then table.insert(list, pid) end end end return list end function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, 281921) > os.time() then doPlayerSendCancel(cid, "Espere mais " .. getPlayerStorageValue(cid, 281921) - os.time() .. " segundos para chamar sua guld novamente.") return true end if getPlayerGuildLevel(cid) < 3 then doPlayerSendCancel(cid, "Somente o lider da guild pode chamar todos os membros.") return true end local guildMembers = getOnlineGuildMembersByRank(getPlayerGuildId(cid), 2, true) doPlayerSetStorageValue(cid, 281921, os.time() + cooldown) doPlayerSendTextMessage(cid, 25, "Voce chamou todos os membros da sua guild para virem aqui. Em " .. tempo .. " segundos, todos que aceitarem serao teleportados para ca.") for _, membros in ipairs (guildMembers) do doPlayerSendTextMessage(membros, MESSAGE_STATUS_CONSOLE_ORANGE, getCreatureName(cid).. " lider da guild esta te chamando para o lado dele, voce quer ir? Diga !yes para aceitar. Voce tem ".. tempo .." segundos para decidir") doPlayerSetStorageValue(membros, 380121, os.time() + tempo) addEvent(function() if getPlayerStorageValue(membros, 125023) == 1 then doPlayerSetStorageValue(membros, 125023, 0) if not isPlayerPzLocked(membros) then doTeleportThing(membros, fromPosition) doSendMagicEffect(fromPosition, CONST_ME_TELEPORT) else doPlayerSendCancel(membros, "Voce nao foi teleportado pois esta pz locked.") end end end, tempo * 1000) end return true end Em data/actions/actions.xml coloque essa tag: <action actionid="1433" script="guildCall.lua"/> Crie guildCall.lua em data/talkactions/scripts e coloque: function onSay(cid, words, param, channel) if getPlayerStorageValue(cid, 380121) < os.time() then doPlayerSendCancel(cid, "O tempo para aceitar ja acabou.") return true end doPlayerSetStorageValue(cid, 125023, 1) doPlayerSendTextMessage(cid, 25, "Voce aceitou ser teleportado! Daqui a " .. getPlayerStorageValue(cid, 380121) - os.time() .. " voce vai ser teleportado.") return true end Em data/talkactions/talkactions.xml coloca essa tag: <talkaction words="!yes" event="script" value="guildCall.lua"/> Coloque o actionID 1433 em todos os itens que poderão ser usados para "chamar" os membros da guild. Editado Janeiro 24, 2014 por Killua Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/ Compartilhar em outros sites More sharing options...
Omega 377 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 (editado) Parabéns pelo código, cara, vejo que está sempre se superando e aprendendo. Continue assim e boa sorte no OMS. Editado Janeiro 21, 2014 por Omega Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605928 Compartilhar em outros sites More sharing options...
AnneMotta 234 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 Opa, belo código ;D Mais tarte vou tentar ler ele para ver se consigo aprender algo, like! Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605931 Compartilhar em outros sites More sharing options...
Killua 389 Postado Janeiro 21, 2014 Autor Share Postado Janeiro 21, 2014 Obrigado pelos elogios! Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605933 Compartilhar em outros sites More sharing options...
JustinnoTibianno 71 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 Que código louco em, não consigo entender nada, mas gostei dele, é bom pra war. Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605959 Compartilhar em outros sites More sharing options...
HeelNox 71 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 Muito bom cara, mais tem como Por um Tile especifico, se e o lider tiver encima dele pode chamar se não estiver não pode . (Zeria zonas especiais, para o lider não ficar puxando todo mundo direto) Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605961 Compartilhar em outros sites More sharing options...
Killua 389 Postado Janeiro 21, 2014 Autor Share Postado Janeiro 21, 2014 Muito bom cara, mais tem como Por um Tile especifico, se e o lider tiver encima dele pode chamar se não estiver não pode . (Zeria zonas especiais, para o lider não ficar puxando todo mundo direto) Mas do jeito que está, o líder só pode puxar pelos itens que vc colocar o actionID... Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605974 Compartilhar em outros sites More sharing options...
HeelNox 71 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 Muito bom cara, mais tem como Por um Tile especifico, se e o lider tiver encima dele pode chamar se não estiver não pode . (Zeria zonas especiais, para o lider não ficar puxando todo mundo direto) Mas do jeito que está, o líder só pode puxar pelos itens que vc colocar o actionID... HAHA, Desculpa não tinha reparado Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605975 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 gostei da talk, mas retira mto o rpg do server '-' em um global por exemplo, ficaria paia kk mas a ideia é bacana parabéns rep+ Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605977 Compartilhar em outros sites More sharing options...
Killua 389 Postado Janeiro 21, 2014 Autor Share Postado Janeiro 21, 2014 gostei da talk, mas retira mto o rpg do server '-' em um global por exemplo, ficaria paia kk mas a ideia é bacana parabéns rep+ Valeu vod... Isso é vdd mas eu fiz ele pensando em usar em eventos tipo Castle War, arenas ou na entrada de algumas quests Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1605984 Compartilhar em outros sites More sharing options...
zipter98 1102 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 Código bem legal, parabéns. E boa sorte no OMS :3 Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1606050 Compartilhar em outros sites More sharing options...
srkapetinha 3 Postado Janeiro 21, 2014 Share Postado Janeiro 21, 2014 Muito bom Amoeba... Já peguei um monte de script seu hahahaa.. Vo testa ele aqui, se pintar algo dando erro, te aviso :DDD Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1606137 Compartilhar em outros sites More sharing options...
Killua 389 Postado Janeiro 24, 2014 Autor Share Postado Janeiro 24, 2014 Brigadão gente Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1607239 Compartilhar em outros sites More sharing options...
eliaspalermo 0 Postado Abril 9, 2014 Share Postado Abril 9, 2014 Muito bom !!!! Link para o comentário https://xtibia.com/forum/topic/227541-teleportar-todos-da-guild-para-seu-lado/#findComment-1635274 Compartilhar em outros sites More sharing options...
Posts Recomendados