shithub: sce

Download patch

ref: 18337d7e1454d9ef237e3715f52a1526ec659002
parent: 2852fc75b203598e781db315ea6b2a7735d2db4a
author: qwx <[email protected]>
date: Thu Mar 25 19:48:47 EDT 2021

better names for basic enums for tile and path grids

--- a/dat.h
+++ b/dat.h
@@ -19,12 +19,11 @@
 	Nteam = 8,
 	Nselect = 12,
 	Nrot = 32,
-	Tlwidth = 32,
-	Tlheight = Tlwidth,
-	Tlsubshift = 2,
-	Tlsubwidth = Tlwidth >> Tlsubshift,
-	Tlsubheight = Tlheight >> Tlsubshift,
-	Tlnsub = Tlwidth / Tlsubwidth,
+	Tilewidth = 32,
+	Tileheight = Tilewidth,
+	Node2Tile = 4,
+	Nodewidth = Tilewidth / Node2Tile,
+	Nodeheight = Tileheight / Node2Tile,
 	Subpxshift = 16,
 	Subpxmask = (1 << Subpxshift) - 1,
 };
--- a/drw.c
+++ b/drw.c
@@ -62,8 +62,8 @@
 		return;
 	}
 	p = divpt(addpt(subpt(p, selr.min), pan), scale);
-	p.x /= Tlsubwidth;
-	p.y /= Tlsubheight;
+	p.x /= Nodewidth;
+	p.y /= Nodeheight;
 	moveone(p, selected[0], mo);
 }
 
@@ -215,7 +215,7 @@
 	u32int v, *p, *e;
 	Rectangle r;
 
-	r = Rect(x * Tlsubwidth, y * Tlsubheight, Tlsubwidth, Tlsubheight);
+	r = Rect(x * Nodewidth, y * Nodeheight, Nodewidth, Nodeheight);
 	if(boundpic(&r, nil) < 0)
 		return;
 	p = fb + r.min.y * fbws + r.min.x;
@@ -264,7 +264,7 @@
 	}
 	if((mo = selected[0]) != nil && mo->pathp != nil){
 		for(p=mo->paths; p<mo->pathe; p++)
-			compose(p->x / Tlsubwidth, p->y / Tlsubheight, 0x00ff00);
+			compose(p->x / Nodewidth, p->y / Nodeheight, 0x00ff00);
 		compose(mo->target.x, mo->target.y, 0x00ffff);
 	}
 }
@@ -307,23 +307,23 @@
 	Mobjl *ml;
 
 	clearvis();
-	tr.min.x = pan.x / scale / Tlwidth;
-	tr.min.y = pan.y / scale / Tlheight;
-	tr.max.x = tr.min.x + (pan.x / scale % Tlwidth != 0);
-	tr.max.x += fbw / Tlwidth + (fbw % Tlwidth != 0);
+	tr.min.x = pan.x / scale / Tilewidth;
+	tr.min.y = pan.y / scale / Tileheight;
+	tr.max.x = tr.min.x + (pan.x / scale % Tilewidth != 0);
+	tr.max.x += fbw / Tilewidth + (fbw % Tilewidth != 0);
 	if(tr.max.x > terwidth)
 		tr.max.x = terwidth;
-	tr.max.y = tr.min.y + (pan.y / scale % Tlheight != 0);
-	tr.max.y += fbh / Tlheight + (fbh % Tlwidth != 0);
+	tr.max.y = tr.min.y + (pan.y / scale % Tileheight != 0);
+	tr.max.y += fbh / Tileheight + (fbh % Tilewidth != 0);
 	if(tr.max.y > terheight)
 		tr.max.y = terheight;
