Beiträge von Kaliber

    Da musst du eigentlich nichts abziehen, da ja dein index bei 0 beginnt und dein listitem auch :)


    C
    //Mal bisschen Pseudo-Code:
    new string[MAX_FRAKTIONEN * 16];
    for(new i; i<MAX_FRAKTIONEN; i++)
    {
        format(string,sizeof(string),"%s%s\n",string,Fraktion[i][Frak_Name]);
    }
    if(string[0] == EOS) return SCM(playerid,-1,"* Es existieren noch keine Fraktionen!");
    ShowPlayerDialog(playerid,500,DIALOG_STYLE_LIST,"Fraktions Liste",string,"Okay","");


    Es ist wichtig, dass du keine Fraktionen auslässt.


    Sagen wir beispielsweise dein Array sieht so aus:



    C
    Fraktion[0][Frak_Name] = "LSPD";
    Fraktion[1][Frak_Name] = "Empty";
    Fraktion[2][Frak_Name] = "SFPD";

    Wichtig ist, dass du dann auch das Empty anzeigst, weil sonst ja deine listitems komplett durcheinander geraten.


    Falls du das nicht willst, gibt es viele Möglichkeiten das zu Problem anderweitig zu lösen..entweder mit Arrays oder du packst die Fraktionsid einfach in den String und splittest die wieder raus xD

    Also 1. dieses Video ist ja mal für die Katz, man versteht nicht ein Wort und das was er da macht sieht alles andere als professionell aus.


    2. Ich verstehe immer noch nicht, was genau du machen willst, ich versuche das mal aufzudröseln:


    Also ich denke einfach mal laut:


    Wäre es nicht eine Idee, einfach eine Tabelle anzulegen mit ID, Modellname, Mängel1, Mängel2, usw... natürlich benennt man dann Mängel 1 irgendwie mit Licht_defekt oder so und dann ist das eben ein boolscher Wert, den man mit true/false dann einfach über die Checkbox belegen kann.


    Oder was wäre hier ran verkehrt? Haben etwa Audi und BMW andere Kategorien? Wenn ja, dann musst du für die 2 Fahrzeuge einfach eine eigene Tabelle machen und dann jeweils dort die Mängel eintragen.
    Wir reden hier von 2 Autos, da sollte das alles eig kein Problem sein und irgendwie gut zu lösen sein haha :D

    Was meinst du denn mit Kategorien, kannst du da ein Beispiel machen?


    Wie dem auch sei, theoretisch kannst du doch einfach das als Spalte mit in die Tabelle packen und dann abfragen?


    Oder wenn hinter der Kategorie selbst noch Werte stehen, kannst du dafür eine eigene Tabelle nehmen und dann eben per JOIN darauf zugreifen.

    Nein...


    du lässt das eine so wie ich das gemacht habe und das Andere ist der Aufruf dieser Klasse.


    Stell dir das so vor, die Klasse ist der Bauplan und der Aufruf setzt den Bauplan dann um, sprich du brauchst beides.


    Der Aufruf muss dann von einem anderen php Skript kommen, da wo du das dann verwenden willst...


    Falls du jetzt immer noch nichts damit anfangen kannst, eventuell arbeitest du dich erstmal in die Materie ein oder holst dir jemanden ran, der sich etwas besser damit auskennt :)

    Das ist ja schön, dennoch ist das ja nur der Name der Varaible und nicht ihr Wert.


    Irgendwo rufst du das ja auf, da steht dann sowas wie:


    PHP
    //Hier gibt man dann alle Werte an, bei dem Aufruf
    $mysql = new iMySQLi("localhost", "root", "1234", "hotel", 3306);

    $1234

    Eine Variable kann nicht mit einer Zahl anfangen in php.


    PHP
    public function __construct($localhost, $root, $pw, $hotel, $port) {
        $this->connection = parent::__construct($localhost, $root, $pw, $hotel, $port);
    }

    Ne das habe ich schon Probiert aber ändert sich nichts

    Kannst es einfach so machen:


    C
    Persoskin[playerid] = CreatePlayerTextDraw(playerid, 147.999984, 137.303588, "LD_SPAC:white");
    PlayerTextDrawLetterSize(playerid, Persoskin[playerid], -0.184333, -8.885335);
    PlayerTextDrawTextSize(playerid, Persoskin[playerid], 100.000167, 172.977813);
    PlayerTextDrawBackgroundColor(playerid, Persoskin[playerid], 0x00000000);
    PlayerTextDrawFont(playerid, Persoskin[playerid], 5);
    PlayerTextDrawSetPreviewModel(playerid, Persoskin[playerid], 5);

    Vllt hat Kaliber ja einen Tipp.

    Also grundsätzlich sei gesagt, dass du das mit NPCs nicht hinbekommst. Diese können nicht dynamisch agieren, dort kannst du nur feste Aufnahmen machen und diese laufen die dann ab :) Da kannst du keine Teleportieren o.ä.


    FCNPC ist natürlich etwas anderes, da geht das alles, wie bereits schon erwähnt.


    In der neuen SA:MP Version ist es jetzt auch endlich möglich die Angle ohne Respawn vom Actor zu ändern, dadurch ist natürlich viel mehr jetzt möglich. Ich könnte da mal ein Include für Actors rausbringen, habe da aber aktuell leider keine Zeit für.


    Dennoch kannst du die Actor teleportieren, das mit dem Schießen ist eine Sache für sich, da gibt es leider keine native Funktion zu, allerdings kannst du dir ja mal meinen Alien Server anschauen ([SA:MP] Missionen Server [V. 4]), dort hab ich das mal implementiert gehabt, dass die schießen. Ist natürlich nicht perfekt, aber erfüllt seinen Zweck :)
    Also demnach kannst du mit Actoren mehr anfangen als mit NPCs denke ich mal oder du nutzt FCNPC :)

    Metin 2 good old times :D


    Wäre auch dabei...aber ab der Pferdemedallie auf m normal machts kein Spaß mehr und auf m P-Server biste in 5 Tagen durch hahaha xD


    Aber sonst, echt gut :D

    1. Du solltest das einfach mit format machen:


    format(Flastdriver[vehicleid],MAX_PLAYER_NAME, GetName(playerid));


    2. Das kannst du doch abfragen:



    C
    if(Flastdriver[vehicleid][0] == EOS)
    {
        //Hier ist noch niemand damit gefahren
    }
    else
    {
        //Hier ist bereits jemand damit gefahren
    }

    PS: Nur um das anzumerken (evtl spielt es ja keine Rolle), aber wenn der Spieler fährt und sich beispielsweise ausloggt/crasht oder geportet wird, dann wird der Callback nicht aufgerufen, sondern nur [wiki]OnPlayerStateChange[/wiki] :)