I habe den folgenden Code, wo ich einen neuen Agenten schlüpfen,Wie bekomme ich die ID-Nummer einer neuen Schildkröte, die gerade erstellt wurde?
to t-of-slowdown [ es-poi ]
if we-look > 0 [
set we-look (we-look - 1)
if (we-look <= 0) [
if es-poi and (not any? events-here) [
hatch-events 1 [
set color green
set size 5
set is-poi? true
set new-poi true
let m [[ end2 ] of cur-link] of myself
move-to m ]
set events-x ([who] of events-here)
show events-x
set we-poi-var va-geometric (1/1500) + we-ticks poi
set sera-poi false
]
set impregna true
set color red
set seguir true
set we-look random-normal 120 20 ;time to watch an event
]
]
end
, die in einem Schildkröte Kontext ausgeführt wird (Walker Rasse) A Walker wird durch eine ‚Verbindung‘ (ein weiteres Verfahren, das diese nennt) Bewegen und wenn ein Zähler < 0, ist, generiert dieser Code ein neues Ereignis (Ereigniszucht) und platziert ihn an der gleichen Stelle wie der Walker (cur-link
ist der aktuelle Walker-Link). Danach muss der Wanderer die ID-Nummer der neuen Veranstaltung hier
set events-x ([who] of events-here)
Das Problem bekommen, ist, dass variable events-x
[]
eine leere Liste zu erhalten. Wenn der Walker das nächste Mal am selben Ereignis vorbeikommt, erhält er die Nummer-ID des Ereignisses.
Etwas muss falsch sein, aber ich kann nicht erraten, was es ist. Ich würde mich sehr freuen, wenn jemand einen Blick darauf werfen und mir Hilfe zeigen könnte.
Grüße
Du hast 'move-to', bevor du' -events-x gesetzt hast ([who ... ') - es sieht so aus, als ob deine neue Event-Turtle bereits vor dem Walker auf' m' verschoben wurde eine Chance, nach irgendwelchen Ereignissen auf seinem Patch zu suchen –