Radio System

  • Radio System

    Das radio spielt leider nichts ab

    [pwn]ocmd:radio(playerid,params[])
    {
    if(IsPlayerConnected(playerid))
    {

    ShowPlayerDialog(playerid, DIALOG_RADIO,DIALOG_STYLE_LIST, "Radio
    System", "JamFM.\nHardbase.FM\nRadio Aus", "Weiter", "Abbrechen");
    }
    return 1;
    }
    ocmd:radioaus(playerid,params[])
    {
    StopAudioStreamForPlayer(playerid);
    SendClientMessage(playerid,GREEN,"Radio ausgeschaltet!");
    return 1;
    }[/pwn]
    [pwn]public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DIALOG_REGISTER:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {


    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Das
    angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit
    einem Passwort:","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    case DIALOG_LOGIN:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {


    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das
    Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen
    Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {


    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das
    war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen
    Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    if(dialogid == DIALOG_RADIO)
    {
    if(response)
    {
    if(listitem == 0)
    {
    SendClientMessage(playerid, 0x00ABFFFF, "Technobase.FM!");
    PlayAudioStreamForPlayer(playerid, "http://listen.technobase.fm/dsl.pls");
    }
    if(listitem == 1)
    {
    SendClientMessage(playerid, 0x00ABFFFF, "JAM FM!");
    PlayAudioStreamForPlayer(playerid, "http://www.jam.fm/streams/jam-nmr-mp3.pls");
    }
    if(listitem == 2)
    {
    SendClientMessage(playerid, 0x00ABFFFF, "Radio Aus!");
    StopAudioStreamForPlayer(playerid);
    }
    return 1;
    }
    }

    }
    }
    return 1;
    }

    [/pwn]
  • Vielleicht ist was am Dialog falsch -> OnplayerDialogResponse , so geht es nicht.

    [pwn]ocmd:radio(playerid,params[])
    {
    if(IsPlayerConnected(playerid))
    {
    ShowPlayerDialog(playerid, DIALOG_RADIO,DIALOG_STYLE_LIST, "Radio System", "-\nTechnobase.FM\nJam.FM\nRadio aus", "Weiter", "Abbrechen");
    }
    return 1;
    }
    ocmd:radioaus(playerid,params[])
    {
    StopAudioStreamForPlayer(playerid);
    SendClientMessage(playerid,GREEN,"Radio ausgeschaltet!");
    return 1;
    }[/pwn]

    [pwn]public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DIALOG_REGISTER:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Das angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    case DIALOG_LOGIN:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    if(dialogid == DIALOG_RADIO)
    {
    if(response)
    {
    if(listitem == 0)
    {

    }

    if(listitem == 1)
    {
    SendClientMessage(playerid, 0x00ABFFFF, "Technobase.FM!");
    PlayAudioStreamForPlayer(playerid, "http://listen.technobase.fm/dsl.pls");
    }
    if(listitem == 2)
    {
    SendClientMessage(playerid, 0x00ABFFFF, "JAM FM!");
    PlayAudioStreamForPlayer(playerid, "http://www.jam.fm/streams/jam-nmr-mp3.pls");
    }
    if(listitem == 3)
    {
    SendClientMessage(playerid, 0x00ABFFFF, "Radio Aus!");
    StopAudioStreamForPlayer(playerid);
    }
    return 1;
    }
    }

    }
    }
    return 1;
    }[/pwn]
  • Try this:
    [pwn]if(dialogid == DIALOG_RADIO) {
    if(!response)
    return SendClientMessage(playerid,GREEN,"Radio ausgeschaltet!");
    else {
    switch(listitem) {
    case 1:
    {
    SendClientMessage(playerid, 0x00ABFFFF, "Technobase.FM!");
    PlayAudioStreamForPlayer(playerid, "http://listen.technobase.fm/dsl.pls");
    }
    case 2:
    {
    SendClientMessage(playerid, 0x00ABFFFF, "JAM FM!");
    PlayAudioStreamForPlayer(playerid, "http://www.jam.fm/streams/jam-nmr-mp3.pls");
    }
    case 3:
    {
    SendClientMessage(playerid, 0x00ABFFFF, "Radio Aus!");
    StopAudioStreamForPlayer(playerid);
    }
    }
    }
    }[/pwn]
  • Ja, funktioniert auch vom Heim-PC,
    solange der Stream richtig ist.
    Den Stream selber ruft ja nicht der Server auf, sondern der Client, also der User, der da spielt.

    Und den - habe ich vorher ganz übersehen, sry^^


    //EDIT: Wie ich gerade sehe,
    hast du alle Dialoge in Switch/case,
    dein Radiodialog ist zwar auch im Switch, aber in keinem Case.

    Wenn der Rest funktioniert, solltest du aus
    [pwn]if(dialogid == DIALOG_RADIO)[/pwn]

    Das machen:
    [pwn]case DIALOG_RADIO:[/pwn]

    Gruß,
    Dennis

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Dennis321 ()

  • Kann ja nur von OnPlayerDialogResponse der Fehler kommen oder ?
    Gleiche probleme , wenn ich im Dialog drücke kommt nichts
    [pwn]
    #define Waffenmenu 14

    ShowPlayerDialog(playerid,Waffenmenu, DIALOG_STYLE_LIST, "Waffen", "Pack1\nPack2", "Auswählen", "Abbrechen");
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DIALOG_REGISTER:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Das angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    case DIALOG_LOGIN:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    if(dialogid == Waffenmenu)
    {
    if(response)
    {
    if(listitem == 0)
    {
    GivePlayerWeapon(playerid,22,100);

    }
    if(listitem == 1)
    {
    GivePlayerWeapon(playerid,24,75);

    }
    }
    }

    }
    }
    return 1;
    }

    [/pwn]

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von SAB0h ()

  • Auch hier hast du eien Switch/case Struktur und hast deie Waffendialogabfrage im Switch drinnen, aber in keinem Case, sondern als if.

    [pwn]
    if(dialogid == Waffenmenu) // Hier
    {
    if(response)
    {
    if(listitem == 0)
    {
    GivePlayerWeapon(playerid,22,100);

    }
    if(listitem == 1)
    {
    GivePlayerWeapon(playerid,24,75);

    }
    }
    }
    [/pwn]

    Daher solltest du, wenn diese Abfrage den anderen anpassen,
    also anstatt
    [pwn]if(dialogid == Waffenmenu)[/pwn]

    Das:
    [pwn]case Waffenmenu:[/pwn]


    //EDIT:
    Ums klarer zu machen:
    Spoiler anzeigen

    [pwn]#define Waffenmenu 14

    ShowPlayerDialog(playerid,Waffenmenu, DIALOG_STYLE_LIST, "Waffen", "Pack1\nPack2", "Auswählen", "Abbrechen");
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid) // Hier fängt dein Switch an
    { // Klammer auf für Switch
    case DIALOG_REGISTER: // Case
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Das angegebene Passwort war zu Kurtz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    case DIALOG_LOGIN: // Case
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    if(dialogid == Waffenmenu) // Kein case, aber "if" hier wäre "case Waffenmenu:" angebrachter
    {
    if(response)
    {
    if(listitem == 0)
    {
    GivePlayerWeapon(playerid,22,100);

    }
    if(listitem == 1)
    {
    GivePlayerWeapon(playerid,24,75);

    }
    }
    }

    }
    } // Hier hört dein Switch auf, also Klammer geschlossen
    return 1;
    }[/pwn]

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Dennis321 ()

  • [pwn]C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2355) : warning 219: local variable "SpielerName" shadows a variable at a preceding level
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2375) : error 014: invalid statement; not in switch
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2375) : warning 215: expression has no effect
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2375) : error 001: expected token: ";", but found ":"
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2375) : error 029: invalid expression, assumed zero
    C:\Users\Plyer\Desktop\mysql\gamemodes\ren2.pwn(2375) : fatal error 107: too many error messages on one line[/pwn]
    Zeile ist mit Waffenmenu


    [pwn]case Waffenmenu: // Kein case, aber "if" hier wäre "case Waffenmenu"
    {
    if(response)
    {
    case 0:
    {
    GivePlayerWeapon(playerid,22,100);

    }
    case 1:
    {
    GivePlayerWeapon(playerid,24,75);

    }
    }
    }[/pwn]