[Tutorial] Radio in je server!
#1

Radio in je server

Benodigdheden:
Pawno
Een toetsenbord

Wat gaan we gebruiken:
PlayAudioStreamForPlayer [Word hier uitgelegd]
ShowPlayerDialog [Tutorial]
OnDialogResponse [Tutorial]
En een define: #define RadioDialog 0
(Of een ander getal als je 0 al hebt gebruikt)

PlayAudioStreamForPlayer

Is hetzelfde als: Speel een geluids uitzending voor een speler af.
Een "stream" eindigt meestal op .pls, maar dit kunnen vaak ook andere extensies zijn.
In deze tutorial gebruiken we de stream van 3FM, omdat nu natuurlijk 3FM Serious Request bezig is.
De stream van 3FM is "http://icecast.omroep.nl/3fm-bb-mp3"

Nu gaan we de stream in het script zetten.
Ik stel voor om de command /radio te gebruiken om de radiozender te kiezen.

Voor strcmp:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/radio", cmdtext, true, 10) == 0)//De command
    {
        ShowPlayerDialog(playerid, RadioDialog, DIALOG_STYLE_LIST,"Radio kiezen","3FM\n","Kies","Annuleren");//\n staat voor een nieuwe regel.
        return 1;//Command is klaar
    }
    return 0;
}
Voor ZCMD,YCMD of OCMD:
pawn Код:
CMD:radio(playerid,params[])
    {
    ShowPlayerDialog(playerid, RadioDialog, DIALOG_STYLE_LIST,"Radio kiezen","3FM\n","Kies","Annuleren");//\n staat voor een nieuwe regel.
    return 1;//Command is klaar
    }
Elke \n in het script zorgt ervoor dat daarna een nieuwe regel word aangemaakt.


ShowPlayerDialog

Dit hebben we gebruikt als je de command intypt.

OnDialogResponse

Wat er gebeurt als een speler op "Kies" of op "Annuleren" heeft geklikt, en welk radiostation gekozen is, kan je hier regelen.

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch(dialogid)//Hij zoekt welke dialogid aan de opdracht zit verbonden.
    {
        case RadioDialog://Hij heeft de dialogid gevonden, en gaat uitvoeren wat eronder staat.
        switch(listitem)//Alles wat hieronder komt zijn de opdrachten die uitgevoerd moeten worden als je een regel aanklikt.
        {
            case 0://Regel 1
            {
                    if(!IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid,0x00FF00AA,"Je zit niet in een voertuig!");//Kijkt of de speler in een voertuig zit.
                    else
                        {
                        PlayAudioStreamForPlayer(playerid,"http://icecast.omroep.nl/3fm-bb-mp3");//De stream van de radio.
                        }
            }
        }
     }
    return 1;//Afronden.
}
Als je wilt dat je de radio uit kunt zetten, moet je een nieuwe lijn toevoegen in de dialog met "Uit" en een nieuwe cas in de OnDialogResponse. In die case zet je "StopAudioStreamForPlayer(playerid);"

Klaar!

Nu ben je klaar!
Je kan altijd nieuwe radio streams toevoegen in dit script.
Ik hoop dat je nu weet hoe je een radio in je server moet zetten en hem werkend te krijgen.

Dit was mijn eerste tutorial, vertel maar als je iets niet snapt of dat er iets niet goed uitgelegd is, dan verbeter ik het.
Reply
#2

Nice Tut.

PS: Lekker handig zeg van die vraag van mij XD

EDIT:
pawn Код:
if(!IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid,0x00FF00AA,"Je zit niet in een voertuig!");//Kijkt of de speler in een voertuig zit.
Is het niet
pawn Код:
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0x00FF00AA,"Je zit niet in een voertuig!");//Kijkt of de speler in een voertuig zit.
Reply
#3

Quote:
Originally Posted by Mustafa6155
Посмотреть сообщение
Nice Tut.

PS: Lekker handig zeg van die vraag van mij XD

EDIT:
pawn Код:
if(!IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid,0x00FF00AA,"Je zit niet in een voertuig!");//Kijkt of de speler in een voertuig zit.
Is het niet
pawn Код:
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0x00FF00AA,"Je zit niet in een voertuig!");//Kijkt of de speler in een voertuig zit.
Het is een mogelijkheid, maar aangezien je al een return 1 hebt staan onderaan het commando en er een else statement is, is het niet nodig.

@OP: Je vergeet nog wel de response te checken van de dialog.
Reply
#4

oh dankje
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)