Advertisement
vladkomarr

Untitled

Dec 1st, 2015
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.96 KB | None | 0 0
  1. for (var yy = 0; yy < height*2; yy++) {
  2.     for (var xx = 0; xx < width*2; xx++) {
  3.         if (grid[# xx div 2, yy div 2] == FLOOR) {
  4.             // Get the tile's x and y
  5.             var tx = xx*tw;
  6.             var ty = yy*th;
  7.            
  8.             var right = grid[# (xx+1) div 2, yy div 2] != FLOOR;
  9.             var left = grid[# (xx-1) div 2, yy div 2] != FLOOR;
  10.             var top = grid[# xx div 2, (yy-1) div 2] != FLOOR;
  11.             var bottom = grid[# xx div 2, (yy+1) div 2] != FLOOR;
  12.            
  13.             var top_right = grid[# (xx+1) div 2, (yy-1) div 2] != FLOOR;
  14.             var top_left = grid[# (xx-1) div 2, (yy-1) div 2] != FLOOR;
  15.             var bottom_right = grid[# (xx+1) div 2, (yy+1) div 2] != FLOOR;
  16.             var bottom_left = grid[# (xx-1) div 2, (yy+1) div 2] != FLOOR;
  17.            
  18.             if (right) {
  19.                 if (bottom) {
  20.                     tile_add(bg_walltiles, tw*4, th*1, tw, th, tx+tw, ty, -ty);
  21.                 } else if (top) {
  22.                     if (top_right) {
  23.                         tile_add(bg_walltiles, tw*4, th*0, tw, th, tx+tw, ty-th, -ty);
  24.                     } else {
  25.                         tile_add(bg_walltiles, tw*3, th*0, tw, th, tx, ty-th, -ty);
  26.                     }
  27.                     tile_add(bg_walltiles, tw*0, th*1, tw, th, tx+tw, ty, -ty);
  28.                 } else {
  29.                     tile_add(bg_walltiles, tw*0, th*1, tw, th, tx+tw, ty, -ty);
  30.                 }
  31.             }
  32.            
  33.             if (left) {
  34.                 if (bottom) {
  35.                     tile_add(bg_walltiles, tw*3, th*1, tw, th, tx-tw, ty, -ty);
  36.                 } else if (top) {
  37.                     if (top_left) {
  38.                         tile_add(bg_walltiles, tw*3, th*0, tw, th, tx-tw, ty-th, -ty);
  39.                     } else {
  40.                         tile_add(bg_walltiles, tw*4, th*0, tw, th, tx, ty-th, -ty);
  41.                     }
  42.                     tile_add(bg_walltiles, tw*2, th*1, tw, th, tx-tw, ty, -ty);
  43.                 } else {
  44.                     tile_add(bg_walltiles, tw*2, th*1, tw, th, tx-tw, ty, -ty);
  45.                 }
  46.             }
  47.            
  48.             if (top) {
  49.                 if (!top_right) {
  50.                     tile_add(bg_walltiles, tw*2, th*2, tw, th, tx, ty-th, -ty);
  51.                 } else if (!top_left) {
  52.                     tile_add(bg_walltiles, tw*0, th*2, tw, th, tx, ty-th, -ty);
  53.                 } else {
  54.                     tile_add(bg_walltiles, tw*1, th*2, tw, th, tx, ty-th, -ty);
  55.                 }
  56.             }
  57.            
  58.             if (bottom) {
  59.                 if (!bottom_right) {
  60.                     tile_add(bg_walltiles, tw*2, th*0, tw, th, tx, ty, -ty-tw);
  61.                 } else if (!bottom_left) {
  62.                     tile_add(bg_walltiles, tw*0, th*0, tw, th, tx, ty, -ty-tw);
  63.                 } else {
  64.                     tile_add(bg_walltiles, tw*1, th*0, tw, th, tx, ty, -ty-tw);
  65.                 }
  66.             }
  67.         }
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement