@@ -0,0 +1,664 @@
+package net.mostlyoriginal.api.event.dispatcher;%0D%0A%0D%0Aimport net.mostlyoriginal.api.event.common.Event;%0D%0A%0D%0Aimport com.artemis.utils.Bag;%0D%0A%0D%0A/**%0D%0A * Polling event dispatcher.%0D%0A * %0D%0A * @author Namek%0D%0A */%0D%0Apublic class PollingEventDispatcher extends FastEventDispatcher %7B%0D%0A%09private final Bag%3CEvent%3E eventQueue = new Bag%3CEvent%3E();%0D%0A%09%0D%0A%09@Override%0D%0A%09public void process() %7B%0D%0A%09%09Object%5B%5D eventsToDispatch = eventQueue.getData();%0D%0A%09%09%0D%0A%09%09for (int i = 0, s = eventQueue.size(); i %3C s; i++) %7B%0D%0A%09%09%09Event event = (Event) eventsToDispatch%5Bi%5D;%0D%0A%09%09%09super.dispatch(event);%0D%0A%09%09%7D%0D%0A%09%09%0D%0A%09%09eventQueue.clear();%0D%0A%09%7D%0D%0A%09%0D%0A%09public void dispatch(Event event) %7B%0D%0A%09%09eventQueue.add(event);%0D%0A%09%7D%0D%0A%7D%0D%0A

Add PollingEventDispatcher.