mima-engine 0.2.3__py3-none-any.whl → 0.2.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mima-engine might be problematic. Click here for more details.
- mima/__init__.py +1 -1
- mima/backend/pygame_events.py +210 -194
- mima/backend/touch_control_scheme_a.py +126 -0
- mima/backend/touch_control_scheme_b.py +132 -0
- mima/core/collision.py +46 -23
- mima/core/engine.py +25 -13
- mima/core/mode_engine.py +7 -2
- mima/objects/creature.py +6 -0
- mima/objects/effects/debug_box.py +11 -2
- mima/objects/world/container.py +1 -1
- mima/objects/world/oneway.py +34 -8
- mima/objects/world/pickup.py +8 -2
- mima/objects/world/switch.py +20 -4
- mima/scripts/commands/oneway_move.py +4 -3
- mima/util/constants.py +3 -3
- mima/util/input_defaults.py +12 -0
- mima/view/mima_mode.py +60 -19
- mima/view/mima_scene.py +6 -0
- mima/view/mima_window.py +91 -0
- {mima_engine-0.2.3.dist-info → mima_engine-0.2.4.dist-info}/METADATA +2 -2
- {mima_engine-0.2.3.dist-info → mima_engine-0.2.4.dist-info}/RECORD +23 -21
- {mima_engine-0.2.3.dist-info → mima_engine-0.2.4.dist-info}/WHEEL +1 -1
- {mima_engine-0.2.3.dist-info → mima_engine-0.2.4.dist-info}/top_level.txt +0 -0
mima/util/input_defaults.py
CHANGED
|
@@ -156,3 +156,15 @@ DEFAULT_TOUCHSCREEN_MAP = {
|
|
|
156
156
|
K.P1_B: [[0.5, 0.5], [0.75, 1.0]],
|
|
157
157
|
K.P1_A: [[0.75, 0.5], [1.0, 1.0]],
|
|
158
158
|
}
|
|
159
|
+
|
|
160
|
+
ALT_TOUCHSCREEN_MAP = {
|
|
161
|
+
K.P1_UP: {"pos": [0.1, 0.2], "size": [0.4, 0.7]},
|
|
162
|
+
K.P1_A: {"pos": [0.83, 0.84], "size": [0.12, 0.12]},
|
|
163
|
+
K.P1_B: {"pos": [0.70, 0.84], "size": [0.12, 0.12]},
|
|
164
|
+
K.P1_X: {"pos": [0.76, 0.69], "size": [0.12, 0.12]},
|
|
165
|
+
K.P1_Y: {"pos": [0.63, 0.69], "size": [0.12, 0.12]},
|
|
166
|
+
K.P1_START: {"pos": [0.39, 0.02], "size": [0.1, 0.1]},
|
|
167
|
+
K.P1_SELECT: {"pos": [0.51, 0.02], "size": [0.1, 0.1]},
|
|
168
|
+
K.P1_L: {"pos": [0.01, 0.3], "size": [0.05, 0.4]},
|
|
169
|
+
K.P1_R: {"pos": [0.94, 0.3], "size": [0.05, 0.4]},
|
|
170
|
+
}
|
mima/view/mima_mode.py
CHANGED
|
@@ -90,7 +90,9 @@ class MimaMode(MimaView):
|
|
|
90
90
|
def get_camera_name(self, player: Player = Player.P1):
|
|
91
91
|
return self.scenes[player].camera.name
|
|
92
92
|
|
|
93
|
-
def unload_map(
|
|
93
|
+
def unload_map(
|
|
94
|
+
self, player: Player = Player.P1, player_only: bool = False
|
|
95
|
+
) -> None:
|
|
94
96
|
p_obj = self.engine.memory.player[player]
|
|
95
97
|
map_name = p_obj.tilemap.name
|
|
96
98
|
|
|
@@ -139,12 +141,15 @@ class MimaMode(MimaView):
|
|
|
139
141
|
) -> None:
|
|
140
142
|
p_obj = self.engine.get_player(player)
|
|
141
143
|
p_obj.stop_shining()
|
|
144
|
+
p_obj.on_exit_map()
|
|
142
145
|
|
|
143
146
|
if map_name not in self.players_on_map:
|
|
144
147
|
# Map not loaded
|
|
145
148
|
self.prepare_object_lists(map_name, player, p_obj)
|
|
146
149
|
|
|
147
|
-
self._loader.populate_dynamics(
|
|
150
|
+
self._loader.populate_dynamics(
|
|
151
|
+
self.maps[player], self.dynamics[map_name]
|
|
152
|
+
)
|
|
148
153
|
|
|
149
154
|
for quest in self.engine.memory.quests:
|
|
150
155
|
quest.populate_dynamics(self.dynamics[map_name], map_name)
|
|
@@ -161,6 +166,7 @@ class MimaMode(MimaView):
|
|
|
161
166
|
p_obj.tilemap = self.maps[player]
|
|
162
167
|
p_obj.px = px
|
|
163
168
|
p_obj.py = py
|
|
169
|
+
p_obj.on_enter_map()
|
|
164
170
|
self.engine.memory.last_spawn_px[player] = px
|
|
165
171
|
self.engine.memory.last_spawn_py[player] = py
|
|
166
172
|
|
|
@@ -185,7 +191,9 @@ class MimaMode(MimaView):
|
|
|
185
191
|
chunks_per_row,
|
|
186
192
|
)
|
|
187
193
|
if self.engine.draw_chunk_info:
|
|
188
|
-
self.add_effect(
|
|
194
|
+
self.add_effect(
|
|
195
|
+
DynamicDebugBox(obj, n_frames=-1), map_name
|
|
196
|
+
)
|
|
189
197
|
|
|
190
198
|
def handle_user_input(self):
|
|
191
199
|
for player, scene in self.scenes.items():
|
|
@@ -215,7 +223,9 @@ class MimaMode(MimaView):
|
|
|
215
223
|
else:
|
|
216
224
|
msg += f"object {obj.name} ({obj.dyn_id})"
|
|
217
225
|
else:
|
|
218
|
-
msg =
|
|
226
|
+
msg = (
|
|
227
|
+
"Trying to interact with a quest that is None"
|
|
228
|
+
)
|
|
219
229
|
|
|
220
230
|
LOG.exception(msg)
|
|
221
231
|
raise
|
|
@@ -290,7 +300,9 @@ class MimaMode(MimaView):
|
|
|
290
300
|
tilemap.width + self.chunk_size // 2,
|
|
291
301
|
self.chunk_size,
|
|
292
302
|
):
|
|
293
|
-
chidx = _chunk_index(
|
|
303
|
+
chidx = _chunk_index(
|
|
304
|
+
px, py, self.chunk_size, chunks_per_row
|
|
305
|
+
)
|
|
294
306
|
# collision_lists[map_name][chidx] = []
|
|
295
307
|
self.add_effect(
|
|
296
308
|
StaticDebugBox(
|
|
@@ -333,7 +345,9 @@ class MimaMode(MimaView):
|
|
|
333
345
|
# return collision_lists
|
|
334
346
|
|
|
335
347
|
def _determine_target(self, obj, players) -> Dynamic:
|
|
336
|
-
players = [
|
|
348
|
+
players = [
|
|
349
|
+
p for p in players if not self.engine.get_player(p).occupied
|
|
350
|
+
]
|
|
337
351
|
if not players:
|
|
338
352
|
return None
|
|
339
353
|
dists = [
|
|
@@ -354,7 +368,10 @@ class MimaMode(MimaView):
|
|
|
354
368
|
return target # , skip
|
|
355
369
|
|
|
356
370
|
def _update_velocity_z(self, obj: Dynamic, elapsed_time: float) -> None:
|
|
357
|
-
obj.
|
|
371
|
+
if obj.pz > 0.0:
|
|
372
|
+
obj.vz -= obj.attributes.gravity_vz * elapsed_time
|
|
373
|
+
# else:
|
|
374
|
+
# obj.vz = 0.0
|
|
358
375
|
|
|
359
376
|
def _update_position_z(self, obj: Dynamic, elapsed_time: float) -> None:
|
|
360
377
|
if obj.gravity:
|
|
@@ -364,11 +381,16 @@ class MimaMode(MimaView):
|
|
|
364
381
|
obj.vz = 0.0
|
|
365
382
|
|
|
366
383
|
def handle_collisions(self, elapsed_time: float) -> None:
|
|
367
|
-
screen_width =
|
|
368
|
-
|
|
384
|
+
screen_width = (
|
|
385
|
+
self.engine.backend.render_width // self.engine.rtc.tile_width
|
|
386
|
+
)
|
|
387
|
+
screen_height = (
|
|
388
|
+
self.engine.backend.render_height // self.engine.rtc.tile_height
|
|
389
|
+
)
|
|
369
390
|
max_dist = screen_width + screen_height
|
|
370
391
|
|
|
371
392
|
for map_name, players in self.players_on_map.items():
|
|
393
|
+
# print(f"Collisions for {map_name}: {self.colliders[map_name]}")
|
|
372
394
|
for obj in self.colliders[map_name]:
|
|
373
395
|
if obj.occupied:
|
|
374
396
|
continue
|
|
@@ -407,13 +429,19 @@ class MimaMode(MimaView):
|
|
|
407
429
|
self.engine.memory.quests,
|
|
408
430
|
]
|
|
409
431
|
if self._probe_p2p_collision(obj, other):
|
|
410
|
-
new2_px, new2_py =
|
|
432
|
+
new2_px, new2_py = (
|
|
433
|
+
check_object_to_object_collision(*args)
|
|
434
|
+
)
|
|
411
435
|
|
|
412
436
|
if new2_px == new_px and new2_py == new_py:
|
|
413
437
|
# No change = no collision
|
|
414
|
-
self.engine.trigger_player_collision(
|
|
438
|
+
self.engine.trigger_player_collision(
|
|
439
|
+
True, obj.player
|
|
440
|
+
)
|
|
415
441
|
else:
|
|
416
|
-
new_px, new_py = check_object_to_object_collision(
|
|
442
|
+
new_px, new_py = check_object_to_object_collision(
|
|
443
|
+
*args
|
|
444
|
+
)
|
|
417
445
|
obj.px = new_px
|
|
418
446
|
obj.py = new_py
|
|
419
447
|
|
|
@@ -435,17 +463,23 @@ class MimaMode(MimaView):
|
|
|
435
463
|
vx, vy = vx * 0.707, vy * 0.707
|
|
436
464
|
|
|
437
465
|
obj.real_vx = (
|
|
438
|
-
vx
|
|
466
|
+
vx
|
|
467
|
+
if vx == obj.real_vx
|
|
468
|
+
else calculate(obj, vx, obj.real_vx, elapsed_time)
|
|
439
469
|
)
|
|
440
470
|
obj.real_vy = (
|
|
441
|
-
vy
|
|
471
|
+
vy
|
|
472
|
+
if vy == obj.real_vy
|
|
473
|
+
else calculate(obj, vy, obj.real_vy, elapsed_time)
|
|
442
474
|
)
|
|
443
475
|
|
|
444
476
|
new_px = (
|
|
445
|
-
obj.px
|
|
477
|
+
obj.px
|
|
478
|
+
+ obj.real_vx * obj.speed * obj.attributes.speed_mod * elapsed_time
|
|
446
479
|
)
|
|
447
480
|
new_py = (
|
|
448
|
-
obj.py
|
|
481
|
+
obj.py
|
|
482
|
+
+ obj.real_vy * obj.speed * obj.attributes.speed_mod * elapsed_time
|
|
449
483
|
)
|
|
450
484
|
|
|
451
485
|
return new_px, new_py
|
|
@@ -475,7 +509,9 @@ class MimaMode(MimaView):
|
|
|
475
509
|
for map_name in self.players_on_map:
|
|
476
510
|
for effect in self.effects[map_name]:
|
|
477
511
|
effect.update(elapsed_time)
|
|
478
|
-
effect.px, effect.py = self.update_position(
|
|
512
|
+
effect.px, effect.py = self.update_position(
|
|
513
|
+
effect, elapsed_time
|
|
514
|
+
)
|
|
479
515
|
|
|
480
516
|
def update_scenes(self, elapsed_time: float) -> None:
|
|
481
517
|
for player, scene in self.scenes.items():
|
|
@@ -494,12 +530,17 @@ class MimaMode(MimaView):
|
|
|
494
530
|
|
|
495
531
|
def add_dynamic(self, dynamic: Dynamic, map_name: str):
|
|
496
532
|
self.dynamics[map_name].append(dynamic)
|
|
497
|
-
if
|
|
533
|
+
if (
|
|
534
|
+
map_name in self.collision_targets
|
|
535
|
+
and not dynamic.moves_on_collision
|
|
536
|
+
):
|
|
498
537
|
dynamic.chunks = add_to_collision_chunk(
|
|
499
538
|
self.collision_targets[map_name],
|
|
500
539
|
dynamic,
|
|
501
540
|
self.chunk_size,
|
|
502
|
-
_chunks_per_row(
|
|
541
|
+
_chunks_per_row(
|
|
542
|
+
self.chunk_size, self.engine.get_map(map_name).width
|
|
543
|
+
),
|
|
503
544
|
)
|
|
504
545
|
|
|
505
546
|
def add_projectile(self, projectile: Projectile, map_name: str):
|
mima/view/mima_scene.py
CHANGED
|
@@ -39,8 +39,10 @@ class MimaScene(MimaView):
|
|
|
39
39
|
self._camera_name: str = (
|
|
40
40
|
camera_name if camera_name is not None else f"C_{player.name}"
|
|
41
41
|
)
|
|
42
|
+
self._controls_camera_name: str = f"{self._camera_name}_CONTROLS"
|
|
42
43
|
|
|
43
44
|
self.camera: Camera
|
|
45
|
+
self.controls_camera: Camera
|
|
44
46
|
self._dialog_px: float
|
|
45
47
|
self._dialog_py: float
|
|
46
48
|
self._dialog_width: float = DIALOG_WIDTH
|
|
@@ -85,6 +87,9 @@ class MimaScene(MimaView):
|
|
|
85
87
|
self._dialog_py = height - 4
|
|
86
88
|
|
|
87
89
|
self.camera = Camera(self._camera_name, width, height)
|
|
90
|
+
# self.controls_camera = Camera(
|
|
91
|
+
# self._controls_camera_name, width, height
|
|
92
|
+
# )
|
|
88
93
|
if position == Position.CENTER:
|
|
89
94
|
# print(f"Camera setup finished: {width}, {height}")
|
|
90
95
|
return
|
|
@@ -181,6 +186,7 @@ class MimaScene(MimaView):
|
|
|
181
186
|
self.skip_draw_ui = False
|
|
182
187
|
return
|
|
183
188
|
self._current_window.draw_ui()
|
|
189
|
+
self._current_window.draw_controls()
|
|
184
190
|
|
|
185
191
|
def draw_camera_border(self):
|
|
186
192
|
self.camera.draw_borders()
|
mima/view/mima_window.py
CHANGED
|
@@ -6,6 +6,8 @@ from ..types.direction import Direction
|
|
|
6
6
|
from ..types.keys import Key as K
|
|
7
7
|
from ..types.player import Player
|
|
8
8
|
from ..types.window import Window
|
|
9
|
+
from ..util.colors import TRANS_CYAN, TRANS_LIGHT_RED
|
|
10
|
+
from ..util.constants import BIG_FONT_HEIGHT, BIG_FONT_WIDTH
|
|
9
11
|
from ..util.functions import wrap_text
|
|
10
12
|
from .mima_view import MimaView
|
|
11
13
|
|
|
@@ -92,6 +94,16 @@ class MimaWindow(MimaView):
|
|
|
92
94
|
obj.draw_self(
|
|
93
95
|
self.camera.ox, self.camera.oy, self.camera.name
|
|
94
96
|
)
|
|
97
|
+
if self.engine.draw_dyn_ids:
|
|
98
|
+
self.engine.backend.draw_small_text(
|
|
99
|
+
f"{obj.dyn_id}",
|
|
100
|
+
(obj.px - self.camera.ox)
|
|
101
|
+
* self.engine.rtc.tile_width,
|
|
102
|
+
(obj.py - self.camera.oy) * obj.sprite.height
|
|
103
|
+
+ obj.sprite.height,
|
|
104
|
+
self.engine.rtc.color_red,
|
|
105
|
+
self.camera.name,
|
|
106
|
+
)
|
|
95
107
|
|
|
96
108
|
def draw_effect_layers(
|
|
97
109
|
self, effects: List[Dynamic], layers: List[int]
|
|
@@ -116,6 +128,85 @@ class MimaWindow(MimaView):
|
|
|
116
128
|
def draw_ui(self) -> None:
|
|
117
129
|
pass
|
|
118
130
|
|
|
131
|
+
def draw_controls(self) -> None:
|
|
132
|
+
if not self.engine.show_touch_controls:
|
|
133
|
+
return
|
|
134
|
+
|
|
135
|
+
state = self.engine.keys.get_touch_state()
|
|
136
|
+
if not state:
|
|
137
|
+
return
|
|
138
|
+
|
|
139
|
+
data_move = state[K.UP]
|
|
140
|
+
if data_move["active"]:
|
|
141
|
+
radius = self.engine.rtc.tile_width
|
|
142
|
+
self.engine.backend.draw_circle(
|
|
143
|
+
int(data_move["rsx"] * self.camera.pwidth),
|
|
144
|
+
int(data_move["rsy"] * self.camera.pheight),
|
|
145
|
+
radius,
|
|
146
|
+
TRANS_LIGHT_RED,
|
|
147
|
+
self.camera.name,
|
|
148
|
+
draw_to_ui=True,
|
|
149
|
+
)
|
|
150
|
+
self.engine.backend.fill_circle(
|
|
151
|
+
int(data_move["rpx"] * self.camera.pwidth),
|
|
152
|
+
int(data_move["rpy"] * self.camera.pheight),
|
|
153
|
+
radius,
|
|
154
|
+
TRANS_LIGHT_RED,
|
|
155
|
+
self.camera.name,
|
|
156
|
+
draw_to_ui=True,
|
|
157
|
+
)
|
|
158
|
+
|
|
159
|
+
for idx in range(4, 12):
|
|
160
|
+
key = K(idx)
|
|
161
|
+
data = state.get(key, {})
|
|
162
|
+
if not data:
|
|
163
|
+
continue
|
|
164
|
+
# print(data_a)
|
|
165
|
+
|
|
166
|
+
ppx = int(data["rpx"] * self.camera.pwidth)
|
|
167
|
+
ppy = int(data["rpy"] * self.camera.pheight)
|
|
168
|
+
pwidth = int(data["rwidth"] * self.camera.pwidth)
|
|
169
|
+
pheight = int(data["rheight"] * self.camera.pheight)
|
|
170
|
+
if data["active"]:
|
|
171
|
+
self.engine.backend.fill_rect(
|
|
172
|
+
ppx,
|
|
173
|
+
ppy,
|
|
174
|
+
pwidth,
|
|
175
|
+
pheight,
|
|
176
|
+
TRANS_LIGHT_RED,
|
|
177
|
+
self.camera.name,
|
|
178
|
+
draw_to_ui=True,
|
|
179
|
+
)
|
|
180
|
+
else:
|
|
181
|
+
self.engine.backend.draw_rect(
|
|
182
|
+
ppx,
|
|
183
|
+
ppy,
|
|
184
|
+
pwidth,
|
|
185
|
+
pheight,
|
|
186
|
+
TRANS_LIGHT_RED,
|
|
187
|
+
self.camera.name,
|
|
188
|
+
draw_to_ui=True,
|
|
189
|
+
)
|
|
190
|
+
text = key.name
|
|
191
|
+
text_width = len(text) * BIG_FONT_WIDTH
|
|
192
|
+
self.engine.backend.draw_big_text(
|
|
193
|
+
text,
|
|
194
|
+
int(ppx + pwidth / 2 - text_width / 2),
|
|
195
|
+
int(ppy + pheight / 2 - BIG_FONT_HEIGHT / 2),
|
|
196
|
+
TRANS_LIGHT_RED,
|
|
197
|
+
self.camera.name,
|
|
198
|
+
draw_to_ui=True,
|
|
199
|
+
)
|
|
200
|
+
|
|
201
|
+
# self.engine.backend.fill_circle(
|
|
202
|
+
# int(data_a["px"] * self.camera.pwidth),
|
|
203
|
+
# int(data_a["py"] * self.camera.pheight),
|
|
204
|
+
# int(data_a["width"] * self.camera.pwidth / 2),
|
|
205
|
+
# color,
|
|
206
|
+
# self.camera.name,
|
|
207
|
+
# draw_to_ui=True,
|
|
208
|
+
# )
|
|
209
|
+
|
|
119
210
|
def set_camera(self, camera: Camera):
|
|
120
211
|
self.camera = camera
|
|
121
212
|
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
mima/__init__.py,sha256=
|
|
1
|
+
mima/__init__.py,sha256=On5KCpZrZvHIrKef6xic2bILyeRhNozoRoEvC1MvHEs,104
|
|
2
2
|
mima/backend/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
3
3
|
mima/backend/pygame_assets.py,sha256=DoeebQlRqzTtuu_AsZ0kauqGzly0JtrOi66W1WTzUhk,14106
|
|
4
4
|
mima/backend/pygame_audio.py,sha256=gag9bM-UT8DfYpGDYvKBn8jdnwgFU4NklEs2aNwHhRY,2365
|
|
5
5
|
mima/backend/pygame_backend.py,sha256=O7cdu-HPY4W1dWosJtxv_j3bGlqVIc93AhVkTr68GR4,18552
|
|
6
6
|
mima/backend/pygame_camera.py,sha256=5ietEyhDryT3SBChvcY_jdsWRi09gcTg5O5mvg_15mM,2059
|
|
7
|
-
mima/backend/pygame_events.py,sha256=
|
|
7
|
+
mima/backend/pygame_events.py,sha256=dLn3T2cw-RWIcKAUjcQRh0-ZgY43Ps3Y47ZfxCpw4B0,27669
|
|
8
|
+
mima/backend/touch_control_scheme_a.py,sha256=lI8xCVH-KDuLwoH4Vq-0JuQm1cDI3I2g1rkoR5lY8DY,4745
|
|
9
|
+
mima/backend/touch_control_scheme_b.py,sha256=L_WiwGFTjCtL_YcL8SH2bToHe-RiXoqAj6VrpgAKOb0,5294
|
|
8
10
|
mima/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
-
mima/core/collision.py,sha256=
|
|
11
|
+
mima/core/collision.py,sha256=CMItVHkjt6Bl8rr7Wnwa_QkynMNVTpDmJEF8dZzJSJk,9897
|
|
10
12
|
mima/core/database.py,sha256=lo_LlhONPwZxuW8fdm_Oeg8Ofe4Qr8pwbAeYx477HxM,2007
|
|
11
|
-
mima/core/engine.py,sha256=
|
|
12
|
-
mima/core/mode_engine.py,sha256=
|
|
13
|
+
mima/core/engine.py,sha256=00o2SMHnXKAc6RR7bgm4TJcV8WhYwA4lr46j46-ncLs,11290
|
|
14
|
+
mima/core/mode_engine.py,sha256=4dSjLRxjaoj3wP1k13X3-YqT2PbmXZ1fBwzmVHYt2Eg,2305
|
|
13
15
|
mima/core/scene_engine.py,sha256=8P_ZuXwPHZFthgHmVtWkIgaXHedeu0eyRdf2P8ACLRA,2586
|
|
14
16
|
mima/maps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
17
|
mima/maps/template.py,sha256=0IDxo-g0ZTbCwhIIZadMG5rFvPLNJnm137mz4GVGlw0,2463
|
|
@@ -33,14 +35,14 @@ mima/objects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
33
35
|
mima/objects/animated_sprite.py,sha256=xeg89mZxx2_PpKX_dq1ySkfeZlEbxVymbX2Kf_yOHSw,7210
|
|
34
36
|
mima/objects/attribute_effect.py,sha256=zikOSb6-hD6Ecm4L9EyRocTyJQ7IYC0CJ9DCBxbK4cU,650
|
|
35
37
|
mima/objects/attributes.py,sha256=qqIVjuIXUQDv3qtdoaRDvBnx5oUbjuPdvcGR49fHRwM,3781
|
|
36
|
-
mima/objects/creature.py,sha256=
|
|
38
|
+
mima/objects/creature.py,sha256=ZXBSmGStk7FepSmUzwFl2sonIhAJaIPT-htKH5WeJkw,12773
|
|
37
39
|
mima/objects/dynamic.py,sha256=yDh8wjX_FViUWF0lqiLH0q3iuLMaE1qAd4uu6DHB7D4,6434
|
|
38
40
|
mima/objects/loader.py,sha256=GAdXsS5dINwNuHq88nCTHqrorg-BC5Fw8wgDtcMpnoA,4394
|
|
39
41
|
mima/objects/projectile.py,sha256=50aoKz8F8NH0Z5wSSsSm2RhsgbGWQd4PFMTf0Ku-0z4,3214
|
|
40
42
|
mima/objects/sprite.py,sha256=yQ_fFzqchlMYvbmQ8EKoxMrj4Cqq0wLyVAeSuP7GV4M,3959
|
|
41
43
|
mima/objects/effects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
42
44
|
mima/objects/effects/colorize_screen.py,sha256=k-rt6xRmg3eW_vmmKbhII55-wlVUjlxNVfi4IZpkGaM,1834
|
|
43
|
-
mima/objects/effects/debug_box.py,sha256=
|
|
45
|
+
mima/objects/effects/debug_box.py,sha256=LkkhgT7hnhQVeDMZcnH8xt7gCabvjKfv3sH_ezeSe7k,4216
|
|
44
46
|
mima/objects/effects/light.py,sha256=w0XsxChQYE4YBJ2o0supakwP7Xove7dOod3u5MBEDvA,3131
|
|
45
47
|
mima/objects/effects/show_sprite.py,sha256=kPACkdOn6R6r-ov9QFWvfZd9vJksNcFrKa2Sg_KU8dQ,1216
|
|
46
48
|
mima/objects/effects/walking_on_grass.py,sha256=9qo3Qtv4Ra1kdus4OE48JWEy9Tk-91e1Ti6zKDSa3Ks,2057
|
|
@@ -48,15 +50,15 @@ mima/objects/effects/walking_on_water.py,sha256=K2EdzzTfnO2fNEBC7Hr8esY5nirZvHkw
|
|
|
48
50
|
mima/objects/world/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
49
51
|
mima/objects/world/color_gate.py,sha256=1VZsQ6M8dPgtuE94yb-HBuAd6g_ZRvkH3F3Qjq7T8Rc,2013
|
|
50
52
|
mima/objects/world/color_switch.py,sha256=3Iw4GPKcT2sxO2oIrmZmroAFZLYx0vU8dMDtIswrW10,3121
|
|
51
|
-
mima/objects/world/container.py,sha256=
|
|
53
|
+
mima/objects/world/container.py,sha256=_VGknwotxMflTOdKMUmMFHJ079utKeD0QgWmxhZJ5Zg,6000
|
|
52
54
|
mima/objects/world/floor_switch.py,sha256=Xnm8BOFiEnBmj_h68ZtZcUpeD0Lsl3jHVS9njCsiAus,3285
|
|
53
55
|
mima/objects/world/gate.py,sha256=aaxkTLdfLGrWroWGyjj6cn4QI29ze_to9UKxyNArjY4,5679
|
|
54
56
|
mima/objects/world/light_source.py,sha256=LQ-m8YqLUu7Wb9oZeb-ClrxWbSdr36LQ1fZesLu_5eI,3746
|
|
55
57
|
mima/objects/world/logic_gate.py,sha256=5f3gkU0TJ6y8nnz88bzD3-feDa4gPsCprOT86ZXsKN8,4863
|
|
56
58
|
mima/objects/world/movable.py,sha256=IdB0QSCaivs36YeDrJwsDIgL2rXaY_YL7IPDl5wNfH8,12578
|
|
57
|
-
mima/objects/world/oneway.py,sha256=
|
|
58
|
-
mima/objects/world/pickup.py,sha256=
|
|
59
|
-
mima/objects/world/switch.py,sha256=
|
|
59
|
+
mima/objects/world/oneway.py,sha256=vNvqgyRX4TbpPBQ_PPrOVdMir5vPonIMikjdUGzc40Y,6412
|
|
60
|
+
mima/objects/world/pickup.py,sha256=6qbPvT79H4bBKqEB88xm-ifp0PRa6XoeC5RwmkbJvRE,4859
|
|
61
|
+
mima/objects/world/switch.py,sha256=PMcAwJ772T8AbHWReVfGnIgTUIBrFiHhobooZQTP7So,6162
|
|
60
62
|
mima/objects/world/teleport.py,sha256=2HqMkaU6V01AcsfEY_YG-wNrc8iRnsaQyNI-SNXVK4M,10584
|
|
61
63
|
mima/scripts/__init__.py,sha256=yLRT6igjwtSkOFbd0x8PXXFZVt1_xUIuCHhWhywHRuE,75
|
|
62
64
|
mima/scripts/command.py,sha256=rLjUbmvmpHqhaznt9TWkifY5IKtO-AdAGkzKnoKqAGg,881
|
|
@@ -70,7 +72,7 @@ mima/scripts/commands/give_item.py,sha256=yc6iRTy40TvdEqU6u3q4Bh0JAlHzoFs0ul9Lwt
|
|
|
70
72
|
mima/scripts/commands/give_resource.py,sha256=J9c0hk__DY4To1BStZ5qmcEOMbAYRefNJT8Kk5WyORE,1805
|
|
71
73
|
mima/scripts/commands/move_map.py,sha256=NY0LDex2_lcXz-6HR58eTYC4VQkiOvywxUQ5IdSY0iw,4907
|
|
72
74
|
mima/scripts/commands/move_to.py,sha256=FE2efowCpMp5QgDBvIlGju4T0xfa9N1UwjaE2yh3v4Q,1420
|
|
73
|
-
mima/scripts/commands/oneway_move.py,sha256=
|
|
75
|
+
mima/scripts/commands/oneway_move.py,sha256=UeSnwFgwFHr3qK2d6Pb-ZS_TEFGinZIdly76_Hg-Ap0,1745
|
|
74
76
|
mima/scripts/commands/parallel.py,sha256=YFDDv6Lgc6uKvr_53II6YUznnlnW8JNhmlWK5FMwDSw,1780
|
|
75
77
|
mima/scripts/commands/play_sound.py,sha256=m4wqWC6O8TUsJIcYrP8bb8ZFjSNK3IpAyBdxLo-e8zo,348
|
|
76
78
|
mima/scripts/commands/present_item.py,sha256=HfSCncURe6HIc2-omA7xvFbon58wmRaKEwVukZ1FlhM,1865
|
|
@@ -111,20 +113,20 @@ mima/usables/item.py,sha256=3ZM1gR6Ve-5PgBC8QuXU26rKIe9KXbKp_VCouvi-vUY,1443
|
|
|
111
113
|
mima/usables/weapon.py,sha256=YzahQ_B9PT2rgd6NjBJY2ISVAE3XO7PPpE2gZumv3q4,2033
|
|
112
114
|
mima/util/__init__.py,sha256=KMuEDnRsGr32gXED12ZyL1za6iKAuk_Tn8S3mTtpYds,42
|
|
113
115
|
mima/util/colors.py,sha256=u4YVTCvSNFBhHaR9dFiMVzvE9fRM1UlW1m8gDa7oDY4,1483
|
|
114
|
-
mima/util/constants.py,sha256=
|
|
116
|
+
mima/util/constants.py,sha256=n3zRWTICePM20OyxzcKeDE1DxP6pGq_BhlKao36MX9Q,1353
|
|
115
117
|
mima/util/functions.py,sha256=GqAgT4-ATZcCvaaUyEOCeXphUu8xJXmVshAbFPJfOWI,1130
|
|
116
|
-
mima/util/input_defaults.py,sha256=
|
|
118
|
+
mima/util/input_defaults.py,sha256=dIfcp9nQSVcO3U4tCB0R5cXwcKUQ7rpztnB1Feud1e4,3179
|
|
117
119
|
mima/util/logging.py,sha256=p6-C1ozlCs_sCkmykh_B0NgZtvSkcZXXseE6qA6Zwew,1197
|
|
118
120
|
mima/util/property.py,sha256=o6dEWpIOWxwS_lf6MvYZSjkyI5Amo56P2JIDa7AMaRY,107
|
|
119
121
|
mima/util/runtime_config.py,sha256=MyRA1xHS6O5HdISUEhKFmIPQHPz26vtaBnKdqa_ISDc,9369
|
|
120
122
|
mima/util/trading_item.py,sha256=mToWWNyZKbWVTbeefUUX8kGEPyvJ9-YJQBCjlWlPLLY,466
|
|
121
123
|
mima/view/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
122
124
|
mima/view/camera.py,sha256=IZQJF7NxrQ265TRgPnlmSVcNwgsJ3I1ek40u7PQG20g,6260
|
|
123
|
-
mima/view/mima_mode.py,sha256=
|
|
124
|
-
mima/view/mima_scene.py,sha256=
|
|
125
|
+
mima/view/mima_mode.py,sha256=W92hAKBvvC_yM_6SpXZmpY8WHKiYgqYuULlxGeMbipA,22189
|
|
126
|
+
mima/view/mima_scene.py,sha256=0dDeuObUfgtWhaZRbiKLpTukhJ-74TU4gm111VF9FHQ,7253
|
|
125
127
|
mima/view/mima_view.py,sha256=tKLcoNWVwldoqgG3jxhI_jMsFAXzod2csXyEbhub2xI,217
|
|
126
|
-
mima/view/mima_window.py,sha256=
|
|
127
|
-
mima_engine-0.2.
|
|
128
|
-
mima_engine-0.2.
|
|
129
|
-
mima_engine-0.2.
|
|
130
|
-
mima_engine-0.2.
|
|
128
|
+
mima/view/mima_window.py,sha256=tUdMDBZoB2zV66NhVuOb7pvQjehg_zPQtmdN9M8PIcc,8105
|
|
129
|
+
mima_engine-0.2.4.dist-info/METADATA,sha256=JFCicOEm9npW4U02-hMM9EUWpiyIFd3CysgYL9gxjQs,487
|
|
130
|
+
mima_engine-0.2.4.dist-info/WHEEL,sha256=wXxTzcEDnjrTwFYjLPcsW_7_XihufBwmpiBeiXNBGEA,91
|
|
131
|
+
mima_engine-0.2.4.dist-info/top_level.txt,sha256=5t1cOdQSaPQ0jWDhKDvDXwpV2XZ_a1GSSFAIvEsG0fQ,5
|
|
132
|
+
mima_engine-0.2.4.dist-info/RECORD,,
|
|
File without changes
|