Closed mcsakoff closed 12 years ago
Erm, won't time.sleep() block the entire reactor? Unless you have the furnace running in a seperate thread (which is almost pointless with loopingcall) or a process (Which should only be used for cpu intensive stuff), you might want to find another way.
Are you talking about the test case? The point of the test is to block the application for really long time. ;)
I can't believe I'm merging this request. time.sleep() in tests is crazy. The furnace implementation still doesn't actually address the fundamental issue of counting time in seconds instead of ticks. .withCount()'s an improvement, but I'm still not totally sold on it. Worse, there's no documentation as to how the actual implementation works.
The beds and doors are poorly commented and have pretty bad mistakes. Although those mistakes were fixed in subsequent commits, it'd be nice if commits were rebased and cleaned so that I don't have to read through three commits to see that a bug in commit #1 is fixed in commit #3.
The type-based dispatch and non-polymorphic tile handling still sucks. I understand that furnaces are a special case, but not that special.
As discussed on #bravo channel we shall protect the furnace process timer from drifting. I have tested couple of implementations and this one works and looks better than others.