13/02/2023 23:31
Another one:
Antes de mais nada, apesar de já existir outros scripts com a mesma proposta, desenvolvi este apenas com recursos nativose com objetivo de estudo.
Não é um script com a mesma eficiência em termos de velocidade e funcionalidade dadas as limitações, porém entrega algo próximo.
Sobre:
Criei esta include apenas para passar o tempo e, por conta das limitações do SA:MP, não foi possível tirar 100% de proveito dos recursos dela.
A proposta foi usar inteiramente Pawn para criar um script capaz de fazer stream de músicas sem necessidade de conhecimento em outras línguas (como PHP e Json).
Problemas:
Foi usado uma API grátis e, conforme mencionado por outro colega da Board, existem várias músicas que não tocam ou só ficam disponíveis após algum momento (não sei como a API trabalha).
Me refiro especificamente desta resposta, onde debuguei o site: https://portalsamp.com/showthread.php?ti...9#pid12879
Para garantir a eficiência deste tipo de sistema é necessário o uso de PHP para "enxugar" a quantidade de informações desnecessárias retornadas pelas APIs, mas o intuito foi brincar com a linguagem.
Compatibilidade e limitação:
Testei tanto com SAMP quanto com OpenMP e ambos apresentaram quase os mesmos resultados, com exceção do Open que na parte da limitação onde deveria apresentar o mesmo retorno de erro quando o servidor baixa muitos dados em uma única requisição acaba apenas imprimindo um erro no console.
Como o mod não permite o download de muitos dados (ou se possui onde configurar, não sei onde é), acaba que apenas consultas específicas dão retorno com sucesso.
Funções:
Públicas:
Screenshots:
Finalidade:
A include não apresenta bugs até então. O que temos é a limitação do mod mesmo.
Por conta disso vou disponibilizar para estudos para quem quer entender como manipular algumas informações inteiramente com Pawn.
Dá pra brincar bastante com esta linguagem e foi divertido criar esse script. Espero realmente que possa ajudar.
Download:
Anexo (Gamemode e Include)
Antes de mais nada, apesar de já existir outros scripts com a mesma proposta, desenvolvi este apenas com recursos nativose com objetivo de estudo.
Não é um script com a mesma eficiência em termos de velocidade e funcionalidade dadas as limitações, porém entrega algo próximo.
Sobre:
Criei esta include apenas para passar o tempo e, por conta das limitações do SA:MP, não foi possível tirar 100% de proveito dos recursos dela.
A proposta foi usar inteiramente Pawn para criar um script capaz de fazer stream de músicas sem necessidade de conhecimento em outras línguas (como PHP e Json).
Problemas:
Foi usado uma API grátis e, conforme mencionado por outro colega da Board, existem várias músicas que não tocam ou só ficam disponíveis após algum momento (não sei como a API trabalha).
Me refiro especificamente desta resposta, onde debuguei o site: https://portalsamp.com/showthread.php?ti...9#pid12879
Para garantir a eficiência deste tipo de sistema é necessário o uso de PHP para "enxugar" a quantidade de informações desnecessárias retornadas pelas APIs, mas o intuito foi brincar com a linguagem.
Compatibilidade e limitação:
Testei tanto com SAMP quanto com OpenMP e ambos apresentaram quase os mesmos resultados, com exceção do Open que na parte da limitação onde deveria apresentar o mesmo retorno de erro quando o servidor baixa muitos dados em uma única requisição acaba apenas imprimindo um erro no console.
Como o mod não permite o download de muitos dados (ou se possui onde configurar, não sei onde é), acaba que apenas consultas específicas dão retorno com sucesso.
Funções:
Código:
stock MusicSearchByKey(playerid, const search[]) // Realiza a busca das músicas através de palavras-chave
stock PlayMusic(playerid, index) // Após realizar a busca, selecione o index da música para iniciar o stream
stock GetPlayerMusicID(playerid, index) // Retorna o ID da música
stock GetPlayerMusicArtist(playerid, index) // Retorna o nome do artista
stock GetPlayerMusicName(playerid, index) // Retorna o nome da música
stock GetPlayerMusicDuration(playerid, index) // Retorna a duração da música
stock GetPlayerMusicPoolSize(playerid) // Retorna o último index válido da busca
Públicas:
Código:
forward OnPlayerRequestMusicList(playerid, key_words[], bool:error); // Chamado após realizar a busca das palavras-chave
forward OnPlayerPlayMusic(playerid, index); // Chamado quando o jogador inicia o stream da música
Screenshots:
Finalidade:
A include não apresenta bugs até então. O que temos é a limitação do mod mesmo.
Por conta disso vou disponibilizar para estudos para quem quer entender como manipular algumas informações inteiramente com Pawn.
Dá pra brincar bastante com esta linguagem e foi divertido criar esse script. Espero realmente que possa ajudar.
Download:
Anexo (Gamemode e Include)
SA:MP Dev Tools
Faça mais, ganhe mais e poupe tempo!
Viper Anti-Cheat
Torne seu servidor mais seguro!
________________________________________
Soluções personalizadas para SA:MP
Discord: .eduardoac | Eduardo AC#3140
Faça mais, ganhe mais e poupe tempo!
Viper Anti-Cheat
Torne seu servidor mais seguro!
________________________________________
Soluções personalizadas para SA:MP
Discord: .eduardoac | Eduardo AC#3140