labyrinth

labyrinth preview image

1 collaborator

Default-person eric lujan (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by the author
Model was written in NetLogo 5.1.0 • Viewed 373 times • Downloaded 45 times • Run 0 times
Download the 'labyrinth' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model


breed [cows cow]
extensions [bitmap]
cows-own [
target
zforward
zright
zleft]

to create-agent 
set-default-shape cows "cow" 
ask patch 7 -7 [ sprout-cows 1 ] 
ask cows [          
set heading 0
set color grey
set target false] 
ask cows [ask patch-here [set pcolor white ] ]        
end 

to labyrinth2
  clear-all
  bitmap:copy-to-pcolors bitmap:import "labyrinth_two.png" true
  
  ask patch 0 -16 [ sprout-cows 1 ]
  ask cows [         
set heading 0
set color grey
set target false
check2
] 
ask cows [ask patch-here [set pcolor white ] ]        
end 

to labyrinth3
  clear-all
   bitmap:copy-to-pcolors bitmap:import "labyrinth_3.png" true
  ask patch 10 -14 [ sprout-cows 1 ]
  ask cows [         
set heading 0
set color grey
set target false
check3
] 
ask cows [ask patch-here [set pcolor white ] ]        
end 

to labyrinth1
  clear-all
  ca
    ask patches [ set pcolor white]

ask patch -7 8 [ set pcolor black]
ask patch -6 8 [ set pcolor black]
ask patch -5 8 [ set pcolor black]
ask patch -4 8 [ set pcolor black]
ask patch -3 8 [ set pcolor black]
ask patch -2 8 [ set pcolor black]
ask patch -1 8 [ set pcolor black]
ask patch 1 8 [ set pcolor black]
ask patch 0 8 [ set pcolor black]
ask patch 2 8 [ set pcolor black]
ask patch 3 8 [ set pcolor black]

ask patch 6 8 [ set pcolor black]
ask patch 7 8 [ set pcolor black]
ask patch 8 8 [ set pcolor black]

ask patch -7 7 [ set pcolor black]
ask patch -7 6 [ set pcolor black]
ask patch -7 5 [ set pcolor black]
ask patch -7 4 [ set pcolor black]
ask patch -7 3 [ set pcolor black]
ask patch -7 2 [ set pcolor black]
ask patch -7 1 [ set pcolor black]
ask patch -7 0 [ set pcolor black]
ask patch -7 -1 [ set pcolor black]
ask patch -7 -2 [ set pcolor black]
ask patch -7 -3 [ set pcolor black]
ask patch -7 -4 [ set pcolor black]
ask patch -7 -5 [ set pcolor black]
ask patch -7 -6 [ set pcolor black]
ask patch -7 -7 [ set pcolor black]

ask patch -7 -7 [ set pcolor black]
ask patch -6 -7 [ set pcolor black]
ask patch -5 -7 [ set pcolor black]
ask patch -4 -7 [ set pcolor black]
ask patch -3 -7 [ set pcolor black]
ask patch -2 -7 [ set pcolor black]
ask patch -1 -7 [ set pcolor black]
ask patch 1 -7 [ set pcolor black]
ask patch 0 -7 [ set pcolor black]
ask patch 2 -7 [ set pcolor black]
ask patch 3 -7 [ set pcolor black]
ask patch 4 -7 [ set pcolor black]
ask patch 5 -7 [ set pcolor black]

ask patch 8 -7 [ set pcolor black]

ask patch 8 8  [ set pcolor black]
ask patch 8 7  [ set pcolor black]
ask patch 8 6 [ set pcolor black]
ask patch 8 5 [ set pcolor black]
ask patch 8 4 [ set pcolor black]
ask patch 8 3 [ set pcolor black]
ask patch 8 2 [ set pcolor black]
ask patch 8 1 [ set pcolor black]
ask patch 8 0 [ set pcolor black]
ask patch 8 -1 [ set pcolor black]
ask patch 8 -2 [ set pcolor black]
ask patch 8 -3 [ set pcolor black]
ask patch 8 -4 [ set pcolor black]
ask patch 8 -5 [ set pcolor black]
ask patch 8 -6 [ set pcolor black]

ask patch -6 5 [ set pcolor black]
ask patch -5 5 [ set pcolor black]
ask patch -4 5 [ set pcolor black]
ask patch -4 4 [ set pcolor black]
ask patch -4 3 [ set pcolor black]
ask patch -4 2 [ set pcolor black]
ask patch -4 -1 [ set pcolor black]
ask patch -4 -2 [ set pcolor black]
ask patch -4 -3 [ set pcolor black]
ask patch -4 -4 [ set pcolor black]
ask patch -5 -4 [ set pcolor black]
ask patch -6 -4 [ set pcolor black]
ask patch -1 7 [ set pcolor black]
ask patch -1 6 [ set pcolor black]
ask patch -1 5 [ set pcolor black]
ask patch -1 4 [ set pcolor black]
ask patch -1 3 [ set pcolor black]
ask patch -1 2 [ set pcolor black]
ask patch 2 5 [ set pcolor black]
ask patch 2 4 [ set pcolor black]
ask patch 2 3 [ set pcolor black]
ask patch 2 2 [ set pcolor black]
ask patch 5 5 [ set pcolor black]
ask patch 5 4 [ set pcolor black]
ask patch 5 3 [ set pcolor black]
ask patch 5 2 [ set pcolor black]
ask patch 5 1 [ set pcolor black]
ask patch 5 0 [ set pcolor black]
ask patch 5 -1 [ set pcolor black]
ask patch 6 5 [ set pcolor black]
ask patch 7 5 [ set pcolor black]
ask patch -1 -1 [ set pcolor black]
ask patch 0 -1 [ set pcolor black]
ask patch 1 -1 [ set pcolor black]
ask patch 2 -1 [ set pcolor black]
ask patch 3 -1 [ set pcolor black]
ask patch 4 -1 [ set pcolor black]
ask patch -1 -2 [ set pcolor black]
ask patch -1 -3 [ set pcolor black]
ask patch -1 -4 [ set pcolor black]
ask patch 0 -4 [ set pcolor black]
ask patch 1 -4 [ set pcolor black]
ask patch 2 -4 [ set pcolor black]
ask patch 3 -4 [ set pcolor black]
ask patch 4 -4 [ set pcolor black]
ask patch 5 -4 [ set pcolor black]  
create-agent
end  

to f-orward
ask cow 0 [if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green 
[fd 1]]
end 

to backward
ask cow 0 [if [pcolor] of patch-ahead -1 = white or [pcolor] of patch-ahead 1 = 
green[back 1 ]]
end 

to rot-north
  set heading 0 
end 

to rot-south
    set heading 180
end 

to rot-right
  set heading  90
end 

to rot-left
set heading  270 
end 

to r-ight
ask cow 0[rot-right
if [pcolor] of patch-ahead 1 = white  or [pcolor] of patch-ahead 1 = green [    
f-orward]check]
end 

to l-eft
ask cow 0 [ rot-left
if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green [
    
f-orward]check]
end 

to s-outh
  ask cow 0 [ rot-south
    if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green [
        
      f-orward] check]
end 

to n-orth  
  ask cow 0 [ rot-north
    if [pcolor] of patch-ahead 1 =  white or [pcolor] of patch-ahead 1 = green [
      
      f-orward]check ]
end 

to check
  if xcor = 4 and ycor = 7 [ setxy 7 -7]
   if xcor = 5 and ycor = 7 [ setxy 7 -7]
end 

to check2
  if xcor = 2 and ycor = 1 [ setxy 0 -16]
    if xcor = 2 and ycor = 0 [ setxy 0 -16]
     if xcor = 2 and ycor = -2 [ setxy 0 -16]
      if xcor = 1 and ycor = -2 [ setxy 0 -16]
       if xcor = 0 and ycor = -2 [ setxy 0 -16]
        if xcor = -1 and ycor = -2 [ setxy 0 -16]
         if xcor = -1 and ycor = -2 [ setxy 0 -16]
          if xcor = -1 and ycor = -1 [ setxy 0 -16]
           if xcor = -1 and ycor = 0 [ setxy 0 -16]
            if xcor = -1 and ycor = 1 [ setxy 0 -16]
             if xcor = 0 and ycor = 1 [ setxy 0 -16]
              if xcor = 1 and ycor = 1 [ setxy 0 -16]
end 

to right2
ask cow 0[rot-right
if [pcolor] of patch-ahead 1 = white  or [pcolor] of patch-ahead 1 = green [    
f-orward]check2]
end 

to left2
ask cow 0 [ rot-left
if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green [
    
f-orward]check2]
end 

to south2
  ask cow 0 [ rot-south
    if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green [
        
      f-orward] check2]
end 

to north2  
  ask cow 0 [ rot-north
    if [pcolor] of patch-ahead 1 =  white or [pcolor] of patch-ahead 1 = green [
      
      f-orward]check2]
end 

to check3
 if xcor = 12 and ycor = 14 [ setxy 10 -14]
if xcor = 13 and ycor = 14 [ setxy 10 -14] 
if xcor = 14 and ycor = 14 [ setxy 10 -14]   
end  

to right3
ask cow 0[rot-right
if [pcolor] of patch-ahead 1 = white  or [pcolor] of patch-ahead 1 = green [    
f-orward]check3]
end 

to left3
ask cow 0 [ rot-left
if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green [
    
f-orward]check3]
end 

to south3
  ask cow 0 [ rot-south
    if [pcolor] of patch-ahead 1 = white or [pcolor] of patch-ahead 1 = green [
        
      f-orward] check3]
end 

to north3  
  ask cow 0 [ rot-north
    if [pcolor] of patch-ahead 1 =  white or [pcolor] of patch-ahead 1 = green [
      
      f-orward]check3] 
end 
































There is only one version of this model, created over 10 years ago by eric lujan.

Attached files

File Type Description Last updated
labyrinth.png preview Preview for 'labyrinth' over 10 years ago, by eric lujan Download

This model does not have any ancestors.

This model does not have any descendants.