ya2 · news · projects · code · about

refactoring of functional tests
[pmachines.git] / lib / engine / enginefacade.py
CommitLineData
8ee66edd
FC
1from math import pi
2
3
4class EngineFacade:
5
6 @property
7 def version(self): return self.logic.version
8
9 @property
10 def curr_path(self): return self.logic.curr_path
11
12 @property
13 def is_appimage(self): return self.logic.is_appimage
14
15 @property
16 def cfg(self): return self.logic.cfg
17
18 @property
19 def is_runtime(self): return self.logic.is_runtime
20
21 @property
22 def languages(self): return self.logic.cfg.lang_cfg.languages
23
24 @property
25 def resolutions(self): return self.gui.resolutions
26
27 @property
28 def closest_resolution(self): return self.gui.closest_resolution
29
30 @property
31 def joystick_mgr(self): return self.event.joystick_mgr
32
33 @property
34 def curr_time(self): return self.clock.time
35
36 def attach_obs(self, obs_meth, sort=10, rename='', args=None):
37 args = args or []
38 return self.event.attach(obs_meth, sort, rename, args)
39
40 def detach_obs(self, obs_meth, lambda_call=None):
41 return self.event.detach(obs_meth, lambda_call)
42 def attach_node(self, name): return self.gfx.root.attach_node(name)
43 def particle(
44 self, parent, texture, color=(1, 1, 1, 1), ampl=pi/6, ray=.5,
45 rate=.0001, gravity=-.85, vel=3.8, part_duration=1.0,
46 autodestroy=None, size=10):
47 return self.gfx.particle(
48 parent, texture, color, ampl, ray, rate, gravity, vel,
49 part_duration, autodestroy, size)
50 def init_gfx(self): return self.gfx.init()
51 def clean_gfx(self): return self.gfx.clean()
52
53 @staticmethod
54 def set_cam_pos(pos): return base.camera.set_pos(pos)
55
56 def load_font(self, fpath, outline=True):
57 return self.eng.font_mgr.load_font(fpath, outline)
58 def open_browser(self, url): return self.gui.open_browser(url)
59
60 def toggle_pause(self, show_frm=True):
61 return self.pause.logic.toggle(show_frm)
62
63 def play(self): return self.audio.play()
64 def set_volume(self, vol): return self.audio.set_volume(vol)
65 def show_cursor(self): return self.gui.cursor.show()
66 def show_standard_cursor(self): return self.gui.cursor.show_standard()
67 def hide_cursor(self): return self.gui.cursor.hide()
68 def hide_standard_cursor(self): return self.gui.cursor.hide_standard()
69 def cursor_top(self): return self.gui.cursor.cursor_top()
70 def set_amb_lgt(self, col): return self.shader_mgr.set_amb_lgt(col)
71
72 def set_dir_lgt(self, col, direction):
73 return self.shader_mgr.set_dir_lgt(col, direction)
74
75 def set_shadow_lgt(self, direction):
76 return self.shader_mgr.set_shadow_lgt(direction)
77
78 def clear_lights(self): return self.shader_mgr.clear_lights()
79 def toggle_shader(self): return self.shader_mgr.toggle_shader()
80
81 def set_resolution(self, res, fullscreen=None):
82 return self.gui.set_resolution(res, fullscreen)
83
84 def toggle_fullscreen(self): return self.gui.toggle_fullscreen()
85 def send(self, msg): return self.lib.send(msg)
86
87 def do_later(self, time, meth, args=None):
88 return self.lib.do_later(time, meth, args)
89
90 def add_task(self, mth, priority=0):
91 return self.lib.add_task(mth, priority)
92
93 def remove_task(self, tsk): return self.lib.remove_task(tsk)
94 def log(self, msg, verbose=False): return self.log_mgr.log(msg, verbose)
95 def log_tasks(self): return self.log_mgr.log_tasks()
96
97 def rm_do_later(self, tsk):
98 self.pause.remove_task(tsk)
99 return self.lib.remove_task(tsk)
100
101 def load_model(self, filename, callback=None, anim=None):
102 return self.gfx.load_model(filename, callback, anim)