initialization is very slightly faster this way, I think
This commit is contained in:
		| @@ -350,14 +350,12 @@ prof(function(b1,b2) | |||||||
| 	  and b1[3]>=b2[1] | 	  and b1[3]>=b2[1] | ||||||
| 	  and b1[4]>=b2[2] | 	  and b1[4]>=b2[2] | ||||||
| end,function(b1, b2) | end,function(b1, b2) | ||||||
|  local b1x1, b1y1, b1x2, b1y2 = unpack(b1) |  | ||||||
|  local b2x1, b2y1, b2x2, b2y2 = unpack(b2) |  | ||||||
| 	return  | 	return  | ||||||
| 	  b1x1<=b2x2 | 	  b1.x1<=b2.x2 | ||||||
| 	  and b1y1<=b2y2 | 	  and b1.y1<=b2.y2 | ||||||
| 	  and b1x2>=b2x1 | 	  and b1.x2>=b2.x1 | ||||||
| 	  and b2y2>=b2y1 | 	  and b1.y2>=b2.y1 | ||||||
| end,{ locals={{1,1,1,1},{1,1,1,1}} }) | end,{ locals={{1,1,1,1,x1=1,x2=1,y1=1,y2=1},{1,1,1,1,x1=1,x2=1,y1=1,y2=1}} }) | ||||||
|  |  | ||||||
| -- "locals" (optional) are | -- "locals" (optional) are | ||||||
| -- passed in as args. see the | -- passed in as args. see the | ||||||
|   | |||||||
| @@ -568,7 +568,7 @@ end | |||||||
| function hurtbox(ship) | function hurtbox(ship) | ||||||
|  local h = ship.hurt |  local h = ship.hurt | ||||||
|  local x1,y1 = ship.x + h.x_off, ship.y+h.y_off |  local x1,y1 = ship.x + h.x_off, ship.y+h.y_off | ||||||
|  return {x1, y1, x1+h.width, y1+h.height} |  return {x1=x1, y1=y1, x2=x1+h.width, y2=y1+h.height} | ||||||
| end | end | ||||||
|  |  | ||||||
| function ship_m:maybe_shoot(gun) | function ship_m:maybe_shoot(gun) | ||||||
| @@ -1354,12 +1354,11 @@ end | |||||||
|  |  | ||||||
| -- box: x1, y1, x2, y2 | -- box: x1, y1, x2, y2 | ||||||
| function collides(b1, b2) | function collides(b1, b2) | ||||||
|  -- x1, y1, x2, y2 |  | ||||||
| 	return  | 	return  | ||||||
| 	  b1[1]<=b2[3] | 	  b1.x1<=b2.x2 | ||||||
| 	  and b1[2]<=b2[4] | 	  and b1.y1<=b2.y2 | ||||||
| 	  and b1[3]>=b2[1] | 	  and b1.x2>=b2.x1 | ||||||
| 	  and b1[4]>=b2[2] | 	  and b1.y2>=b2.y1 | ||||||
| end | end | ||||||
|  |  | ||||||
| collider = mknew{ | collider = mknew{ | ||||||
| @@ -1380,8 +1379,8 @@ collider = mknew{ | |||||||
| } | } | ||||||
|  |  | ||||||
| function collider_indexes(box) | function collider_indexes(box) | ||||||
|  local ret, ylo, yhi = {}, box[2]\8, box[4]\8 |  local ret, ylo, yhi = {}, box.y1\8, box.y2\8 | ||||||
|  for x = box[1]\8, box[3]\8 do |  for x = box.x1\8, box.x2\8 do | ||||||
|   for y = ylo, yhi do |   for y = ylo, yhi do | ||||||
|    add(ret, x+(y<<8)) |    add(ret, x+(y<<8)) | ||||||
|   end |   end | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user