2016-07-31 19 views
2

ich meine SchildkrötenWie Schildkröte bekommen Patch warten für 10 Ticks

1) Halten Sie für zehn Zecken mögen würde, wenn die Schildkröte rot und kommt über einen roten Fleck 2) Nach zehn Ticks würde ich gerne die Schildkröte, um auf der Suche-nach-Essen-Subroutine weiterzumachen, die ich bereits habe.

+0

Bitte fügen Sie, was Sie bisher versucht haben, und dann können die Menschen helfen, herauszufinden, warum Sie nicht erreicht haben, was Sie versuchen zu tun. – kaveh

Antwort

1

Ein einfacher Weg, dies zu erreichen, ist eine Art Zähler zu verwenden. Hier ist ein vollständiges Beispiel:

turtles-own [ counter ] 

to setup 
    clear-all 
    create-turtles 100 [ 
    set counter 0 
    setxy random-xcor random-ycor 
    ] 
    ask n-of 25 turtles [ set color red ] 
    ask n-of 100 patches [ set pcolor red ] 
    reset-ticks 
end 

to go 
    ask turtles [ 
    ifelse counter = 0 [ 
     look-for-food 
     if color = red and pcolor = red [ 
     set counter 10 
     ] 
    ] [ 
     set counter counter - 1 
     set label counter ; just to show what's going on 
    ] 
    ] 
    tick 
end 

to look-for-food 
    ; your own look-for-food procedure is presumably different 
    right random 20 
    left random 20 
    forward 1 
end 
+0

Warum der Downvote? Gibt es da etwas, das nicht funktioniert? Angesichts der Tatsache, dass die ursprüngliche Frage ziemlich vage war, halte ich das als allgemeinen Rahmen für eine Lösung ziemlich gut. –

+0

Nein, es sieht gut aus für mich. –