Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var _tempList;
- while(ds_grid_height(genList) != 1){
- _tempList = ds_grid_create(3,1);
- for (var i = 1; i < ds_grid_height(genList);i++){
- var rOpen = (choose(true,false) && rmGrid[# genList[# 0,i]+1, genList[# 1,i]] = null && rmGrid[# genList[# 0,i]+1, genList[# 1,i]] != undefined)
- var uOpen = (choose(true,false) && rmGrid[# genList[# 0,i], genList[# 1,i]-1] = null && rmGrid[# genList[# 0,i], genList[# 1,i]-1] != undefined)
- var lOpen = (choose(true,false) && rmGrid[# genList[# 0,i]-1, genList[# 1,i]] = null && rmGrid[# genList[# 0,i]-1, genList[# 1,i]] != undefined)
- var dOpen = (choose(true,false) && rmGrid[# genList[# 0,i], genList[# 1,i]+1] = null && rmGrid[# genList[# 0,i], genList[# 1,i]+1] != undefined)
- if rOpen+uOpen+lOpen+dOpen = 0{
- if _tempList[# 3,i] != undefined{
- rmGrid[# genList[# 0,i], genList[# 1,i]] = _tempList[# 3,i];
- }
- }else{
- rmGrid[# genList[# 0,i], genList[# 1,i]] = right*(rOpen || genList[# 3,i] == 1)+up*(uOpen || genList[# 3,i] == 2)+left*(lOpen || genList[# 3,i] == 3)+down*(dOpen || genList[# 3,i] == 4);
- }
- _tempList[# 3,i] = undefined;
- //for (var i = 1; i < ds_grid_height(_tempList); i++){
- // _tempList[# 2,i] = null;
- // _tempList[# 3,i] = null;
- // _tempList[# 4,i] = null;
- // _tempList[# 5,i] = null;
- //}
- if rOpen = true{
- ds_grid_resize(_tempList,3,ds_grid_height(_tempList)+1);
- _tempList[# 0,ds_grid_height(_tempList)-1] = genList[# 0,i]+1;
- _tempList[# 1,ds_grid_height(_tempList)-1] = genList[# 1,i];
- _tempList[# 2,ds_grid_height(_tempList)-1] = 3; // set next rooms left door open
- }
- if uOpen = true{
- ds_grid_resize(_tempList,3,ds_grid_height(_tempList)+1);
- _tempList[# 1,ds_grid_height(_tempList)-1] = genList[# 1,i]-1;
- _tempList[# 0,ds_grid_height(_tempList)-1] = genList[# 0,i];
- _tempList[# 2,ds_grid_height(_tempList)-1] = 4; // set next rooms bottom door open
- }
- if lOpen = true{
- ds_grid_resize(_tempList,3,ds_grid_height(_tempList)+1);
- _tempList[# 0,ds_grid_height(_tempList)-1] = genList[# 0,i]-1;
- _tempList[# 1,ds_grid_height(_tempList)-1] = genList[# 1,i];
- _tempList[# 2,ds_grid_height(_tempList)-1] = 1; // set next rooms right door open
- }
- if dOpen = true{
- ds_grid_resize(_tempList,3,ds_grid_height(_tempList)+1);
- _tempList[# 1,ds_grid_height(_tempList)-1] = genList[# 1,i]+1;
- _tempList[# 0,ds_grid_height(_tempList)-1] = genList[# 0,i];
- _tempList[# 2,ds_grid_height(_tempList)-1] = 2; // set next rooms up door open
- }
- }
- ds_grid_copy(genList,_tempList);
- ds_grid_destroy(_tempList);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement