O famoso jogo GTA V ou GTA IV é conhecido por seu sistema de roda de armas simples e suave. Se você ainda não sabe, aqui estão algumas capturas de tela para ilustrar.
Recriando a roda de armas
Estou planejando recriar esse sistema de roda de armas para um miniprojeto, mas não sei por onde começar. Já criei uma GUI simples, mas estou me perguntando como torná-la responsiva aos movimentos do mouse.
Por exemplo, quando o mouse é movido para cima, a arma acima da roda será destacada/visualizada. Da mesma forma, quando o mouse é movido em direções diferentes, as diferentes armas da roda serão destacadas dependendo do movimento do mouse.
Sinta-se à vontade para compartilhar links para tópicos que já conseguiram isso. Porém, agradeceria se você pudesse me dar algumas sugestões sobre o que eu poderia usar da documentação da API Roblox, com o link correspondente, pois acho que esta é a melhor forma de ampliar meus conhecimentos. Se você tiver alguma dúvida ou confusão, por favor me avise nos comentários. Sou novo no fórum de desenvolvimento, então ainda não estou muito familiarizado com o funcionamento das coisas.
Muito obrigado!
Impressões
Parece legal e prático, mas também vai precisar de um jogo que tenha essa roda de armas embutida (pelo menos para mim parece mais um menu de armas).
Para iniciar
Comece determinando o ângulo em que o mouse está em relação ao centro da tela.
Não é necessário ter nada, pode começar criando primeiro a GUI.
Eu entendo, vou deixar como está.
Referência de API
Isso é exatamente o que estou procurando! Como posso conseguir isso? Você tem um link para a documentação da API que posso consultar para começar?
Pretendo apenas exibir a arma equipada.
Nenhuma referência à API, apenas cálculos matemáticos. Comece obtendo a posição relativa do mouse em relação ao centro da tela em pixels. Você pode usar a função MousePosition – Center.
A posição relativa do mouse em relação ao centro será o ponto inicial da posição do mouse a partir do centro da tela. Vamos normalizar esse vetor porque só precisamos da direção. Use a função Direction: Dot(XAxis) para encontrar o produto escalar entre a direção do mouse e, por exemplo, o eixo X positivo. Usando a função acos você pode obter o ângulo em radianos e depois convertê-lo em graus se quiser exibir o ângulo atual. Usando este ângulo você pode verificar se o mouse está dentro de um determinado intervalo para enfatizar qual UI está selecionada.
Isso é realmente incrível, muito obrigado!!!
Isso vai ser muito bom e muito interessante.
Fonte: devforum.roblox.com