-	mr.min.x = max(tr.min.x - 3, 0) * Tlnsub;
-	mr.min.y = max(tr.min.y - 3, 0) * Tlnsub;
-	mr.max.x = tr.max.x * Tlnsub;
-	mr.max.y = tr.max.y * Tlnsub;
+	mr.min.x = max(tr.min.x - 3, 0) * Node2Tile;
+	mr.min.y = max(tr.min.y - 3, 0) * Node2Tile;
+	mr.max.x = tr.max.x * Node2Tile;
+	mr.max.y = tr.max.y * Node2Tile;
 	for(y=tr.min.y, t=terrain+y*terwidth+tr.min.x; y<tr.max.y; y++){
 		for(x=tr.min.x; x<tr.max.x; x++, t++)
-			drawpic(x*Tlwidth, y*Tlheight, (*t)->p, -1);
+			drawpic(x*Tilewidth, y*Tileheight, (*t)->p, -1);
 		t += terwidth - (tr.max.x - tr.min.x);
 	}
 	for(y=mr.min.y, m=map+y*mapwidth+mr.min.x; y<mr.max.y; y++){
@@ -391,13 +391,13 @@
 void
 resetfb(void)
 {
-	fbws = min(mapwidth * Tlsubwidth * scale, Dx(screen->r));
-	fbh = min(mapheight * Tlsubheight * scale, Dy(screen->r));
+	fbws = min(mapwidth * Nodewidth * scale, Dx(screen->r));
+	fbh = min(mapheight * Nodeheight * scale, Dy(screen->r));
 	selr = Rpt(screen->r.min, addpt(screen->r.min, Pt(fbws, fbh)));
 	p0 = Pt(screen->r.min.x + 8, screen->r.max.y - 3 * font->height);
 	p0.y -= (p0.y - screen->r.min.y) % scale;
-	panmax.x = max(Tlsubwidth * mapwidth * scale - Dx(screen->r), 0);
-	panmax.y = max(Tlsubheight * mapheight * scale - Dy(screen->r), 0);
+	panmax.x = max(Nodewidth * mapwidth * scale - Dx(screen->r), 0);
+	panmax.y = max(Nodeheight * mapheight * scale - Dy(screen->r), 0);
 	if(p0.y < selr.max.y){
 		panmax.y += selr.max.y - p0.y;
 		fbh -= selr.max.y - p0.y;
--- a/fs.c
+++ b/fs.c
@@ -400,7 +400,7 @@
 	o->accel /= 256.0;
 	o->halt /= 256.0;
 	/* halting distance in path node units */
-	o->halt /= Tlsubwidth;
+	o->halt /= Nodewidth;
 	if(o->w < 1 || o->h < 1)
 		sysfatal("readobj: %s invalid dimensions %d,%d", o->name, o->w, o->h);
 }
@@ -546,7 +546,7 @@
 	Objp *op;
 
 	for(op=objp; op<objp+nobjp; op++)
-		if(spawn(op->x * Tlnsub, op->y * Tlnsub, op->o, op->team) < 0)
+		if(spawn(op->x * Node2Tile, op->y * Node2Tile, op->o, op->team) < 0)
 			sysfatal("initmapobj: %s team %d: %r", op->o->name, op->team);
 	free(objp);
 }
--- a/map.c
+++ b/map.c
@@ -86,7 +86,7 @@
 {
 	Mobj *mo;
 
-	if(o->f & Fbuild && (x & Tlnsub-1 || y & Tlnsub-1)){
+	if(o->f & Fbuild && (x & Node2Tile-1 || y & Node2Tile-1)){
 		werrstr("mapspawn: building spawn %d,%d not aligned to terrain map", x, y);
 		return nil;
 	}
@@ -95,8 +95,8 @@
 	mo = emalloc(sizeof *mo);
 	mo->x = x;
 	mo->y = y;
-	mo->px = x * Tlsubwidth;
-	mo->py = y * Tlsubheight;
+	mo->px = x * Nodewidth;
+	mo->py = y * Nodeheight;
 	mo->subpx = mo->px << Subpxshift;
 	mo->subpy = mo->py << Subpxshift;
 	mo->o = o;
@@ -113,8 +113,8 @@
 	int n;
 	Map *m;
 
-	mapwidth = terwidth * Tlnsub;
-	mapheight = terheight * Tlnsub;
+	mapwidth = terwidth * Node2Tile;
+	mapheight = terheight * Node2Tile;
 	n = mapwidth * mapheight;
 	map = emalloc(n * sizeof *map);
 	node = emalloc(n * sizeof *node);
--- a/path.c
+++ b/path.c
@@ -81,10 +81,10 @@
 	int w, h;
 
 	w = mo->o->w;
-	if((mo->subpx & Subpxmask) != 0 && mo->x != (mo->px + 1) / Tlsubwidth)
+	if((mo->subpx & Subpxmask) != 0 && mo->x != (mo->px + 1) / Nodewidth)
 		w++;
 	h = mo->o->h;
-	if((mo->subpy & Subpxmask) != 0 && mo->y != (mo->py + 1) / Tlsubwidth)
+	if((mo->subpy & Subpxmask) != 0 && mo->y != (mo->py + 1) / Nodewidth)
 		h++;
 	bset(mo->x, mo->y, w, h, set);
 }
@@ -381,8 +381,8 @@
 	p = mo->paths + n->step;
 	mo->pathe = p--;
 	for(; n!=a; n=n->from){
-		x = n->x * Tlsubwidth;
-		y = n->y * Tlsubheight;
+		x = n->x * Nodewidth;
+		y = n->y * Nodeheight;
 		*p-- = (Point){x, y};
 	}
 	assert(p == mo->paths - 1);
--- a/sim.c
+++ b/sim.c
@@ -215,7 +215,7 @@
 			if(Δrx < 0)
 				sx += mo->u < 0 ? -Δrx : Δrx;
 			x = (sx >> Subpxshift) + ((sx & Subpxmask) != 0);
-			x /= Tlsubwidth;
+			x /= Nodewidth;
 		}
 		if(Δry > 0){
 			sy += Δv;
@@ -223,7 +223,7 @@
 			if(Δry < 0)
 				sy += mo->v < 0 ? -Δry : Δry;
 			y = (sy >> Subpxshift) + ((sy & Subpxmask) != 0);
-			y /= Tlsubwidth;
+			y /= Nodewidth;
 		}
 		if(isblocked(x, y, mo->o))
 			goto end;
@@ -238,8 +238,8 @@
 		mo->subpy = sy;
 		mo->px = sx >> Subpxshift;
 		mo->py = sy >> Subpxshift;
-		mo->x = mo->px / Tlsubwidth;
-		mo->y = mo->py / Tlsubheight;
+		mo->x = mo->px / Nodewidth;
+		mo->y = mo->py / Nodeheight;
 	}
 	markmobj(mo, 1);
 	dx = mo->px - px;
@@ -246,7 +246,7 @@
 	dx *= dx;
 	dy = mo->py - py;
 	dy *= dy;
-	mo->pathlen -= sqrt(dx + dy) / Tlsubwidth;
+	mo->pathlen -= sqrt(dx + dy) / Nodewidth;
 	return 0;
 end:
 	werrstr("trymove: can't move to %d,%d", x, y);
@@ -257,7 +257,7 @@
 	dx *= dx;
 	dy = mo->py - py;
 	dy *= dy;
-	mo->pathlen -= sqrt(dx + dy) / Tlsubwidth;
+	mo->pathlen -= sqrt(dx + dy) / Nodewidth;
 	return -1;
 }