Postado Junho 19, 2023 2 anos .Qual servidor você utiliza como base? OTX2 Qual o motivo deste tópico? Estou querendo usar um comando que vai enviar uma mensagem num channel que, só vai captar a mensagem de quem estiver na tela, semelhante ao default. imaginei que poderia trocar este cid, por algo, mas não imagino o que poderia usar pra fazer isso. doPlayerSendChannelMessage(cid, MESSAGE_STATUS_CONSOLE_YELLOW, "Teste", TALKTYPE_CHANNEL_O, CHANNEL_TESTE)
Postado Junho 19, 2023 2 anos 12 horas atrás, koyotestark disse: .Qual servidor você utiliza como base? OTX2 Qual o motivo deste tópico? Estou querendo usar um comando que vai enviar uma mensagem num channel que, só vai captar a mensagem de quem estiver na tela, semelhante ao default. imaginei que poderia trocar este cid, por algo, mas não imagino o que poderia usar pra fazer isso. doPlayerSendChannelMessage(cid, MESSAGE_STATUS_CONSOLE_YELLOW, "Teste", TALKTYPE_CHANNEL_O, CHANNEL_TESTE) local playerPos = getCreaturePosition(cid) -- Obter a posição do jogador local playersOnScreen = getSpectators(playerPos, 7, 5, false, true) -- Obter os jogadores na área de 7x5 tiles em torno do jogador for _, player in ipairs(playersOnScreen) do doPlayerSendChannelMessage(player, TALKTYPE_CHANNEL_O, CHANNEL_TESTE, "Teste", MESSAGE_STATUS_CONSOLE_YELLOW) end Esse é por distância, ele obtém a posição do jogador (getPlayerPosition(cid)) e, em seguida, busca os jogadores na área ao redor usando getPlayersInArea(playerPos, 7, 5). Em seguida, um loop é usado para enviar a mensagem para cada jogador encontrado na área. Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código. #OpenSource #Programação #Contribuição
Postado Junho 19, 2023 2 anos Autor Solução eu tinha acabado de conseguir rs, mas vou testar este seu tambem. O meu tinha ficado assim: local players = getSpectators(getCreaturePosition(cid), 10, 10, 7) for i, tid in ipairs(players) do if(isPlayer(tid)) then doPlayerSendChannelMessage(tid, MESSAGE_STATUS_CONSOLE_YELLOW, "Mensagem", TALKTYPE_CHANNEL_W, CHANNEL_TESTE) end end end Editado Junho 19, 2023 2 anos por koyotestark (veja o histórico de edições)
Postado Junho 19, 2023 2 anos 3 horas atrás, koyotestark disse: eu tinha acabado de conseguir rs, mas vou testar este seu tambem. O meu tinha ficado assim: local players = getSpectators(getCreaturePosition(cid), 10, 10, 7) for i, tid in ipairs(players) do if(isPlayer(tid)) then doPlayerSendChannelMessage(tid, MESSAGE_STATUS_CONSOLE_YELLOW, "Mensagem", TALKTYPE_CHANNEL_W, CHANNEL_TESTE) end end end Esse sisteminha é legal, eu pretendo usar pra acabar com spam Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código. #OpenSource #Programação #Contribuição
Postado Junho 19, 2023 2 anos Autor sim a ideia é essa mesmo, pretendo ver como tirar pra aparecer o nome laranja, por enqunto, fiz gambiarra, e onde ta name = "nome do spell" eu deixei assim "". o interessante era fazer diretamente na source pra direcionar, pq eu tenho que botar o script em cada spell.
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.