[MySQL] Pos speichern/abfragen

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey,


    ich bin gerade neu in MySQL und wollte einen simplen Befel machen: /spawnsave
    Einfach um die aktuelle Position des Spielers zu speichern damit er beim log in bzw. respawn da spawnt.


    Ich hab das so gelöst:

    //Bei OnPlayerCommand
    if(strcmp("/spawnsave",cmdtext,true,10)==0)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    mysql_SetFloat("accounts", "Spawnx", Float:x, "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Spawny", Float:y, "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Spawnz", Float:z, "Name", SpielerInfo[playerid][pName]);
    SendClientMessage(playerid,hellgruen,"[Server]: Du spawnst absofort immer hier!");
    return 1;
    }


    //und das bei LoadPlayer
    SpielerInfo[playerid][pSpawnx] = mysql_GetInt("accounts", "Spawnx", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pSpawny] = mysql_GetInt("accounts", "Spawny", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pSpawnz] = mysql_GetInt("accounts", "Spawnz", "Name", SpielerInfo[playerid][pName]);
    SetSpawnInfo(playerid,0,SpielerInfo[playerid][pSkin],SpielerInfo[playerid][pSpawnx],SpielerInfo[playerid][pSpawny],SpielerInfo[playerid][pSpawnz],0,0,0,0,0,0,0);


    Aber es funktioniert nicht. Wenn ich das eingebe werden mit in der Datenbank immer die Koords -1.000, -1.000, 1.000 angezeigt oder sowas. Und ich fliege dann immer in dem einen Dorf unter die Erde, und dann spawn ich oben wieder.


    Könnt ihr mir helfen?


    MfG Tomsen


  • Da liegt der Fehler, schreibe es so:



    //Bei OnPlayerCommand
    if(strcmp("/spawnsave",cmdtext,true,10)==0)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    mysql_SetFloat("accounts", "Spawnx",x, "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Spawny",y, "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Spawnz",z, "Name", SpielerInfo[playerid][pName]);
    SendClientMessage(playerid,hellgruen,"[Server]: Du spawnst absofort immer hier!");
    return 1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen