今、例えば step=50 で浸水のために id=7 の出口が閉鎖され、階段内にいるエージェントは新しい近くの出口を探す必要があります。しかし、step=50 時点ですでに階段内(id=4)にいたエージェントは、その後階段から出ても、階段内での速度(例えば0.5)のまま移動を続けてしまいます。 この場合、階段から出たエージェントの速度を元の移動速度に戻すにはどうすればいいでしょうか?model.jsonダウンロード:JSON • 43KB
モデルを拝見したところ、personルールの28行目で
if Universe.map.property[int(self.x), int(self.y), self.layer] == 5:
self.speed = 0.5
if Universe.map.property[int(self.x), int(self.y), self.layer] == 4:
self.speed = 0.5
と記述されていますが、この行の後にspeedを定義すればよいと思います。
if Universe.map.property[int(self.x), int(self.y), self.layer] == 5:
self.speed = 0.5
elif Universe.map.property[int(self.x), int(self.y), self.layer] == 4:
self.speed = 0.5
else:
self.speed = 1.0