Beiträge von SLaYz

    Du hast im Script deine Dialoge definiert z.b. Mit #define dialog_login 5, such es und füge die beiden DLG... Dort hinzu, die nummern dürfen nicht gleich sein

    Soo, es ist nicht Perfekt und nicht zu 100% komplett Getestet, es sollte aber so ohne Probleme gehen.


    #include <a_samp>
    #include <streamer>
    #include <ocmd>



    /**
    * Enum der Dialoge
    *
    * DLG_MusikBox | Definiertes Dialog für die MusikBox um eine zu Erstellen
    * DLG_MusikBox_HAS_DELETE | Definiertes Dialog für das Löschen der MusikBox falls eine Vorhanden ist
    * DGL_MusikBox_DELETE | Definiertes Dialog für das Löschen der MusikBox falls eine Vorhanden ist
    * DGL_Info | Definiertes Dialog um eine Information an den Spieler zu geben
    **/
    enum{
    DLG_MusikBox = 1,
    DLG_MusikBox_HAS_DELETE,
    DLG_MusikBox_DELETE,
    DLG_Info,
    DLG_PWREQ,
    }


    /**
    * Enum für die MusikBoxen
    *
    * MB_Created | Prüft ob die MusikBox erstellt ist oder nicht | true/false
    * MB_URL | StreamURL der MusikBox (StreamURL)
    * MB_Pos | Position der MusikBox (X, Y, Z)
    * MB_AreaID | ID der Arena
    * MB_CadMdl | Erstelltes Objekt der MusikBox
    * MB_Label | Label der MusikBox
    **/
    enum MusikBoxen {
    bool:MB_Created = false,
    MB_URL[120],
    Float:MB_Pos[3],
    MB_AreaID,
    MB_CadMdl,
    Text3D:MB_Label[50],
    }
    new MusikBox[MAX_PLAYERS][MusikBoxen];



    /**
    * Befehl um eine MusikBox zu Erstellen
    **/
    ocmd:cmb(playerid, params[])
    {
    /**
    * Prüfen ob Spieler Premium hat
    */
    if(!SpielerInfo[playerid][HasPremium]) return SendClientMessage(playerid, -1, "Du hast kein Premium, und kannst keine MusikBox erstellen!");
    /**
    * Prüfen ob der Spieler eine MusikBox erstellt hat oder nicht | Ausgabe eines Dialoges mit der Frage auf Entfernung der MusikBox
    **/
    if(MusikBox[playerid][MB_Created]) return ShowPlayerDialog(playerid, DLG_MusikBox_HAS_DELETE, DIALOG_STYLE_MSGBOX, "Ihre MusikBox", "Sie haben bereits eine Musikbox, wollen Sie die Musikbox entfernen?", "Entfernen", "Ausblenden");
    /**
    * Sollte der Spieler keine MusikBox haben, und die Schleife ist nicht am Ende, wird der Durchlauf abgebrochen
    **/
    else if(!MusikBox[playerid][MB_Created]) return ShowPlayerDialog(playerid, DLG_MusikBox, DIALOG_STYLE_INPUT, "Ihre MusikBox", "Bitte geben Sie die URL an, die die MusikBox abspielen soll", "Erstellen", "Ausblenden");
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DLG_MusikBox:
    {
    if(!response) return 1;
    if(response)
    {
    /**
    * Der Musikbox die Position des Spielers geben
    **/
    GetPlayerPos(playerid, MusikBox[playerid][MB_Pos][0], MusikBox[playerid][MB_Pos][1], MusikBox[playerid][MB_Pos][2]);

    /**
    * Der MusikBox die URL zuweisen, die nachher Gestreamt wird
    **/
    format(MusikBox[playerid][MB_URL], 120, "%s", inputtext);
    /**
    * MusikBoxLabel erstellen
    **/
    new Label[50];
    format(Label, 50, "MusikBox von %s", returnName(playerid));
    MusikBox[playerid][MB_Label] = CreateDynamic3DTextLabel(Label, 0xE46343FF, MusikBox[playerid][MB_Pos][0], MusikBox[playerid][MB_Pos][1], MusikBox[playerid][MB_Pos][2], 50.0);
    /**
    * Spieler ein Dialog ausgeben, das er eine MusikBox erstellt hat
    **/
    ShowPlayerDialog(playerid, DLG_Info, DIALOG_STYLE_MSGBOX, "Ihre MusikBox", "Sie haben Erfolgreich eine MusikBox erstellt.", "Ausblenden", "");
    /**
    * Erstellen der MusikBox
    **/
    MusikBox[playerid][MB_CadMdl] = CreateDynamicObject(2226, MusikBox[playerid][MB_Pos][0], MusikBox[playerid][MB_Pos][1], MusikBox[playerid][MB_Pos][2]-1, 0, 0 , 0);
    AttachDynamicAreaToPlayer(MusikBox[playerid][MB_CadMdl], playerid);
    /**
    * Erstellen Der Arena, wenn Spieler diesen Bereich betreten wird der Stream abgespielt, verlässt Er ihn wird er Gestoppt
    **/
    MusikBox[playerid][MB_AreaID] = CreateDynamicCircle(MusikBox[playerid][MB_Pos][0], MusikBox[playerid][MB_Pos][1], 20.0);
    /**
    * Variabele setzen, das die MusikBox erstellt wurde
    **/
    MusikBox[playerid][MB_Created] = true;
    }
    }
    case DLG_MusikBox_HAS_DELETE:
    {
    if(!response) return 1;
    /**
    * Sollte der Spieler die MusikBox löschen wollen, wird Sie nun gelöscht
    **/
    if(response)
    {
    /**
    * URL der MusikBox resetten
    **/
    format(MusikBox[playerid][MB_URL], 120, "%s", "");
    /**
    * Variabele resetten das die MusikBox nicht mehr Erstellt ist
    **/
    MusikBox[playerid][MB_Created] = false;
    /**
    * MusikBox Label entfernen
    **/
    DestroyDynamic3DTextLabel(MusikBox[playerid][MB_Label]);
    /**
    * Area der MusikBox entfernen
    **/
    DestroyDynamicArea(MusikBox[playerid][MB_AreaID]);
    /**
    * Entfernen des MusikBox Objektes
    **/
    DestroyDynamicObject(MusikBox[playerid][MB_CadMdl]);
    /**
    * Nachricht an den Spieler ausgeben, das die MusikBox entfernt wurde
    **/
    ShowPlayerDialog(playerid, DLG_Info, DIALOG_STYLE_MSGBOX, "Ihre MusikBox", "Sie haben Erfolgreich eine MusikBox entfernt.", "Ausblenden", "");
    /**
    * Schleife für jeden Spieler durchgehen
    **/
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    /**
    * Prüfen ob ein Spieler in der Area ist
    **/
    if(IsPlayerInRangeOfPoint(playerid, 50.0, MusikBox[playerid][MB_Pos][0], MusikBox[playerid][MB_Pos][1], MusikBox[playerid][MB_Pos][2]))
    {
    /**
    * AudioStram für den Spieler stoppen, wenn er in der Area ist
    **/
    StopAudioStreamForPlayer(i);
    }
    }
    /**
    * Position der MusikBox resetten
    **/
    MusikBox[playerid][MB_Pos][0] = 0.0;
    MusikBox[playerid][MB_Pos][1] = 0.0;
    MusikBox[playerid][MB_Pos][2] = 0.0;
    }
    }
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    if(MusikBox[playerid][MB_Created])
    {
    /**
    * Position der MusikBox resetten
    **/
    MusikBox[playerid][MB_Pos][0] = 0.0;
    MusikBox[playerid][MB_Pos][1] = 0.0;
    MusikBox[playerid][MB_Pos][2] = 0.0;
    /**
    * URL der MusikBox resetten
    **/
    format(MusikBox[playerid][MB_URL], 120, "%s", "");
    /**
    * Variabele resetten das die MusikBox nicht mehr Erstellt ist
    **/
    MusikBox[playerid][MB_Created] = false;
    /**
    * MusikBox Label entfernen
    **/
    DestroyDynamic3DTextLabel(MusikBox[playerid][MB_Label]);
    /**
    * Area der MusikBox entfernen
    **/
    DestroyDynamicArea(MusikBox[playerid][MB_AreaID]);
    /**
    * Entfernen des MusikBox Objektes
    **/
    DestroyDynamicObject(MusikBox[playerid][MB_CadMdl]);
    /**
    * Nachricht an den Spieler ausgeben, das die MusikBox entfernt wurde
    **/
    ShowPlayerDialog(playerid, DLG_Info, DIALOG_STYLE_MSGBOX, "Ihre MusikBox", "Sie haben Erfolgreich eine MusikBox entfernt.", "Ausblenden", "");
    /**
    * Schleife für jeden Spieler durchgehen
    **/
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    StopAudioStreamForPlayer(i);
    }
    }
    return 1;
    }


    public OnPlayerEnterDynamicArea(playerid, areaid)
    {
    /**
    * Schleife durch alle MusikBoxen machen
    **/
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    /**
    * Prüfen ob der Spieler in der richtigen Area ist, wenn ja wird der AudioStream gestartet
    **/
    if(MusikBox[i][MB_AreaID] == areaid && MusikBox[i][MB_Created])
    {
    PlayAudioStreamForPlayer(playerid,MusikBox[i][MB_URL]);
    break;
    }
    }
    return 1;
    }


    public OnPlayerLeaveDynamicArea(playerid, areaid)
    {
    /**
    * Schleife durch alle MusikBoxen machen
    **/
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    /**
    * Prüfen ob der Spieler die Area verlassen hat, wenn ja wird der AudioStream gestoppt
    **/
    if(MusikBox[i][MB_AreaID] == areaid && MusikBox[i][MB_Created])
    {
    StopAudioStreamForPlayer(playerid);
    }
    break;
    }
    return 1;
    }





    returnName(playerid)
    {
    new name[24];
    GetPlayerName(playerid, name, 24);
    return name;
    }

    Guten Abend TheTutoFreak,



    Du hast in deiner Query 2x das = Zeichen vergessen. Also preis'%i' und nicht preis='%i'


    saveHouse(id)
    {
    new query[128];
    format(query,sizeof(query),"UPDATE haus SET besitzer='%s', preis='%i', kauflevel='%i' WHERE id='%i'",HouseInfo[id][hBesitzer],HouseInfo[id][hPreis],HouseInfo[id][hKauflevel],HouseInfo[id][hID]);
    printf("saveHouse-Query: %s", query);
    mysql_function_query(dbhandle,query,false,"","");
    return 1;
    }

    Guten Tag liebe Gemeinde,


    Ich habe einen Hoster gefunden, der Deutsche Top-Level-Domains (DE-TLDs) ab 4€ pro Jahr verkauft mit Webspace.


    Code
    - 1x .de Domain inklusive
     - DNS MANAGER
     - NEU! 4 GB Webspace
     - UNLIMITED Traffic
     - 2 Datenbanken
     - UNLIMITED Email-Postfächer
     - IMAP / POP3, Autoresponder, ActiveSync, Mailinglisten, sowie Spam & Virenschutz inklusive Webapps
     - Zugriff auf mehr als 250 Applikationen per „OneClick“ Installation!


    Hoster: https://wint.global/aktionsangebote/



    Mit freundlichen Grüßen
    SLaYz

    Problem wurde Gelöst.


    Was wurde Gemacht?

    • Login auf PHP-Basis
    • Passwörter werden Verschlüsselt
    • Registration auf PHP-Basis


    Solltest du noch weitere Fragen oder Hilfe benötigen, stehe ich Dir gern zur Verfügung.



    Schönen Abend noch und freundlichen Grüßen,
    SLaYz

    Ich würde Dir nahe legen, nicht direkt mit MySQL zu Arbeiten, es ist sehr Unsicher und jeder kann den Code Dekompilieren und hat dann deine Datenbank daten. Nutze am besten PHP dabei.


    Desweiteren würde dann so ein Problem nicht auftauchen ;)


    Wenn du Hilfe brauchst, stehe ich Dir gern zur Seite.