BehaviourComposer: ignore everything before this.
Begin micro-behaviour:
Make fields
(Make fields)
End description
Make fields
Begin NetLogo code:
;; create square fields with values from the chooser
ask patch-at round mouse-xcor round mouse-ycor [
let x mouse-xcor
let y mouse-ycor
let b mouse-xcor + ( round sqrt ( the-chooser-2 * 1000 ) )
let aa count patches with [ pxcor >= x and pxcor <= b and pycor <= y and pycor >= min-pycor and use-of-patch = "farmland" and crop-of-patch = 0 ]
ifelse aa > ( the-chooser-3 * 1000 )
[
ask max-n-of ( the-chooser-3 * 1000 ) patches with [ pxcor >= x and pxcor <= b and pycor <= y and pycor >= min-pycor and use-of-patch = "farmland" and crop-of-patch = 0 ] [ pycor ] [
set pcolor pcolor + 1
set crop-of-patch the-chooser-1 ]
;; construct a task to start digging this field a month before planting date
let c1 the-chooser-1 ;; crop
let c2 the-chooser-2 ;; planting month
;; turn the month chosen into chooser-3 into a number, and subtract 1 to start digging 1 month before planting date chosen
let dd [ "Jan" "feb" "march" "Apr" "Mai" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec" ]
let ccc 0
let counter 0 foreach dd [ set counter counter + 1 if ? = c2 [ set ccc counter - 1 ] ]
let a [ 1 1 1 1 1 1 1 ]
set a replace-item 0 a "dig"
set a replace-item 1 a c1
set a replace-item 2 a "farmland"
set a replace-item 3 a ccc
set a replace-item 4 a 16
set a replace-item 5 a 70
set a replace-item 6 a [ "male" "female" ]
set the-activity-roster fput a the-activity-roster
]
[
ask max-n-of aa patches with [ pxcor >= x and pxcor <= b and pycor <= y and pycor >= min-pycor and use-of-patch = "farmland" and crop-of-patch = 0 ] [ pycor ] [
set pcolor green
set crop-of-patch the-chooser-1 ]
;; construct a task to start digging this field a month before planting date
let c1 the-chooser-1
let c2 the-chooser-2
;; turn the month chosen into chooser-3 into a number, and subtract 1 to start digging 1 month before planting date chosen
let dd [ "Jan" "Feb" "Mar" "Apr" "Mai" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec" ]
let ccc 0
let counter 0 foreach dd [ set counter counter + 1 if ? = c2 [ set ccc counter - 1 ] ]
let a [ 1 1 1 1 1 1 1 ]
set a replace-item 0 a "dig"
set a replace-item 1 a c1
set a replace-item 2 a "farmland"
set a replace-item 3 a ccc
set a replace-item 4 a 16
set a replace-item 5 a 70
set a replace-item 6 a [ "male" "female" ]
set the-activity-roster fput a the-activity-roster
]
]
End NetLogo code
Variants
How this works
Related micro-behaviours
History
BehaviourComposer: ignore everything after this. |