converting yini to Mysql
#1

Can anyone show me how to do this? this all the code. my table is speedcamera

Код:
enum SpeedTraps
{
	Float:CamX,
	Float:CamY,
	Float:CamZ,
	Float:CamAngle,
	CamSpeed,
	CamObj1,
	CamObj2,
}
new gCameras[MAX_PLAYERS][SpeedTraps];

OnGameModeInit: 

    for(new i; i < MAX_CAMERAS; i++)
    {
	    INI_ParseFile(Camera_Path(i), "LoadCamera_%s", .bExtra = true, .extra = i);
 	    CreateSpeedCamera(i, gCameras[i][CamX], gCameras[i][CamY], gCameras[i][CamZ], gCameras[i][CamAngle], gCameras[i][CamSpeed]);
    }


//Speed cam
forward LoadCamera_data(i, name[], value[]);
public LoadCamera_data(i, name[], value[])
{
    INI_Float("CamX", gCameras[i][CamX]);
    INI_Float("CamY", gCameras[i][CamY]);
    INI_Float("CamZ", gCameras[i][CamZ]);
    INI_Float("CamAngle", gCameras[i][CamAngle]);
    INI_Int("CamSpeed", gCameras[i][CamSpeed]);
    return 1;
}

CMD:addcam(playerid, params[])
{
    new Float:x, Float:y, Float:z, Float:Angle, MaxSpeed, string[70];
    if (sscanf(params, "i", MaxSpeed)) return SendClientMessage(playerid, -1, "Usage: /addcam [Max Speed]");
    GetPlayerPos(playerid, x, y, z); GetPlayerFacingAngle(playerid, Angle); z = z - 1.0;
    SetPlayerPos(playerid, x, y + 1.0, z + 1.0);
    for (new i; i < MAX_CAMERAS; i++)
    {
        if (gCameras[i][CamSpeed] == 0)
        {
            CreateSpeedCamera(i, x, y, z, Angle, MaxSpeed);
            new INI:CamFile = INI_Open(Camera_Path(i));
            INI_WriteFloat(CamFile, "CamX", x);
            INI_WriteFloat(CamFile, "CamY", y);
            INI_WriteFloat(CamFile, "CamZ", z);
            INI_WriteFloat(CamFile, "CamAngle", Angle);
            INI_WriteInt(CamFile, "CamSpeed", MaxSpeed);
            INI_Close(CamFile);
            format(string, sizeof(string), "You created a speed camera with ID: %i.", i);
            SendClientMessage(playerid, -1, string);
            return 1;
        }
    }
    format(string, sizeof(string), "You cannot create more than %i speedcameras.", MAX_CAMERAS);
    SendClientMessage(playerid, -1, string);
    return 1;
}

CMD:delcam(playerid, params[])
{
    new string[70];
    for (new CamID; CamID < MAX_CAMERAS; CamID++)
    {
        if (gCameras[CamID][CamSpeed] != 0)
        {
            if (IsPlayerInRangeOfPoint(playerid, 5.0, gCameras[CamID][CamX], gCameras[CamID][CamY], gCameras[CamID][CamZ]))
            {
                new fileToDelete[72];
                format(fileToDelete, sizeof(fileToDelete), "/Cameras/Cam%i.ini", CamID);
                fremove(fileToDelete);
                DestroyDynamicObject(gCameras[CamID][CamObj1]);
                DestroyDynamicObject(gCameras[CamID][CamObj2]);
                gCameras[CamID][CamX] = 0.0;
                gCameras[CamID][CamY] = 0.0;
                gCameras[CamID][CamZ] = 0.0;
	            gCameras[CamID][CamAngle] = 0.0;
	            gCameras[CamID][CamSpeed] = 0;
                gCameras[CamID][CamObj1] = 0;
                gCameras[CamID][CamObj2] = 0;
                format(string, sizeof(string), "You deleted id camera %i", CamID);
                SendClientMessage(playerid, -1, string);
            }
            else
            {
			    format(string, sizeof(string), "You're not near by an speed trap!");
                SendClientMessage(CamID, -1, string);
            }
       }
    }
    return 1;
}

stock Camera_Path(CamID)
{
    new string[40];
    format(string, sizeof(string), "/Cameras/Cam%i.ini", CamID);
    return string;
}

stock CreateSpeedCamera(CamID, Float:x, Float:y, Float:z, Float:rot, MaxSpeed)
{
    gCameras[CamID][CamX] = x;
    gCameras[CamID][CamY] = y;
    gCameras[CamID][CamZ] = z;
    gCameras[CamID][CamAngle] = rot;
    gCameras[CamID][CamSpeed] = MaxSpeed;
    gCameras[CamID][CamObj1] = CreateDynamicObject(18880, x, y, z, 0.0, 0.0, rot);
    //gCameras[CamID][CamObj2] = CreateDynamicObject(18880, x, y, z, 0.0, 0.0, rot + 180.0);
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)