Beiträge von _AEROX_

    C
    if(IsValidVehicle(cInfo[ci][playerid][id_x]))

    zu:

    C
    if(IsValidVehicle(cInfo[ci][id_x]))

    ok und mein anderes problem weist du was ich da falsch gemacht habe ?


    bekomme jetz weil playerid vom stock nicht genutzt wird eine Warning Meldung


    von dieser Zeile --->> stock GetPlayerVehicleCount(playerid)



    Meldung:


    Code
    C:\Users\\\\\.pwn(12320) : warning 203: symbol is never used: "playerid"
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase

    Welchen Fehler?

    Hups sry vergessen des weiteren mache ich das ganze ja per name anstatt per id in der datebank
    jetz habe ich das problem wen ich ein fahrzeug gekauft habe kann ich auch ein neues kaufen was am Ort gespawnt wird
    wo man es dann fahren kann das problem wen ich das 2te auto dann parken will kommt vom /parken befehl die meldung dies Fahrzeug gehört nicht dir wie kann ich das lösen ? das es auch beim 2ten fahrzeug funktioniert?


    Fehlermeldung:



    Park befehl vom Problem was oben beschrieben ist :



    @Jeffry

    Hey undzwar habe ich in diesem Stock den ich für die maximale anzahl von Spielerfahrzeugen habe einen Fehler.
    Woran könnte dies liegen ?


    Code:



    Das ganze möchte ich beim kauf eines Autos einfügen damit man wen man die Maximale Anzahl an fahrzeugen erreicht hat
    kein weiteres kaufen kann oder gibt es da eine bessere Methode :) ?


    Code
    if(GetPlayerVehicleCount(playerid) >= MAX_PLAYER_VEHS)
                    {
                        SendClientMessage(playerid,RED,"Du kannst keine weiteren Fahrzeuge kaufen !");
                        return 1;
    				}



    @Jeffry @_Marvin @Kaliber @BlackAce

    Bei OnPlayerDisconnect musst du die Fahrzeuge des Spielers entfernen lassen.

    Wäre dies so richtig?


    Code
    for(new i=0; i<sizeof(cInfo); i++)
    	{
    	    if(cInfo[i][id_x]==0)continue;
    	    if(cInfo[i][besitzer]!=SpielerInfo[playerid][Name])continue;
    	    DestroyVehicle(cInfo[i][id_x]);
    	    cInfo[i][id_x]=0;
    	}

    Du fängst mit der Schleife bei 1 an, und die Nachricht kommt immer, egal ob man das Fahrzeug parken darf oder nicht.
    Versuche es so:


    Nun parkt er an der neuen Position aber nun stehen 2 gleiche autos auf dem neuen geparkten platz was muss ich da jetz machen muss ich das fahrezeug irwo destroyen ?


    @Jeffry

    Hey der Spieler hat bis jetz nur ein Fahrzeug kannst du mir das mit dem Print mal zeigen wie ich es bei dem Befehl machen soll ?

    Was sagt denn der MySQL Debug?
    Falls nicht, dann lasse dir die Query mal debuggen und schicke die hier.

    ehm in der mysql_log steht dies:



    Und der Befehlt sieht momentan so aus :



    @Jeffry @Kaliber


    //edit etwas hinzugefügt +

    C
    mysql_format(db, query,sizeof(query),"UPDATE autos SET x='%f',y='%f',z='%f',r='%f',nitro='%i' WHERE besitzer='%e'",

    Du hast da einen kleinen Fehler drin gehabt, direkt nach dem %e hast du das ' vergessen.

    Habe den Befehl jetz so aber wen ich Ingame /parken mach im fahrzeug und es dann quasi parken will und dann off gehe und wieder on steht es wieder da wo es davor war also wurde quasi nicht umgeparkt :O :/


    Aktueller Code von /parken :


    Hey Community,
    undzwar mache ich Ingame /parken und gehe dann off und dann steht das gekaufte Fahrzeug wieder da wo es erstellt wurde beim Autohaus.
    Woran könnte das liegen bin grade etwas am verzweifeln :D


    Code:



    @Kaliber @Jeffry @_Marvin

    Bei deinem saveCarToDB stock ist das query mit 128 zu klein. Erhöhe das.

    habe es jetz so aber es geht immer noch nicht muss wohl irgendwo anders dran liegen :( :/


    Code:

    Code
    saveCarToDB(playerid,hehe)
    {
    	new query[256];
    	mysql_format(db, query,sizeof(query),"INSERT INTO autos (besitzer,model,x,y,z,r,nitro) VALUES ('%e','%i','%i','%f','%f','%f','%f','%i')",SpielerInfo[playerid][Name],cInfo[hehe][model],cInfo[hehe][c_x],cInfo[hehe][c_y],cInfo[hehe][c_z],cInfo[hehe][c_r],cInfo[hehe][nitro]);
    	mysql_function_query(db,query,true,"carSavedToDB","i",hehe);
    	return 1;
    }

    Hey undzwar trägt er kein Fahrzeug in die Tabelle ein wen ich ein Fahrzeug gekauft habe.


    Hier mal die Codes:


    Datenbank Struktur:


    Code
    CREATE TABLE IF NOT EXISTS `autos` (
      `besitzer` varchar(24) NOT NULL,
      `model` int(11) NOT NULL,
      `x` int(11) NOT NULL,
      `y` int(11) NOT NULL,
      `z` int(11) NOT NULL,
      `r` int(11) NOT NULL,
      `nitro` int(11) NOT NULL,
      PRIMARY KEY (`besitzer`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=91 ;





    Code
    saveCarToDB(playerid,hehe)
    {
    	new query[128];
    	mysql_format(db, query,sizeof(query),"INSERT INTO autos (besitzer,model,x,y,z,r,nitro) VALUES ('%e','%i','%i','%f','%f','%f','%f','%i')",SpielerInfo[playerid][Name],cInfo[hehe][model],cInfo[hehe][c_x],cInfo[hehe][c_y],cInfo[hehe][c_z],cInfo[hehe][c_r],cInfo[hehe][nitro]);
    	mysql_function_query(db,query,true,"carSavedToDB","i",hehe);
    	return 1;
    }


    Code
    loadPlayerCars(playerid)
    {
    	new query[128];
    	mysql_format(db, query,sizeof(query),"SELECT * FROM autos WHERE besitzer='%e'",SpielerInfo[playerid][Name]);
    	mysql_function_query(db,query,true,"OnPlayerCarsLoad","i",playerid);
    	return 1;
    }


    @Jeffry

    Das bedeutet, dass du nichts richtig abrufen kannst (bspw via ID), wenn du beispielsweise anhand des Besitzers auslesen willst, aber dort mehrere Autos drin hast, werden alle ausgelesen, oder per ASC und DESC nur das erste / letzte

    Also was muss ich jetz machen das ich die Spalten direkt öffnen kann und die werte ändern kann ?

    Hey ich habe keine Bearbeitungsfunktion die sachen werden zwar gespeichert aber kann sie nicht direkt bearbeiten wie muss ich das nochmal machen?



    Meldung bei Phpymyadmin:


    Code
    Die aktuelle Markierung enthält keine eindeutige ("unique") Spalte. Gitter-Bearbeitungsfunktion, Kontrollkästchen, Bearbeiten, Kopieren und Löschen von Links sind nicht verfügbar.


    Aufbau der Struktur :


    Code
    CREATE TABLE IF NOT EXISTS `autos` (
      `besitzer` varchar(24) NOT NULL,
      `model` int(11) NOT NULL,
      `x` int(11) NOT NULL,
      `y` int(11) NOT NULL,
      `z` int(11) NOT NULL,
      `r` int(11) NOT NULL,
      `nitro` int(11) NOT NULL
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=91 ;


    @Jeffry@Kaliber

    Wie hast du cInfo deklariert? Hast du das mit MAX_AUTOS deklariert? Wenn nicht, mache das.

    so sind die sachen deklariet Jeffry: