Beiträge von Jameso

    Sag ich ja, bist zu schlau...
    oder ich zu doof :P



    Edit:


    Also sobald mehr als 8 Spieler auf dem Server sind, soll es funktionieren.
    Würde es so gehen? Kann es nicht testen :D


    Was passiert wenn 15 Leute auf dem Server sind und ID:14 nicht belegt ist, kann man dass auch abfragen?


    Code
    new j = GetPlayerPoolSize();
    				if(j>8)
    				{
    				    new ix = random(j);
    				    new string1[64];
    				    format(string1,sizeof(string1),"Spieler %s",Spielername(ix));
    				    SCM(playerid,-1,string1);
    				}

    Das sah halt sehr verdächtig aus, da es nicht geladen werden konnte und dazu noch der Fehler danach kam.
    Es gibt quasi 2 Möglichkeiten: Du compilest mit einer falschen Include Version oder du hast vergessen die Skripts neu zu compilen.

    C
    format(string_tmp1, sizeof(string_tmp1), "(%s) %d", getMonat(Month), Year);
        	AHVehTypes1[FahrzeugID][AHVbaujahr] = string_tmp1;

    Die Variable wird als String gesetzt AHVbaujahr[20]




    C
    PCar[playerid][d][P_Baujahr] = AHVehTypes1[i][AHVbaujahr];

    Jetzt will ich den String übertragen auf eine andere Variable P_Baujahr[20]


    Die erste Variable zeigt mir nur 1 Zeichen an "(" und die 2. Variable zeigt mir alles richtig an.
    Woran liegt das?

    Also Problem ist gefunden.
    Wenn ich den Server instant schließe, heißt das Fenster der Konsole schließe, exited er den Gamemode nicht.


    Wenn ich gmx benutzte geht es, zumindest wird es aufgerufen...
    Er speichert mir den Wert in der ersten Datenbank Zeile, muss ID ein primary Key sein?

    Code
    stock GarageSpeichern()
    {
    	for(new garageid = 0; garageid < sizeof(gInfo); garageid++)
    	{
    		new query[256];
    		mysql_format(handle,query,sizeof(query),"UPDATE `garage` Set `Lock`='%d',`Mechaniker`='%d' WHERE `ID`='%d'",
    		gInfo[garageid][gLock],gInfo[garageid][gMechaniker],gInfo[garageid][db_gid]);
    		mysql_pquery(handle,query);
    	}
    }

    Ich lasse diesen stock unter OnGameModeExit aufrufen, ist das falsch?
    Der soll das ja speichern, wenn der Server sich schließt.


    Ich checke MySQL so oft nicht.
    Werde geärgert, der Log sagt mir dazu nichts...

    Ups, habe ich übersehen :D
    Öffne mal im Include Ordner die a_vehicle.inc .
    Strg + F = CreateVehicle


    Schau ob das genauso ist wie hier:


    C
    native CreateVehicle(vehicletype, Float:x, Float:y, Float:z, Float:rotation, color1, color2, respawn_delay, addsiren=0);

    Ich habe hier was gestaltet, ich frage hier ab, ob ein Garagen-Platz belegt ist, wenn nicht kann das Fahrzeug in die Garage.
    Allerdings kann ich 7 Fahrzeuge parken in ginttype 1 und 2.


    Irgendwas mach ich falsch, aber was?
    er printet mir immer 0 bei den gVehicleID & (-2)




    Dazu habe ich ein Frage:
    Wie kann ich, nachdem ich ein Spieler teleportiere ihn und sein Fahrzeug freezen, damit die Objekte laden können, manchmal falle ich aus der Welt... :D

    Es geht, danke!!
    Ich habe ja AUTO_INCREMENT auf die Virtuellen Welten gesetzt in der Datenbank und wenn ich jetzt eine Garage erstelle, speicher ich ja die Zeile erstmal in die Datenbank.
    Wie hole ich mir dann diesen Wert aus der Datenbank ohne einen großartigen Aufruf zu machen?

    Keine Ahnung ob dies weiterhilft,
    manchmal crasht der Server, das Problem besteht immer noch, dass nichts in der Datenbank passiert.


    Der Server crasht aber nur manchmal, heißt mit irgendeiner Wahrscheinlichkeit crasht es.
    Hier nochmal der Code:

    C
    new query[246];
    			mysql_format(handle, query, sizeof(query), "INSERT INTO garage (X, Y, Z, ID, Kaufpreis, InteriorType, existiert, Lock) VALUES");
    			mysql_format(handle, query, sizeof(query), "%s (%f,%f,%f,%d,%d,%d,%d,%d)",query, gInfo[i][gX],gInfo[i][gY],gInfo[i][gZ],gInfo[i][db_gid],gInfo[i][gKaufpreis],gInfo[i][ginttype],gInfo[i][gexistiert],gInfo[i][gLock]);
    			mysql_pquery(handle,query);


    Bin am verzweifeln, was ist denn hier falsch? er zeigt mir sogar den Wert an, heißt das es doch richtig sein muss.

    C
    mysql_format(handle, query, sizeof(query), "INSERT INTO garage (X, Y, Z, ID, Kaufpreis, InteriorType, existiert, Lock) VALUES");
    			mysql_format(handle, query, sizeof(query), "%s ('%f','%f','%f','%d','%d','%d','%d','%d')"//query,........

    http://prntscr.com/o5lawi



    Code
    [16:06:41] [DEBUG] processing internal specifier 'c'
    [16:06:41] [DEBUG] pushed value '1' onto AMX stack
    [16:06:41] [DEBUG] processing internal specifier 's'
    [16:06:41] [DEBUG] pushed value 'INSERT INTO garage (X, Y, Z, ID, Kaufpreis, InteriorType, existiert, Lock) VALUES ('775.807861','-1379.737549','13.651802','3','25825','1','1','1')' onto AMX stack
    [16:06:41] [DEBUG] processing internal specifier 's'
    [16:06:41] [DEBUG] pushed value '' onto AMX stack
    [16:06:41] [DEBUG] processing internal specifier 's'
    [16:06:41] [DEBUG] pushed value 'You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'Lock) VALUES ('775.807861','-1379.737549','13.651802','3','25825','1','1','1')' at line 1' onto AMX stack
    [16:06:41] [DEBUG] processing internal specifier 'c'

    Ja aber, wo das InteriorType = 2 ist soll ja auch neu gezählt werden. So das jeder Typ die maximale Anzahl an VirtuellenIDS erstellen kann, dann habe ich am Ende mehr davon.
    AUTO_INCREMENT hilft ja dann, hätte ich dieses Types nicht würde ich sagen.



    Wie erstelle ich ein DynamicPickup in allen Virtuellen Welten? Das selbe auch für 3DTextLabels,
    soll ich wirklich eine Schleife durchlaufen lassen? Oder gibts da was anderes?