Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Informações:
- Estamos na Versão 1.0c
- A Versão 1.0 foi criada primeiro
- A Versão 1.0c foi uma Atualização da versão 1.0.
- Os sistemas são os mesmos. Só foram Aprimorados e Fixados.
- Caso encontre algum erro inesperado, ou tenha Sugestões, entre em contato.
- */
- #include <a_samp> // Original SAMP TEAM
- #include <sscanf2> // By y_Less - Necessary for this, download Thread on the Thread
- #include <ZCMD> // By Zeex - Necessary for this, download Thread on the Thread
- #include <DOF2> // Utilizaremos DOF2 para poder salvar a variável Jogador
- //Topo do GM:
- #define MAX_MUSICAS 6
- #define QTDMUSICAS 5
- new bool:Jogador[MAX_PLAYERS][LoginMusic];
- new Musicas[MAX_MUSICAS][150]; //Quantidade de musicas que temos salvas.Primeiro Argumento, Extenção de Link
- new MusicEnter; //Admins
- new MusicEnterPreConf; //Esta VARIÁVEL É USADA PARA Correção. Caso o adm queira cancelar a Definição. Volta atrás sem modificar nada.
- public OnPlayerConnect(playerid)
- {
- if(DOF2_FileExists(Accs(playerid)))
- {
- Jogador[playerid][LoginMusic] = DOF2_GetBool(Accs(playerid), "Musica Ao Entrar:");
- new rand = random(QTDMUSICAS)+1;
- if(MusicEnter == 0){
- if(Jogador[playerid][LoginMusic] == true){
- new musicaescolhida = rand;
- PlayAudioStreamForPlayer(playerid, Musicas[musicaescolhida]);
- printf("o jogador %s entrou ouvindo a música ID: %i", Nome(playerid), musicaescolhida);
- }}
- if(MusicEnter >= 1){
- if(Jogador[playerid][LoginMusic] == true){
- PlayAudioStreamForPlayer(playerid, Musicas[MusicEnter]);
- }}
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid)
- {
- if(DOF2_FileExists(Accs(playerid)))
- {
- DOF2_SetBool(Accs(playerid), "Musica Ao Entrar:", Jogador[playerid][LoginMusic]);
- }
- return 1;
- }
- public OnGameModeInit()
- {
- new rand = random(MAX_MUSICAS);
- //Formatando as músicas contentes
- format(Musicas[0], 140, Musicas[rand]);
- format(Musicas[1], 100, "https://www.dropbox.com/s/62w1rcbqnz1h9td/The%20Calling%20-%20Wherever%20You%20Will%20Go.mp3?dl=1");
- format(Musicas[2], 100, "https://www.dropbox.com/s/511ciz5c1ucjx7p/Cazuza%20-%20Exagerado.mp3?dl=1");
- format(Musicas[3], 140, "https://www.dropbox.com/s/h7smdmrgij1oxmi/Capital%20Inicial%20-%20Primeiros%20Erros%20%28Chove%29%20%28Ao%20Vivo%29%20%28Video%29.mp3?dl=1");
- format(Musicas[4], 100, "https://www.dropbox.com/s/ekfixtbim043zlh/Audioslave%20-%20Like%20A%20Stone.mp3?dl=1");
- format(Musicas[5], 100, "https://www.dropbox.com/s/bfjqlmqkh1s2iyt/hinodosvereador.mp3?dl=1");
- return 1;
- }
- CMD:musicaaoentrar(playerid, params[])
- {
- if(Jogador[playerid][IsPlayerAdmin] == 0){
- new trueorfalse;
- if(sscanf(params, "i", trueorfalse)){
- SendClientMessage(playerid, -1, "Use: /musicaaoentrar [1=true ou 0=false]");
- SendClientMessage(playerid, -1, "Use apenas números");
- return 1;
- }
- if(trueorfalse < 0 || trueorfalse > 1) return SendClientMessage(playerid, -1, "Mais uma vez temos que repetir. Use: /musicaaoentrar [1=true ou 0=false]\nUse apenas números.");
- if(trueorfalse == 1){
- SendClientMessage(playerid, -1, "Você configurou sua conta para Tocar Músicas ao entrar no Servidor.");
- Jogador[playerid][LoginMusic] = true;
- return 1;
- }
- if(trueorfalse == 0){
- SendClientMessage(playerid, -1, "Você Desconfigurou sua conta para Não Tocar Músicas ao entrar no Servidor.");
- Jogador[playerid][LoginMusic] = false;
- return 1;
- }
- return true;
- }
- if(Jogador[playerid][IsPlayerAdmin] >= 1){
- SendClientMessage(playerid, -1, "Selecione no Dialog, a música que você quer que seja reproduzida ao entrar no Servidor.");
- SendClientMessage(playerid, -1, "{ff0000}Comando Admin{ffffff}: Este é um Comando que irá Causar Alterações no Servidor.");
- SendClientMessage(playerid, -1, "Dialog Multi-Funções: Utilize Ligar/Desligar para Funções de Usuário e Desligar as Músicas ao entrar.");
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- ///////////////////////////////////////////////////////////
- //---Sistema de Musica -- Música AO Entrar no Servidor
- if(dialogid == DIALOG_ENTERMUSICID) { //DIALOG CASE 1°
- if(response){
- if(strlen(inputtext)){
- new stringdialog[100];
- new msgerror[67];
- new idmusica = strval(inputtext);
- if(idmusica < -1 || idmusica > QTDMUSICAS){
- format(msgerror, sizeof(msgerror), "Você só pode usar números de 0 á %i, você pode utilizar /idmusicas", QTDMUSICAS);
- SendClientMessage(playerid, -1, msgerror);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICID, DIALOG_STYLE_INPUT, "Adicionar ID", "Adicionar aqui o ID, da música. Caso esteja em Dúvida, veja os /idmusicas", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- MusicEnterPreConf = idmusica;
- if(MusicEnterPreConf == -1){
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "Você alterou a Música de Entrada do servidor,\n{ff0000}DESLIGOU.\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- return 1;
- }
- if(MusicEnterPreConf == 0){
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "{ffffff}Você alterou a Música de Entrada do servidor,\n{FFC125}RANDOMIZOU{ffffff}.\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- return 1;
- }
- if(MusicEnterPreConf >= 1){
- format(stringdialog, sizeof(stringdialog), "Você alterou a Música de Entrada do servidor,\nID DA MUSICA: %i\nessa configuração vale para todos. Deseja confirmar?", idmusica);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", stringdialog, "Sim", "Cancelar");
- return 1;
- }
- }else{
- SendClientMessage(playerid, -1, "Você só pode inserir Números");
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICID, DIALOG_STYLE_INPUT, "Adicionar ID", "Adicionar aqui o ID, da música. Caso esteja em Dúvida, veja os /idmusicas", "Selecionar", "Cancelar/Sair");
- }
- }else{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_ENTERMUSIC_CONFIRM){
- if(response){
- static string[110];
- if(MusicEnterPreConf == -1){
- MusicEnter = MusicEnterPreConf;
- printf("Música de Entrada no Servidor Agora é, ID: %i", MusicEnter);
- SendClientMessage(playerid, -1, "Você configurou o sistema de tocar músicas ao entrar no servidor para todos em: {ff0000}Desligado.");
- SendClientMessage(playerid, -1, "Para reativar novamente utilize: /musicaaoentrar");
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- if(MusicEnterPreConf == 0){
- MusicEnter = MusicEnterPreConf;
- printf("Música de Entrada no Servidor Agora é, ID: %i", MusicEnter);
- SendClientMessage(playerid, -1, "{ff0000}Comando Admin Efetuado{ffffff}: Você {FFC125}randomizou{ffffff} a Configuração de Tocar Músicas ao Entrar no Servidor para todos os Jogadores.");
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- if(MusicEnterPreConf >= 1){
- MusicEnter = MusicEnterPreConf;
- printf("Música de Entrada no Servidor Agora é, ID: %i", MusicEnter);
- format(string, sizeof(string), "Você definiu a música atual de entrada no servidor.\nStatus: {00ff00}LIGADO {FFC125}Musica: {ffffff}%i", MusicEnter);
- SendClientMessage(playerid, -1, string);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- }else{
- static msgcancel[91]; //Todas as mensagens serão enviadas.
- format(msgcancel, 67, "Você não confirmou a Definição da Música para o ID de música: %i.", MusicEnterPreConf);
- SendClientMessage(playerid, -1, msgcancel);
- format(msgcancel, sizeof(msgcancel), "A Configuração do Sistema de músicas ao entrar no servidor continua sendo a Música ID: %i", MusicEnter);
- SendClientMessage(playerid, -1, msgcancel);
- MusicEnterPreConf = 0; //por padrão o ID voltará a sua origem de Zero, o acesso á este dialog só vem de Uma pré confirmação onde a mesma recebe um Valor atribuído. Conforme a regra do script. //Há possibilidade de haver erro já que o ID 0 causará a randomização das músicas no sistema. mas tudo está ao seu controle
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_ENTERMUSIC) { //Painel Principal
- if(response){
- switch(listitem){
- case 0:{
- SendClientMessage(playerid, -1, "Você entrou no Dialog para adicionar um ID de Música para Reproduzir (para todos) ao entrar no Servidor.");
- SendClientMessage(playerid, -1, "Aviso: ao selecionar o ID: 0 você irá desconfigurar o Servidor para não tocar mais músicas ao entrar.");
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICID, DIALOG_STYLE_INPUT, "Adicionar ID", "Adicionar aqui o ID, da música. Caso esteja em Dúvida, veja os /idmusicas", "Selecionar", "Cancelar/Sair");
- }
- case 1:{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "{ffffff}Você alterou a configuração de Música de Entrada do Servidor para os jogadores,\nID DA MUSICA: 0\n{FFC125}RANDOMIZAR\n{ffffff}essa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- MusicEnterPreConf = 0;
- }
- case 2:{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "Você alterou a Música de Entrada do servidor,\nID DA MUSICA: 1\nArtista: The Calling\nMúsica: Wherever You Will Go\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- MusicEnterPreConf = 1;
- }
- case 3:{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "Você alterou a Música de Entrada do servidor,\nID DA MUSICA: 2\nArtista: Cazuza\nMúsica: Exagerado\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- MusicEnterPreConf = 2;
- }
- case 4:{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "Você alterou a Música de Entrada do servidor,\nID DA MUSICA: 3\nArtista: Capital Inicial\nMúsica: Primeiros Erros\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- MusicEnterPreConf = 3;
- }
- case 5:{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "Você alterou a Música de Entrada do servidor,\nID DA MUSICA: 4\nArtista: Audioslave\nMúsica: Like A Stone\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- MusicEnterPreConf = 4;
- }
- case 6:{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC_CONFIRM, DIALOG_STYLE_MSGBOX, "config Alteração de Música Ao Entrar para todos", "Você alterou a Música de Entrada do servidor,\nID DA MUSICA: 5\nArtista: DESCONHECIDO\nMúsica: Hino dos Vereador\nessa configuração vale para todos. Deseja confirmar?", "Sim", "Cancelar");
- MusicEnterPreConf = 5;
- }
- case 7:{
- new string[37];
- new string2[45];
- new dialogstr[200];
- if(MusicEnter <= -1){
- format(string, sizeof(string), "Música para Todos\t{ff0000}Desligada");
- }
- if(MusicEnter == 0){
- format(string, sizeof(string), "Música para Todos\t{FFC125}Ramdom");
- }
- if(MusicEnter >= 1){
- format(string, sizeof(string), "Música para Todos\t{00FF00}Ligada");
- }
- if(Player[playerid][LoginMusic] == true){
- format(string2, sizeof(string2), "Música ao Entrar para mim\t{00ff00}Ligada");
- }
- if(Player[playerid][LoginMusic] == false){
- format(string2, sizeof(string2), "Música ao Entrar para mim\t{ff0000}Desligada");
- }
- format(dialogstr, sizeof(dialogstr), "Function\tStatus\n%s\n%s", string, string2);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICADM, DIALOG_STYLE_TABLIST_HEADERS, "Configuração de Conta/Configuração Do Servidor", dialogstr, "Selecionar", "Sair/Cancelar");
- }
- }
- }else{
- return 1;
- }
- return 1;
- }
- if(dialogid == DIALOG_ENTERMUSICADM) { //DIALOG ULTIMO CASE
- if(response)
- {
- new string[37];
- new string2[45];
- new dialogstr[200];
- if(MusicEnter <= -1){
- format(string, sizeof(string), "Música para Todos\t{ff0000}Desligada");
- }
- if(MusicEnter == 0){
- format(string, sizeof(string), "Música para Todos\t{FFC125}Ramdom");
- }
- if(MusicEnter >= 1){
- format(string, sizeof(string), "Música para Todos\t{00FF00}Ligada");
- }
- if(Player[playerid][LoginMusic] == true){
- format(string2, sizeof(string2), "Música ao Entrar para mim\t{00ff00}Ligada");
- }
- if(Player[playerid][LoginMusic] == false){
- format(string2, sizeof(string2), "Música ao Entrar para mim\t{ff0000}Desligada");
- }
- switch(listitem){
- case 0:{
- if(MusicEnter >= 1){
- SendClientMessage(playerid, -1, "{ff0000}Comando Admin Efetuado{ffffff}: Você desabilitou a Configuração de Tocar Músicas ao Entrar no Servidor para todos os Jogadores.");
- MusicEnter = -1;
- printf("Música de Entrada no Servidor Agora é, ID: %i - Desligado", MusicEnter);
- format(string, sizeof(string), "Música para Todos\t{ff0000}Desligada");
- format(dialogstr, sizeof(dialogstr), "Function\tStatus\n%s\n%s", string, string2);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICADM, DIALOG_STYLE_TABLIST_HEADERS, "Configuração de Conta/Configuração Do Servidor", dialogstr, "Selecionar", "Sair/Cancelar");
- return 1;
- }
- if(MusicEnter == 0){
- SendClientMessage(playerid, -1, "{ff0000}Comando Admin Efetuado{ffffff}: Você desabilitou a Configuração de Tocar Músicas ao Entrar no Servidor para todos os Jogadores.");
- MusicEnter = -1;
- printf("Música de Entrada no Servidor Agora é, ID: %i - Desligado", MusicEnter);
- format(string, sizeof(string), "Música para Todos\t{ff0000}Desligada");
- format(dialogstr, sizeof(dialogstr), "Function\tStatus\n%s\n%s", string, string2);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICADM, DIALOG_STYLE_TABLIST_HEADERS, "Configuração de Conta/Configuração Do Servidor", dialogstr, "Selecionar", "Sair/Cancelar");
- return 1;
- }
- if(MusicEnter <= -1){
- SendClientMessage(playerid, -1, "{ff0000}Comando Admin Efetuado{ffffff}: Você {FFC125}randomizou{ffffff} a Configuração de Tocar Músicas ao Entrar no Servidor para todos os Jogadores.");
- MusicEnter = 0;
- printf("Música de Entrada no Servidor Agora é, ID: %i - Randomizado", MusicEnter);
- format(string, sizeof(string), "Música para Todos\t{FFC125}Ramdom");
- format(dialogstr, sizeof(dialogstr), "Function\tStatus\n%s\n%s", string, string2);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICADM, DIALOG_STYLE_TABLIST_HEADERS, "Configuração de Conta/Configuração Do Servidor", dialogstr, "Selecionar", "Sair/Cancelar");
- return 1;
- }
- }
- case 1:{
- if(Player[playerid][LoginMusic] == true){
- Player[playerid][LoginMusic] = false;
- SendClientMessage(playerid, -1, "Você Desconfigurou sua conta para Não Tocar Músicas ao entrar no Servidor.");
- format(string2, sizeof(string2), "Música ao Entrar para mim\t{ff0000}Desligada");
- format(dialogstr, sizeof(dialogstr), "Function\tStatus\n%s\n%s", string, string2);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICADM, DIALOG_STYLE_TABLIST_HEADERS, "Configuração de Conta/Configuração Do Servidor", dialogstr, "Y", "N");
- }else{
- Player[playerid][LoginMusic] = true;
- SendClientMessage(playerid, -1, "Você configurou sua conta para Tocar Músicas ao entrar no Servidor.");
- format(string2, sizeof(string2), "Música ao Entrar para mim\t{00ff00}Ligada");
- format(dialogstr, sizeof(dialogstr), "Function\tStatus\n%s\n%s", string, string2);
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSICADM, DIALOG_STYLE_TABLIST_HEADERS, "Configuração de Conta/Configuração Do Servidor", dialogstr, "Y", "N");
- }
- }
- }
- }else{
- ShowPlayerDialog(playerid, DIALOG_ENTERMUSIC, DIALOG_STYLE_TABLIST_HEADERS, "Enter Music - Servidor", "Function or Music\nAdicionar um ID expecífico.\nRandomizar\nMúsica 1 - Wherever you will go - The Calling\nMúsica 2 - Cazuza - Exagerado\nMúsica 3 - Capital Inicial - Primeiros Erros\nMúsica 4 - AudioSlave - Like A Stone\nMúsica 5 - DESCONHECIDO - Hino dos Vereador\nLigar/Desligar Música", "Selecionar", "Cancelar/Sair");
- return 1;
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement