Advertisement
Guest User

Untitled

a guest
Dec 2nd, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. //1) create gems
  3. for(i=0;i<=global.board_rows-1;i++)
  4. {
  5.     for(j=0;j<=7;j++)
  6.     {
  7.         gem_array[i,j] = irandom_range(0,Gamerule_1.num_skin)
  8.     }
  9. }
  10.  
  11. //2) make the Gems not match
  12.  
  13. do
  14. {
  15.     amready2 = false
  16.     amready = true
  17.     for(i=0;i<=global.board_rows-1;i++)
  18.     {
  19.         for(j=0;j<=7;j++)
  20.         {
  21.             if i >= 1 && i <= global.board_rows-2
  22.             {
  23.                 if (gem_array[i-1,j] == gem_array[i,j]) && (gem_array[i,j] == gem_array[i+1,j])
  24.                     {
  25.                         amready = false
  26.                         do gem_array[i,j] = irandom_range(0,Gamerule_1.num_skin)
  27.                         until gem_array[i,j] != gem_array[i-1,j]
  28.                     }
  29.             }
  30.            
  31.             if j >= 1 && j <= 6
  32.             {
  33.                 if (gem_array[i,j-1] == gem_array[i,j]) && (gem_array[i,j] == gem_array[i,j+1])
  34.                     {
  35.                         amready = false
  36.                         do gem_array[i,j] = irandom_range(0,Gamerule_1.num_skin)
  37.                         until gem_array[i,j] != gem_array[i,j-1]
  38.                     }
  39.             }
  40.            
  41.            
  42.         }
  43.     }
  44.    
  45.     //3 always have moves at start
  46.     if amready && global.board_rows = 3
  47.         {
  48.             amready2 = true
  49.             for(j=0;j<=7;j++)
  50.             {
  51.                
  52.                     if j <= 6
  53.                     {
  54.                         if (gem_array[1,j] == gem_array[2,j+1]) && (gem_array[1,j] == gem_array[0,j+1])
  55.                         {
  56.                             amready2 = false
  57.                         }
  58.                     }
  59.                     if j >= 1
  60.                     {
  61.                         if (gem_array[1,j] == gem_array[2,j-1]) && (gem_array[1,j] == gem_array[0,j-1])
  62.                         {
  63.                             amready2 = false
  64.                         }
  65.                     }
  66.                     if j <= 4
  67.                     {
  68.                         if (gem_array[1,j] == gem_array[1,j+2]) && (gem_array[1,j] == gem_array[1,j+3])
  69.                         {
  70.                             amready2 = false
  71.                         }
  72.                     }
  73.                     if j >= 3
  74.                     {
  75.                         if (gem_array[1,j] == gem_array[1,j-2]) && (gem_array[1,j] == gem_array[1,j-3])
  76.                         {
  77.                             amready2 = false
  78.                         }
  79.                     }
  80.                
  81.             }
  82.             if !amready2 //4) shuffle and retry loop if we fail to find matches
  83.                 {
  84.                     for(i=0;i<=global.board_rows-1;i++)
  85.                     {
  86.                         for(j=0;j<=7;j++)
  87.                         {
  88.                             gem_array[i,j] = irandom_range(0,Gamerule_1.num_skin)
  89.                         }
  90.                     }
  91.                 }
  92.         }
  93.         else amready2 = true
  94. } until (amready = true) && (amready2 = true)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement