Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- h = 24
- w = 24
- range = 256
- int pathing[h,w];
- int doneflag = 0;
- for(xx=0; xx<w; xx++) {
- for(yy=0; yy<h; yy++) {
- pathing[xx,yy] = range;
- }
- }
- pathing[player.x/8, player.y/8] = 0;
- while (doneflag == 0) {
- doneflag = 1;
- for(xx=0; xx<w; xx++) {
- for(yy=0; yy<h; yy++) {
- if(pathing[xx,yy] < range) {
- if(pathing[xx-1,yy] == range && ds_grid_get(global.mainGrid,xx-1,yy) == 0) {pathing[xx-1,yy]=pathing[xx,yy]+1; doneflag=0;}
- if(pathing[xx+1,yy] == range && ds_grid_get(global.mainGrid,xx+1,yy) == 0) {pathing[xx+1,yy]=pathing[xx,yy]+1; doneflag=0;}
- if(pathing[xx,yy-1] == range && ds_grid_get(global.mainGrid,xx,yy-1) == 0) {pathing[xx,yy-1]=pathing[xx,yy]+1; doneflag=0;}
- if(pathing[xx,yy+1] == range && ds_grid_get(global.mainGrid,xx,yy+1) == 0) {pathing[xx,yy+1]=pathing[xx,yy]+1; doneflag=0;}
- }
- }
- }
- for(xx=w-1; xx>=0; xx--) {
- for(yy=h-1; yy>=0; yy--) {
- if(pathing[xx,yy] < range) {
- if(pathing[xx-1,yy] == range && ds_grid_get(global.mainGrid,xx-1,yy) == 0) {pathing[xx-1,yy]=pathing[xx,yy]+1; doneflag=0;}
- if(pathing[xx+1,yy] == range && ds_grid_get(global.mainGrid,xx+1,yy) == 0) {pathing[xx+1,yy]=pathing[xx,yy]+1; doneflag=0;}
- if(pathing[xx,yy-1] == range && ds_grid_get(global.mainGrid,xx,yy-1) == 0) {pathing[xx,yy-1]=pathing[xx,yy]+1; doneflag=0;}
- if(pathing[xx,yy+1] == range && ds_grid_get(global.mainGrid,xx,yy+1) == 0) {pathing[xx,yy+1]=pathing[xx,yy]+1; doneflag=0;}
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement