Beiträge von InternetInk aka Benjamin

    Für Anfänger wohl zu kompliziert und für Fortgeschrittene nicht zu gebrauchen.
    Das man MAX_PLAYERS neu definiert ist eine Gute Sache, aber warum MAX_PLAYERNAME?
    Das mit dem Spawn und den Skins halte ich für überflüssig, genauso wie die ganzen Kommentare, in vernünftigen Händen sieht das sowieso keiner.
    Übrigends funktioniert diese Funktionsneudefinierung so nicht.


    Ich halte es für unsinn, trotzdem nette Idee und gut Umgesetzt. ;)

    Da fehlt es an Grundwissen, die funktionsdefinition lautet:
    WBB_SetMySQLData( Server[ ] , User[ ] , Password[ ] , Database[ ] , InstallationCount = 1 )


    Die eckigen Klammern bedeuten das diese Parameter Strings, also Zeichenketten sind, folglich muss die Angabe in Anführungszeichen erfolgen.
    Das bedeutet aber nicht das man das Wort davor mitschreibt... Außerdem hat InstallationCount einen Standard Wert von 1 und muss nicht mit angegeben werden, was man auch ablesen kann.


    WBB_SetMySQLData("127.0.0.1", "root", "", "testing");

    Kann ja auch nicht,
    OnDialogResponse wird immer dann aufgerufen wenn du Irgendetwas mit dem Dialog machst, die dialogid ändert sich aber je nach Dialog
    Somit ist die erste if-Abfrage direkt unwahr da du im Dialog DIA_HELP_ALLGEMEIN bist und dialogid daher nicht == DIA_HELP sein kann, somit springt er direkt raus.
    Du musst für jeden Dialog einen eigenen if block starten:

    //
    if (dialogid == DIA_HELP)
    {
    if (response)
    {
    if (listitem == 0)
    {
    ShowPlayerDialog(playerid, DIA_HELP_ALLGEMEIN, DIALOG_STYLE_MSGBOX, "Hilfe-Allgemein", " \n \n \n \n", "Zurück", "Schließen");
    }
    if (listitem == 1)
    {
    ShowPlayerDialog(playerid, DIA_HELP_HAUS, DIALOG_STYLE_MSGBOX, "Hilfe-Haus", " \n \n \n \n", "Zurück", "Schließen");
    return 1;
    }
    if (listitem == 2)
    {
    ShowPlayerDialog(playerid, DIA_HELP_AUTO, DIALOG_STYLE_MSGBOX, "Hilfe-Auto", " \n \n \n \n", "Zurück", "Schließen");
    return 1;
    }
    if (listitem == 3)
    {
    ShowPlayerDialog(playerid, DIA_HELP_FRAKTION, DIALOG_STYLE_MSGBOX, "Hilfe-Fraktion", " \n \n \n \n", "Zurück", "Schließen");
    return 1;
    }
    if (listitem == 4)
    {
    ShowPlayerDialog(playerid, DIA_HELP_JOB, DIALOG_STYLE_MSGBOX, "Hilfe-Job", " \n \n \n \n", "Zurück", "Schließen");
    return 1;
    }
    }
    }
    if (dialogid == DIA_HELP_ALLGEMEIN)
    {
    if (response == 0)
    {
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_LIST, "Hilfe", "Allgemein \nHaus \nAuto \nFraktion \nJob", "Auswählen", "Abbrechen");
    return 1;
    }
    }
    //rest

    Unsinn du kannst bei OnPlayerPickUpPickup überprüfen ob das Pickup das Heal Pickup ist und wenn ja kannst du weiterhin genauso prüfen ob der spieler in der Fraktion ist und falls ja bekommt er das Leben, falls nicht eben nicht.

    Bist du dir da sicher? Denn OnPlayerEnterVehicle wird schon beim drücken der ENTER Taste aufgerufen, da ist der spieler aber noch in keinem Auto, also kann RemovePlayerFromVehicle nicht funktionieren.


    Zeig mal was du bisher an Code hast und die Funktion von PlayerJob

    playerid bist du und giveplayerid ist der andere, folglich wenn du die nachricht an playerid sendest und playerid kickst, kickst du dich...


    Zum Crashen einfach statt dem kick... einfach
    GameTextForPlayer(giveplayerid, "•¤¶§!$$%&'()*+,-./01~!@#$^&*()_-+={[}]:;'<,>.?/", 1000, 0);


    Habs aber nie ausprobiert, sollte aber funktionieren, einmal reicht übrigends.

    Made my Day...
    Selten sowas lächerliches gesehen "You are owned by the Server hahahaha"
    Kiddy-O-Meter ist hart am anschlag :pinch:
    Außerdem wird er ja nichtmal gecrashed (was übrigends auch ganz einfach geht) sondern lediglich gekickt.


    Ändere playerid in giveplayerid, sonst wird das nichts :rolleyes:


    //Edit
    Falscher Bereich!
    Scripting Fragen kommen in den Scripting Bereich!


    //Verschoben

    Du hast die Variable erstellt, nutzt sie aber nicht, das kann man doch wohl aus der Fehlermeldung lesen?
    Sobald du sie später mal verwendest verschwindet diese Warnung logischerweise...