Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
- //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
- //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
- //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
- //---------------- ------------- ----------- ------------------ -----------//
- //Sistema de emisoras por Escobar para la comunidad en general. ----------//
- //Respetando los creditos en el GM también respetas el trabajo del creador//
- //--------------- ------------------- ------------------------- ----------//
- #include <a_samp>
- #include "../include/gl_common.inc"
- #include <Dini>
- #define SetVar SetPVarInt
- #define GetVar GetPVarInt
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Sistema de emisoras cargado correctamente");
- print("--------------------------------------\n");
- Loadmisser();
- print("Emisoras cargadas correctamente");
- checkemisser();
- return 1;
- }
- public OnFilterScriptExit()
- {
- Savemisser();
- for(new p = 0;p < GetMaxPlayers(); p++)
- {
- if(IsPlayerConnected(p))
- {
- SetVar(p, "pvar1", 0);
- SetVar(p, "edit", 0);
- SetVar(p, "habil", 0);
- SetVar(p, "Play", 0);
- }
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- checkindex(playerid);
- return 1;
- }
- new emisser[11][256];
- new owner[11][256];
- new url[11][256];
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[256], idx; cmd = strtok(cmdtext, idx);
- // de admins -----------------------------------------------------
- if(strcmp("/editaremisora", cmdtext, true) == 0)
- {
- if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xC7C7C7FF, #No Admin);
- new text[500];
- checkemisser();
- format(text, 500, "%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]", emisser[1], owner[1], emisser[2], owner[2], emisser[3], owner[3], emisser[4], owner[4], emisser[5], owner[5], emisser[6], owner[6], emisser[7], owner[7], emisser[8], owner[8], emisser[9], owner[9], emisser[10], owner[10]);
- ShowPlayerDialog(playerid, 9931, DIALOG_STYLE_LIST, "Emisora Lista", text, "Editar", "Cancelar");
- return 1;
- }
- if(strcmp("/owner", cmdtext, true) == 0)
- {
- if(GetVar(playerid, "edit") == 0) return SendClientMessage(playerid, 0xC7C7C7FF, "Admin: Use /editaremisora y seleccione la emisora a editar");
- ShowPlayerDialog(playerid, 9932, DIALOG_STYLE_INPUT, "Edicion Admin emisora [Dueño]", "\nAdmin: Ingresa el nombre del Dueño en siguiente recuadro y da click en Aceptar.", "Aceptar", "Cacenlar");
- return 1;
- }
- if(strcmp("/name", cmdtext, true) == 0)
- {
- if(GetVar(playerid, "edit") == 0) return SendClientMessage(playerid, 0xC7C7C7FF, "Admin: Use /editaremisora y seleccione la emisora a editar");
- ShowPlayerDialog(playerid, 9933, DIALOG_STYLE_INPUT, "Edicion Admin emisora [Nombre]", "\nAdminn: Ingresa el nombre de la radio en el siguiente recuadro de texto y da click en Aceptar.", "Aceptar", "Cacenlar");
- return 1;
- }
- if(strcmp("/borrar", cmdtext, true) == 0)
- {
- new iem = GetVar(playerid, "edit");
- if(iem == 0) return SendClientMessage(playerid, 0xC7C7C7FF, "Admin: Use /editaremisora y seleccione la emisora a editar");
- new Format[128]; format(Format, 128, "¿Seguro que quieres resetear la emisora:%s de %s?", emisser[iem], owner[iem]);
- ShowPlayerDialog(playerid, 9934, DIALOG_STYLE_MSGBOX, "Borrar Emisora",Format, "Borrar", "Cancelar");
- return 1;
- }
- //---- Opcional, administradores permitiran la creacion de emisora a un usuario
- //Quitar si no utiliza, junto con la linea de /crearemisora (habil)
- if(strcmp("/permitir", cmd, true) == 0)
- {
- new tmp[128]; tmp = strtok(cmdtext,idx);
- if(!strlen(tmp)) return SendClientMessage(playerid, 0xC7C7C7FF, "/permitir [ id user ]");
- SetPVarInt(strval(tmp), "habil", 1);
- SendClientMessage(strval(tmp), 0xC7C7C7FF, "Un admin te dio permiso para adquirir emisora, {FFAE0D}/crearemisora");
- SendClientMessage(playerid, 0xC7C7C7FF, "Usuario permitido a la creación de una emisora.");
- return 1;
- }
- //--------------------------------------------------------------------
- if(strcmp("/crearemisora", cmdtext, true) == 0)
- {
- checkindex(playerid);
- if(GetVar(playerid, "pvar1") >= 1) return SendClientMessage(playerid, 0xC7C7C7FF, "Solo puedes tener una emisora a tu nombre");
- if(GetVar(playerid, "habil") == 0) return SendClientMessage(playerid, 0xC7C7C7FF, "Pide a un admin el permiso para crear una emisora."); // quitar si no utiliza
- ShowPlayerDialog(playerid, 9930, DIALOG_STYLE_INPUT, "Crea tu emisora", "Elije un nombre para tu emisora de radio, esta va a ser controlada solo por ti con el comando {FFAE0D}/musica\n{C7C7C7}Piensalo bien, luego no podrás cambiarlo.", "Aceptar", "Cancelar");
- return 1;
- }
- if(strcmp("/musica", cmdtext, true) == 0)
- {
- checkindex(playerid);
- if(GetVar(playerid, "pvar1") >= 1)
- {
- ShowPlayerDialog(playerid, 9929, DIALOG_STYLE_INPUT, "Emisora de Radio", "\nIngresa la url de tu emisora de radio o tema suelto.", "Play", "Cancelar");
- }
- else SendClientMessage(playerid, 0xC7C7C7FF, "No tienes una emisora de radio");
- return 1;
- }
- if(strcmp("/radio", cmdtext, true) == 0)
- {
- new text[500];
- format(text, 500, "%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]\n%s [%s]", emisser[1], owner[1], emisser[2], owner[2], emisser[3], owner[3], emisser[4], owner[4], emisser[5], owner[5], emisser[6], owner[6], emisser[7], owner[7], emisser[8], owner[8], emisser[9], owner[9], emisser[10], owner[10]);
- ShowPlayerDialog(playerid, 9928, DIALOG_STYLE_LIST, "Emisoras Disponibles", text, "Escuchar", "Cancelar");
- return 1;
- }
- if(strcmp("/radioff", cmdtext, true) == 0)
- {
- StopAudioStreamForPlayer(playerid);
- SetVar(playerid, "Play", 0);
- SendClientMessage(playerid, 0xC7C7C7FF, "Apagaste la radio, para encenderla {FFAE0D}/radio.");
- return 1;
- }
- return 0;
- }
- #define CH "emisoras.ini"
- forward Savemisser();
- public Savemisser()
- {
- new str[128];
- if(!dini_Exists(CH)) dini_Create(CH);
- for(new emi = 1; emi < 11; emi++)
- {
- format(str, 128, "Radio%d", emi);
- dini_Set(CH, str, emisser[emi]);
- format(str, 128, "Owner%d", emi);
- dini_Set(CH, str, owner[emi]);
- }
- return 1;
- }
- forward Loadmisser();
- public Loadmisser()
- {
- new str[128];
- if(!dini_Exists(CH)) dini_Create(CH);
- for(new emi = 1; emi < 11; emi++)
- {
- format(str, 128, "Radio%d", emi);
- emisser[emi] = dini_Get(CH, str);
- format(str, 128, "Owner%d", emi);
- owner[emi] = dini_Get(CH, str);
- }
- return 1;
- }
- forward checkemisser();
- public checkemisser()
- {
- for(new emi = 1; emi < 11; emi++)
- {
- if(!strlen(emisser[emi]))
- {
- new textex[24]; format(textex, 24, "Sin señal");
- emisser[emi] = textex;
- }
- if(!strlen(owner[emi]))
- {
- new ownern[64]; format(ownern, 64, "Sin propietario");
- owner[emi] = ownern;
- }
- }
- return 1;
- }
- new openid;
- forward openidex();
- public openidex()
- {
- for(new emi = 1; emi < 11; emi++)
- {
- if(strcmp(owner[emi], "Sin propietario", true)) continue;
- openid = emi;
- break;
- }
- return 1;
- }
- forward releasepvars();
- public releasepvars()
- {
- for(new p = 0; p < GetMaxPlayers(); p++)
- {
- if(IsPlayerConnected(p))
- {
- SetVar(p, "pvar1", 0);
- checkindex(p);
- }
- }
- return 1;
- }
- forward checkindex(playerid);
- public checkindex(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name,sizeof(name));
- for(new emi = 1; emi < 11; emi++)
- {
- if(!strlen(owner[emi])) continue;
- if(strcmp(owner[emi], name, true) == 0)
- {
- SetVar(playerid, "pvar1", emi);
- break;
- }
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == 9934)
- {
- if(response)
- {
- new ime = GetPVarInt(playerid, "edit");
- owner[ime] = "";
- emisser[ime] = "";
- checkemisser();
- releasepvars();
- SendClientMessage(playerid, 0xC7C7C7FF, "Emisora editada correctamente");
- }
- return 1;
- }
- if(dialogid == 9930)
- {
- openidex();
- if(openid == 0) return SendClientMessage(playerid, 0xC7C7C7FF, "No hay emisoras disponibles");
- if(response)
- {
- if(strlen(inputtext) < 4)
- {
- ShowPlayerDialog(playerid, 9930, DIALOG_STYLE_INPUT, "Crea tu emisora", "Elije un nombre para tu emisora de radio, esta va a ser controlada solo por ti con el comando /musica\nPiensalo bien, luego no podrás cambiarlo.", "Aceptar", "Cancelar");
- return SendClientMessage(playerid, 0xC7C7C7FF, "Elige un nombre de por lo menos {FFAE0D}4 {C7C7C7}carácteres.");
- }
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name,sizeof(name));
- new Format[24]; format(Format, 24, "%s", inputtext);
- new Texto[128]; format(Texto, 128, "Nueva emisora creada {FFAE0D}[%s] {C7C7C7}Dueño: {FFAE0D}%s", inputtext, name);
- emisser[openid] = Format;
- owner[openid] = name;
- SendClientMessageToAll(0xC7C7C7FF, Texto);
- SetVar(playerid, "habil", 0); // quitar si no utiliza
- openid = 0;
- }
- return 1;
- }
- if(dialogid == 9929)
- {
- if(response)
- {
- new soraid = GetVar(playerid, "pvar1");
- new Format[128]; format(Format, 128, "%s", inputtext);
- url[soraid] = Format;
- SendClientMessage(playerid, 0xC7C7C7FF, "Url cargada correctamente");
- SetVar(playerid, "pvar1", 0);
- for(new p = 0; p<GetMaxPlayers();p++)
- {
- if(IsPlayerConnected(p))
- {
- if(GetPVarInt(p, "Play") == soraid)
- {
- PlayAudioStreamForPlayer(p, url[soraid]);
- }
- }
- }
- }
- return 1;
- }
- if(dialogid == 9933)
- {
- if(response)
- {
- new id = GetVar(playerid, "edit");
- new Format[24]; format(Format, 24, "%s", inputtext);
- emisser[id] = Format;
- checkemisser();
- SendClientMessage(playerid, 0xC7C7C7FF, #Emisora editada correctamente.);
- }
- return 1;
- }
- if(dialogid == 9932)
- {
- if(response)
- {
- new id = GetVar(playerid, "edit");
- new Format[24]; format(Format, 24, "%s", inputtext);
- owner[id] = Format;
- releasepvars();
- SendClientMessage(playerid, 0xC7C7C7FF, #Emisora editada correctamente.);
- }
- return 1;
- }
- if(dialogid == 9931)
- {
- if(response)
- {
- new id = listitem+1;
- SetVar(playerid, "edit", id);
- SendClientMessage(playerid, 0xC7C7C7FF, "Ahora puedes editar la emisora seleccionada.");
- SendClientMessage(playerid, 0xC7C7C7FF, "Use: {FFAE0D}/name {C7C7C7}para editar el nombre, {FFAE0D}/owner {C7C7C7}para editar el dueño, {FFAE0D}/borrar {C7C7C7}para eliminar.");
- SendClientMessage(playerid, 0xC7C7C7FF, "Para seleccionar otra emisora vuelva a usar {FFAE0D}/editaremisora.");
- }
- return 1;
- }
- if(dialogid == 9928)
- {
- if(response)
- {
- new id = listitem+1;
- if(strcmp(emisser[id], "Sin Señal", true) == 0) return SendClientMessage(playerid, 0xC7C7C7FF, "{FFAE0D}Emisora sin señal");
- new str[128]; format(str, 128, "Estas escuchando la emisora: {FFAE0D}%s , para apagar la radio {FFAE0D}/radioff", emisser[id]);
- SendClientMessage(playerid,0xC7C7C7FF, str);
- PlayAudioStreamForPlayer(playerid, url[id]);
- SetVar(playerid, "Play", id);
- }
- return 1;
- }
- return 1;
- }
- //----------------- ---------------------------- ---------------- ---------//
- //Sistema de emisoras por Escobar para la comunidad en general. ----------//
- //Respetando los creditos en el GM también respetas el trabajo del creador//
- //----------------- ---------------------------- -------------- ---------//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement