public void tick() {
		if (!isLoaded()) return;
		try {
			if (!stream.isBufferFull() || findex > stream.getMinIndex()) {
				workspace.command("go");
				SimFrame last = stream.getLastFrame();
				SimFrame frame = new SimFrame(workspace.world());
				if (last != null) {
					frame.markDeadTurtles(last);
				}
				stream.addFrame(frame);

				String [] names = workspace.plotManager().getPlotNames();
				for (int i = 0; i<names.length; i++) {
					Plot plot = app.getPlot(names[i]);
					if (plot != null) {
						plot.update(workspace.plotManager().getPlot(names[i]));
					}
					//.pens().iterator(): pen.points() x() y()
				}
			}
		} catch (Exception x) {
			x.printStackTrace();
		}
	}