mirror of
https://github.com/nzp-team/quakec.git
synced 2024-11-26 05:41:20 +00:00
SERVER/FTE: Don't use float precision for way saving, account for it in load
This commit is contained in:
parent
a10a63ba9b
commit
63c759e217
1 changed files with 12 additions and 6 deletions
|
@ -364,23 +364,29 @@ void() Remove_Links =
|
||||||
string tempstest;
|
string tempstest;
|
||||||
void() Save_Waypoints_Legacy =
|
void() Save_Waypoints_Legacy =
|
||||||
{
|
{
|
||||||
local float file;
|
float file;
|
||||||
string h;
|
string h;
|
||||||
|
|
||||||
h = strcat(mappath, ".way");
|
h = strcat(mappath, ".way");
|
||||||
file = fopen (h, FILE_WRITE);
|
file = fopen (h, FILE_WRITE);
|
||||||
|
|
||||||
local entity dway;
|
entity dway;
|
||||||
//fputs(file, "begin\n");
|
|
||||||
dway = find(world, classname, "waypoint");
|
dway = find(world, classname, "waypoint");
|
||||||
while (dway)
|
while (dway)
|
||||||
{
|
{
|
||||||
dprint ("Saving waypoints\n");
|
dprint ("Saving waypoints\n");
|
||||||
fputs(file,"Waypoint\n");
|
fputs(file,"Waypoint\n");
|
||||||
fputs(file,"{\norigin = ");
|
fputs(file,"{\norigin = ");
|
||||||
tempstest = vtos(dway.origin);
|
|
||||||
|
// FTE users are just gonna have to deal with no float precision
|
||||||
|
// for now. :s
|
||||||
|
int x = ftoi(dway.origin_x);
|
||||||
|
int y = ftoi(dway.origin_y);
|
||||||
|
int z = ftoi(dway.origin_z);
|
||||||
|
tempstest = strcat("'", itos(x), " ", itos(y), " ", itos(z), "'");
|
||||||
tempstest = strzone(tempstest);
|
tempstest = strzone(tempstest);
|
||||||
fputs(file,tempstest);
|
fputs(file, tempstest);
|
||||||
strunzone (tempstest);
|
strunzone (tempstest);
|
||||||
fputs(file,"\nid = ");
|
fputs(file,"\nid = ");
|
||||||
fputs(file,dway.waynum);
|
fputs(file,dway.waynum);
|
||||||
|
@ -663,7 +669,7 @@ void() Load_Waypoints_Legacy
|
||||||
}
|
}
|
||||||
h = fgets(file);
|
h = fgets(file);
|
||||||
h = fgets(file);
|
h = fgets(file);
|
||||||
h = substring(h, 9, 20);
|
h = substring(h, 9, 50); // fix for high-precision vectors.
|
||||||
where = stov(h);
|
where = stov(h);
|
||||||
|
|
||||||
h = (fgets(file));
|
h = (fgets(file));
|
||||||
|
|
Loading…
Reference in a new issue