Beiträge von Dachdecker

    ich dachte, dass durch das erstellen des Autos bei OnGameModeInit mit einer schleife, die ID gesetzt wird:



    Code
    // ----- Autohausenum ----- //
    	for(new i=0; i<sizeof(ahCars); i++)
    	{
    	    ahCars[i][ah_id] = AddStaticVehicle(ahCars[i][ahc_model], ahCars[i][ahc_x], ahCars[i][ahc_y], ahCars[i][ahc_z], ahCars[i][ahc_r], 1,1);
    	}

    ahInfo und ahCars






    /* Infernus
    [22:43:52] Buycarid: 1
    [22:43:52] Model: 411, X: 187.999206, Y: -246.212402, Z: 1.228600, R: 358.534790
    */
    /*Sultan
    [22:44:01] Buycarid: 2
    [22:44:01] [debug] Run time error 4: "Array index out of bounds"
    [22:44:01] [debug] Attempted to read/write array element at index 2 in array of size 2
    [22:44:01] [debug] AMX backtrace:
    [22:44:01] [debug] #0 0000aeac in public OnDialogResponse (0, 4, 1, -1, 82208) in MySQLScript.amx
    */
    /* ModelID 400
    [22:44:49] Buycarid: 3
    [22:44:49] [debug] Run time error 4: "Array index out of bounds"
    [22:44:49] [debug] Attempted to read/write array element at index 3 in array of size 2
    [22:44:49] [debug] AMX backtrace:
    [22:44:49] [debug] #0 0000aeac in public OnDialogResponse (0, 4, 1, -1, 82208) in MySQLScript.amx
    */


    Was meinst du? Die Ids werde vom Script zugewiesen laut dem Tut von MrMonat ist alles 1zu1 wie im Tutorial von ihm

    Also hier uberprüfe ich, ob die vID mit einem der Autos von den Autohäusern übereinstimmt und dann setzte ich dieses "i" in die Pvar

    Hier:


    Also ich bin jetzt gerade Mal in ein anderes Auto vom Autohaus gestiegen und da ging es, aber es spawnte am falschen Autohaus
    Ich habe zwei Autohäuser (provisorisch) und im 1. Autohaus 2 autos (Sultan und Infi) und im 2. Autohaus ein Auto (ModelID 400).


    Nur wenn ich in den Infi steige funktioniert alles.


    Der Crashdetect gibt das wieder :


    [22:31:59] [debug] Run time error 4: "Array index out of bounds"
    [22:31:59] [debug] Attempted to read/write array element at index 2 in array of size 2
    [22:31:59] [debug] AMX backtrace:
    [22:31:59] [debug] #0 0000ae80 in public OnDialogResponse (0, 4, 1, -1, 82208) in MySQLScript.amx

    Hey,


    Die funktion sieht so aus:


    Das funktioniert zu 100%, denn es klappt alles mit dem befehl /veh [Playerid][Modelid][Farbe1][Farbe2] das ist ein test befehl von mir der dann auf diese Funktion zugreift

    Schönen guten Tag ich hab mit einem Tutorial von MrMonat das Autohaus System gescriptet und wenn ich im autohaus bin und im auto bin, dann auf kaufen drücke wird das Geld abgezogen aber das auto nicht erstellt. Also hier nochmal mit PWN code.


    Hey,


    ich hab ein MySQL Script angefangen und hab ein Problem mit dem Skin..


    Das ist der MySQL.Log




    Code
    [WARNING] CMySQLResult::GetRowDataByName - field not found ("SkinID")



    Ich hab einen Extra public gemacht damit der Spieler an der ausgelogten Posi spawnt und laut den Prints wird bei dem SpielerSpawnen public der Skin auf 0 gesetzt aber beim Login Public auf 59 wie er richtig ist.



    Du solltest einen Array noch an die Checkpoint Variable machn also new TutorialCheckpoint[MAX_PLAYERS ][Anzahl der Checkpoints];


    Du fragst dann, bei OnPlayerEnterCheckpoint ab oder er TutorialCheckpoint[playerid][1] betreten hat, und dann machst du nen Timer wo er dann wieder die Switch Funktion aufruft. Vorher stellst du aber die Variable Tutorial[playerid] ein höher.

    du machst beispielsweise bei Schritt eins einen Checkpoint zur Stadthalle. TutorialCheckpoint[playerid][1] == SetPlayerCheckpoint();
    Du nimmst dann die 15 sekunden Timer raus und lässt ihn dann zum Checkpoint fahren. Wenn er den Checkpoint erreicht (OnPlayerEnterCheckpoint) dann zeigst du ihm Schritt 2 und dann geht es immer so weiter.


    P.S bei OnPlayerEnterCheckpoint musst du dann auch abfragen, ob er im Fahrzeug ist.. könnte sonst eventuell zu Buggs kommen

    naja beim Timer die ja dann "OnPlayerTutorial" aufrufst fragst du ja zuerst ab ob es Tutorial[playerid] = 1 ist. aber du stellst es ja bei case 1 auf Tutorial[playerid] = 2. dann ist ja theoretisch klar, das er dann die Switch Funktion nicht mehr aufruft.. oder?