08.10.2018, 20:40
pawn Код:
#define MAX_POBJECTS 35
// When server starts
// for(new i = 0; i < MAX_POBJECTS; i++)LoadObjects(i);
LoadObjetcs(id){
Obj[id][Exists] = 0;
new DB_Query[64];
mysql_format(Database2, DB_Query, sizeof(DB_Query), "SELECT * FROM `usersobjectsinfo`");
mysql_tquery(Database2, DB_Query, "LoadObjectsCoordinates","i", id);
return 1;
}
Does it also mean that a player can only create 1 object (35 players max) or 35 objects per player?
Remove the save cache, set active cache and delete cache parts.
pawn Код:
strcat(DB_Query, "CREATE TABLE IF NOT EXISTS `usersobjectsinfo`");
strcat(DB_Query,"(`ID` int(11) NOT NULL AUTO_INCREMENT,");
strcat(DB_Query,"`USERNAME` varchar(24),`POSX` float(12),"); // To get track of who created that obj
strcat(DB_Query,"`POSY` float(12),");
strcat(DB_Query,"`POSZ` float(12),");
strcat(DB_Query,"`ROTX` float(12),");
strcat(DB_Query,"`ROTY` float(12),");
strcat(DB_Query,"`ROTZ` float(12),");
strcat(DB_Query,"`OBJECTID` mediumint(7) NOT NULL,");
strcat(DB_Query,"PRIMARY KEY (`ID`))");
What pair is unique? userid + objectid
Set those two columns as a UNIQUE KEY (yes, multi-column in 1 key). Now you do not even need the select query, nor checking if x is equal to y.
pawn Код:
INSERT INTO usersobjectsinfo (...) VALUES (...) ON DUPLICATE KEY UPDATE ...