|
@@ -1,4 +1,8 @@
|
1
|
1
|
# coding: utf-8
|
|
2
|
+import pyglet
|
|
3
|
+from cocos.director import event_loop
|
|
4
|
+from synergine2.terminals import TerminalPackage
|
|
5
|
+
|
2
|
6
|
from opencombat.simulation.event import NewVisibleOpponent
|
3
|
7
|
from opencombat.simulation.event import FireEvent
|
4
|
8
|
from opencombat.simulation.event import DieEvent
|
|
@@ -45,6 +49,15 @@ class CocosTerminal(GameTerminal):
|
45
|
49
|
map_dir_path=self.map_dir_path,
|
46
|
50
|
)
|
47
|
51
|
|
|
52
|
+ @event_loop.event
|
|
53
|
+ def on_window_close(window):
|
|
54
|
+ event_loop.exit()
|
|
55
|
+ self.send(TerminalPackage(sigterm=True))
|
|
56
|
+
|
|
57
|
+ self.core_process.join(timeout=120)
|
|
58
|
+
|
|
59
|
+ return pyglet.event.EVENT_HANDLED
|
|
60
|
+
|
48
|
61
|
# TODO: Defind on some other place ?
|
49
|
62
|
self.gui.subject_mapper_factory.register_mapper(
|
50
|
63
|
ManSubject,
|