Appearance Manager#
AppearancesManager is the parent class of BackgroundsManager and
CostumesManager.
These classes manage all appearances of an actor or world.
API Reference#
- class miniworlds.appearances.appearances_manager.AppearancesManager(parent)[source]#
Abstract base class for managing a collection of costume or background appearances.
Subclasses
CostumesManager(for actors) andBackgroundsManager(for worlds) extend this class with their own factory methods and convenience helpers.Typical use via the public API:
# Switching between costumes actor.switch_costume(1) actor.next_costume() # Switching between backgrounds world.switch_background(1) world.next_background()
Public Data Attributes:
Image surface of the currently active appearance.
Returns the orientation values of all managed appearances.
Returns the animation speed of the active appearance.
Returns the shared border width for managed appearances.
Public Methods:
__init__(parent)add_new_appearance(source)Adds a new Appearance (costume or background) to manager.
set_new_appearance(source)Replaces the current appearance with a new one.
add_new_appearances(sources)add_new_appearance_from_list(sources)Returns a new appearance (Background instance or Costume instance)
Switches to next appearance
length()Returns the number of appearances currently managed.
__len__()get_appearance_at_index(index)find_appearance(appearance)Searches for appearance; returns index of appearance
set_border(value)Sets the border width for all managed appearances.
set_animated(value)Enables or disables animation for all managed appearances.
set_animation_speed(value)Sets the animation speed for all managed appearances.
set_upscaled(value)Sets whether small images may be scaled up.
set_scaled_to_width(value)Sets whether appearances should scale to the parent width.
set_scaled_to_height(value)Sets whether appearances should scale to the parent height.
set_scaled(value)Sets whether appearances should scale to the parent size.
list()Returns all appearances in manager as list.
__str__()Return str(self).
remove_appearance([source])Removes an appearance (costume or background) from manager
reset()Removes all managed appearances and resets the manager state.
switch_appearance(source)Switches the active costume or background.
animate(speed)Starts animating the currently active appearance.
animate_appearance(appearance, speed)Switches to a specific appearance and starts animating it.
Implemented in subclasses
__iter__()__next__()Returns the currently active appearance.
Private Methods:
_init_display()_create_appearance_from_source(source)_add_default_appearance()_add_first_appearance(appearance)_add_appearance_to_manager(appearance)_set_appearance_defaults()_set_all(attribute, value)Sets attribute for all appearance in manager.
_remove_appearance_from_manager(appearance)Removes an appearance from the manager.
- add_new_appearance(source)[source]#
Adds a new Appearance (costume or background) to manager.
called by
add_costumeandadd_backgroundin subclasses.- Return type:
- animate(speed)[source]#
Starts animating the currently active appearance.
- Parameters:
speed – Number of frames between image changes.
- animate_appearance(appearance, speed)[source]#
Switches to a specific appearance and starts animating it.
- Parameters:
appearance – The appearance to animate.
speed – Number of frames between image changes.
- property animation_speed#
Returns the animation speed of the active appearance.
- property border#
Returns the shared border width for managed appearances.
- abstract create_appearance()[source]#
Returns a new appearance (Background instance or Costume instance)
- Return type:
- get_actual_appearance()[source]#
Returns the currently active appearance.
If no appearance exists yet, a default one is created first.
- Return type:
- property image: Surface#
Image surface of the currently active appearance.
- Returns:
Active appearance image, or a 1x1 fallback surface if no appearance has been created yet.
- Return type:
pygame.Surface
- list()[source]#
Returns all appearances in manager as list.
- Return type:
- Returns:
All appearances in manager as list
- Return type:
List[appearance_mod.Appearance]
- next_appearance()[source]#
Switches to next appearance
- Return type:
- Returns:
the switched appearance
- Return type:
appearance_mod.Appearance
- property orientation#
Returns the orientation values of all managed appearances.
- remove_appearance(source=-1)[source]#
Removes an appearance (costume or background) from manager
- Defaults:
Removes last costume.
- Parameters:
source – The index of the new appearance or the Appearance which should be removed Defaults to -1
costume) ((last)
- reset()[source]#
Removes all managed appearances and resets the manager state.
This is useful when an actor or world should receive a completely new set of costumes or backgrounds.
- set_animated(value)[source]#
Enables or disables animation for all managed appearances.
- Parameters:
value –
Trueto animate appearances, otherwiseFalse.
- set_animation_speed(value)[source]#
Sets the animation speed for all managed appearances.
- Parameters:
value – Number of frames between image changes.
- set_border(value)[source]#
Sets the border width for all managed appearances.
- Parameters:
value – Border width in pixels.
- set_new_appearance(source)[source]#
Replaces the current appearance with a new one.
If no appearance exists yet, this behaves like
add_new_appearance.- Parameters:
source – Image source, color tuple, surface, costume instance, or
Nonefor a default appearance.- Returns:
The newly active appearance.
- set_scaled(value)[source]#
Sets whether appearances should scale to the parent size.
- Parameters:
value –
Trueto scale managed appearances.
- set_scaled_to_height(value)[source]#
Sets whether appearances should scale to the parent height.
- Parameters:
value –
Trueto scale to height.
- set_scaled_to_width(value)[source]#
Sets whether appearances should scale to the parent width.
- Parameters:
value –
Trueto scale to width.
- set_upscaled(value)[source]#
Sets whether small images may be scaled up.
- Parameters:
value –
Trueto allow upscaling.