Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions examples/06_full_blown_app_structure.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ async def confirm_before_quitting(*, priority, **kwargs: Unpack[apg.CommonParams
apg.quit()


async def title_scene(*, scene_switcher, userdata, **kwargs: Unpack[apg.CommonParams]):
async def title_scene(*, switcher, userdata, **kwargs: Unpack[apg.CommonParams]):
draw_target = kwargs["draw_target"]
target_rect = draw_target.get_rect()
font = userdata['font']
Expand All @@ -61,11 +61,11 @@ async def title_scene(*, scene_switcher, userdata, **kwargs: Unpack[apg.CommonPa
priority=0x100,
**kwargs))
await e_start.wait()
scene_switcher.switch_to(menu_scene, FadeTransition())
switcher.switch_to(menu_scene, FadeTransition())
await apg.sleep_forever()


async def menu_scene(*, scene_switcher, userdata, **kwargs: Unpack[apg.CommonParams]):
async def menu_scene(*, switcher, userdata, **kwargs: Unpack[apg.CommonParams]):
draw_target = kwargs["draw_target"]
target_rect = draw_target.get_rect()
font = userdata['font']
Expand All @@ -85,11 +85,11 @@ async def menu_scene(*, scene_switcher, userdata, **kwargs: Unpack[apg.CommonPar
priority=0x100, **kwargs))
tasks = await apg.wait_any(e_play.wait(), e_back.wait())
next_scene = title_scene if tasks[1].finished else game_scene
scene_switcher.switch_to(next_scene, FadeTransition())
switcher.switch_to(next_scene, FadeTransition())
await apg.sleep_forever()


async def game_scene(*, scene_switcher, userdata, **kwargs: Unpack[apg.CommonParams]):
async def game_scene(*, switcher, userdata, **kwargs: Unpack[apg.CommonParams]):
draw_target = kwargs["draw_target"]
target_rect = draw_target.get_rect()
font = userdata['font']
Expand All @@ -103,7 +103,7 @@ async def game_scene(*, scene_switcher, userdata, **kwargs: Unpack[apg.CommonPar
while True:
await clock.anim_attrs(dest, y=dest.y + 160, duration=800)
await clock.anim_attrs(dest, y=dest.y - 160, duration=800)
scene_switcher.switch_to(title_scene, FadeTransition())
switcher.switch_to(title_scene, FadeTransition())
await apg.sleep_forever()


Expand Down
4 changes: 2 additions & 2 deletions examples/scene_transition_showcase.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@ async def main(**kwargs: Unpack[apg.CommonParams]):
await SceneSwitcher().run(show_transition, priority=0xFFFFFD00, userdata=userdata, **kwargs)


async def show_transition(*, scene_switcher, userdata, executor, sdlevent, draw_target, **__):
async def show_transition(*, switcher, userdata, executor, sdlevent, draw_target, **__):
font = userdata['font']
text, transition = next(userdata['transitions'])
img = font.render(text, True, "white").convert_alpha()
with executor.register(partial(draw_target.blit, img, img.get_rect(center=draw_target.get_rect().center)), priority=0x100):
await sdlevent.wait(pygame.MOUSEBUTTONDOWN, priority=0)
scene_switcher.switch_to(show_transition, transition)
switcher.switch_to(show_transition, transition)
await apg.sleep_forever()


Expand Down
12 changes: 6 additions & 6 deletions examples/whack_a_human.py
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ async def confirm_and_quit(*, priority, font, **kwargs: Unpack[apg.CommonParams]
apg.quit()


async def title_scene(*, scene_switcher, userdata: UserData, **kwargs: Unpack[apg.CommonParams]):
async def title_scene(*, switcher, userdata: UserData, **kwargs: Unpack[apg.CommonParams]):
draw_target = kwargs["draw_target"]
target_rect = draw_target.get_rect()
font = userdata.font
Expand Down Expand Up @@ -215,7 +215,7 @@ async def title_scene(*, scene_switcher, userdata: UserData, **kwargs: Unpack[ap
images.update(load_images(cur))
userdata.sounds = load_sounds(cur)
images["gift"] = pygame.transform.scale(images["gift"], (200, 200))
scene_switcher.switch_to(game_scene, FadeTransition())
switcher.switch_to(game_scene, FadeTransition())
await apg.sleep_forever()


Expand Down Expand Up @@ -436,7 +436,7 @@ async def game_timer(dest: Rect, *, duration, color=THECOLORS["ivory"], priority
await kwargs["clock"].anim_attrs(ctx, stop_angle=start_angle, duration=duration)


async def game_scene(*, scene_switcher, userdata: UserData, **kwargs: Unpack[apg.CommonParams]):
async def game_scene(*, switcher, userdata: UserData, **kwargs: Unpack[apg.CommonParams]):
from random import randint, random
clock = kwargs["clock"]
draw_target = kwargs["draw_target"]
Expand Down Expand Up @@ -468,11 +468,11 @@ async def game_scene(*, scene_switcher, userdata: UserData, **kwargs: Unpack[apg
hole = inactive_holes.pop(randint(0, len(inactive_holes) - 1))
nursery.start(actions[random() > 0.8](score, speed, inactive_holes, hole_size=hole_size, pos=hole, userdata=userdata, **kwargs))
userdata.last_game_score = score.value
scene_switcher.switch_to(result_scene, FadeTransition(overlay_color=THECOLORS["white"], out_duration=1000, interval=1000, in_duration=500))
switcher.switch_to(result_scene, FadeTransition(overlay_color=THECOLORS["white"], out_duration=1000, interval=1000, in_duration=500))
await apg.sleep_forever()


async def result_scene(*, scene_switcher, userdata: UserData, **kwargs: Unpack[apg.CommonParams]):
async def result_scene(*, switcher, userdata: UserData, **kwargs: Unpack[apg.CommonParams]):
render = userdata.font.render
draw_target = kwargs["draw_target"]
target_rect = draw_target.get_rect()
Expand Down Expand Up @@ -503,7 +503,7 @@ async def result_scene(*, scene_switcher, userdata: UserData, **kwargs: Unpack[a
priority=0x100,
**kwargs))
await kwargs["sdlevent"].wait(C.MOUSEBUTTONDOWN, priority=0x100)
scene_switcher.switch_to(title_scene, FadeTransition())
switcher.switch_to(title_scene, FadeTransition())
await apg.sleep_forever()


Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "asyncpygame"
version = "0.1.3"
version = "0.2.0.dev0"
description = "Async/await-based framework for PyGame"
authors = ["Nattōsai Mitō <[email protected]>"]
license = "MIT"
Expand Down
2 changes: 2 additions & 0 deletions src/asyncpygame/_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ async def some_func(**kwargs: Unpack[CommonParams]):
clock: Clock
pygame_clock: pygame.time.Clock
draw_target: Surface
switcher: None
userdata: None


async def capture_current_frame(executor: PriorityExecutor, priority, source: Surface) -> Awaitable[Surface]:
Expand Down
10 changes: 5 additions & 5 deletions src/asyncpygame/scene_switcher.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ async def my_transition(**common_params):
yield
# 3rd part

scene_switcher.switch_to(next_scene, my_transition)
switcher.switch_to(next_scene, my_transition)

When your app switches from one scene to another, the transition between them will proceed as follows:

Expand Down Expand Up @@ -55,7 +55,7 @@ async def no_transition(**common_params):
'''
.. code-block::

scene_switcher.switch_to(next_scene, no_transition)
switcher.switch_to(next_scene, no_transition)
'''
yield
yield
Expand All @@ -77,7 +77,7 @@ async def run(self, first_scene, *, userdata: Any=None, priority, sdlevent, **kw
:param userdata: Use this to share data between scenes without relying on global variables.
'''
common_params = {
'scene_switcher': self,
'switcher': self,
'sdlevent': sdlevent,
'userdata': userdata,
**kwargs}
Expand Down Expand Up @@ -106,7 +106,7 @@ class FadeTransition:
'''
.. code-block::

scene_switcher.switch_to(next_scene, FadeTransition())
switcher.switch_to(next_scene, FadeTransition())
'''
def __init__(self, *, overlay_color='black', out_duration=300, in_duration=300, interval=100):
'''
Expand Down Expand Up @@ -147,7 +147,7 @@ class SlideTransition:
'''
.. code-block::

scene_switcher.switch_to(next_scene, SlideTransition())
switcher.switch_to(next_scene, SlideTransition())
'''
_valid_directions = ('right', 'left', 'up', 'down', )

Expand Down
Loading