1
0
Fork 0
microworlds/actors/slimemold.go

21 lines
376 B
Go
Raw Normal View History

2019-08-03 02:00:33 +00:00
package actors
import (
"git.openprivacy.ca/sarah/microworlds/core"
)
type SlimeMold struct {
SniffDistance int
}
2019-08-03 05:14:56 +00:00
func (sm *SlimeMold) Setup(env *core.Environment, t *core.Turtle) {
2019-08-03 02:00:33 +00:00
// Do nothing
}
2019-08-03 05:14:56 +00:00
func (sm *SlimeMold) Run(env *core.Environment, t *core.Turtle) {
2019-08-03 02:00:33 +00:00
t.Wiggle()
t.FollowGradient(env, sm.SniffDistance, 2, "trail")
2019-08-03 02:00:33 +00:00
t.Step(env)
t.Drop(env, 1, "trail")
2019-08-03 02:00:33 +00:00
}