foundry.game.gfx.objects package#

Submodules#

foundry.game.gfx.objects.Enemy module#

class Enemy(type: int, point: Point)#

Bases: object

A representation of an enemy inside a level, that uses attrs to create a basic implementation.

Attributes:
type: int

The type of enemy

point: Point

The point of the enemy

classmethod from_bytes(data: bytes)#
point: Point#
type: int#
class EnemyProtocol(*args, **kwargs)#

Bases: Protocol

A representation of an enemy inside a level.

Attributes:
type: int

The type of enemy

point: Point

The point of the enemy

classmethod from_bytes(data: bytes)#
point: Point#
type: int#

foundry.game.gfx.objects.EnemyItem module#

class EnemyObject(data, png_data, palette_group: PaletteGroup)#

Bases: ObjectLike

as_image() QImage#
property definition: EnemyDefinition#
draw(painter: QPainter, block_length, transparency, *, is_icon=False)#
draw_blocks(painter: QPainter, block_length, is_icon)#
draw_sprites(painter: QPainter, scale_factor: int, transparency: bool, is_icon: bool) None#
get_status_info()#
property graphics_set: GraphicsSet#
property height: int#
move_by(point: Point) None#
property name: str#
property obj_index#
property point: Point#
point_in(point: Point) bool#
property rect: Rect#
render()#
to_bytes()#
property type#
property width: int#

foundry.game.gfx.objects.EnemyItemFactory module#

class EnemyItemFactory(tileset: int, palette_index: int)#

Bases: object

definitions: list = []#
from_data(data, _)#
from_properties(enemy_item_id: int, point: Point)#
graphic_set: int#
tileset: int#

foundry.game.gfx.objects.GeneratorObject module#

class GeneratorObject#

Bases: ObjectLike, ABC

domain: int#

foundry.game.gfx.objects.Jump module#

class Jump(data)#

Bases: GeneratorObject

POINTER_DOMAIN = 7#
property definition: Definition#
draw(dc, zoom, transparent)#
static from_properties(screen_index, action, horiz, vert)#
get_rect(block_length=1, vertical=False) Rect#
get_status_info()#
static is_jump(data)#
move_by(point: Point) None#
property point: Point#
point_in(x, y)#
render()#
to_bytes()#

foundry.game.gfx.objects.LevelObject module#

class LevelObject(data: bytearray, tileset: int, palette_group: PaletteGroup, graphics_set: GraphicsSet, objects_ref: list[foundry.game.gfx.objects.LevelObject.LevelObject], is_vertical: bool, index: int, size_minimal: bool = False)#

Bases: GeneratorObject

as_image() QImage#
property blocks: list[int]#
property definition: TilesetDefinition#
display_size(zoom_factor: int = 1)#
property domain: int#
draw(painter: QPainter, block_length, transparent, blocks: list[foundry.core.drawable.Block] | None = None)#
property ending: EndType#
expands()#
get_status_info() list[tuple]#
property horizontally_expands: bool#
property index_in_level: int#
property is_4byte: bool#
property is_single_block: bool#
property length: int#
move_by(point: Point) None#
property name: str#
property obj_index: int#
property object_info#
property orientation: GeneratorType#
property point: Point#
point_in(point: Point) bool#
primary_expansion()#
render()#
property rendered_position: Point#
property rendered_size: Size#
property scale: Size#
property secondary_length: int#
property size: int#
to_bytes() bytearray#
property tsa_data: bytearray#
property type: int#
property vertically_expands: bool#

foundry.game.gfx.objects.LevelObjectFactory module#

class LevelObjectFactory(tileset: int, graphic_set: int | foundry.core.graphics_set.GraphicsSet.GraphicsSet, palette_group_index: int, objects_ref: list[foundry.game.gfx.objects.LevelObject.LevelObject], vertical_level: bool, size_minimal: bool = False)#

Bases: object

from_data(data: bytearray, index: int)#
from_properties(domain: int, object_index: int, point: Point, length: int | None, index: int)#
graphic_set: int#
graphics_set: foundry.core.graphics_set.GraphicsSet.GraphicsSet | None = None#
palette_group: PaletteGroup#
palette_group_index: int#
set_graphic_set(graphic_set: int)#
set_palette_group_index(palette_group_index: int)#
set_tileset(tileset: int)#
tileset: int#

foundry.game.gfx.objects.MapObject module#

class MapObject(block: Block, x: int, y: int, palette_group: PaletteGroup, graphics_set: GraphicsSet)#

Bases: ObjectLike

property definition: Definition#
draw(painter: QPainter, block_length: int, _=None)#
get_rect()#
get_status_info()#
move_by(point: Point) None#
property point: Point#
point_in(point: Point)#
render()#
resize_to(x, y)#
to_bytes()#

foundry.game.gfx.objects.ObjectLike module#

class ObjectLike#

Bases: ABC

abstract property definition: Definition#
abstract draw(dc, zoom, transparent)#
expands()#
get_rect(block_length: int = 1) Rect#
abstract get_status_info()#
abstract move_by(point: Point) None#
name: str#
obj_index: int#
abstract property point: Point#
abstract point_in(x, y)#
primary_expansion()#
rect: Rect#
abstract render()#
abstract to_bytes()#

foundry.game.gfx.objects.util module#

change_enemy_object_type(item: EnemyObject, increment: bool)#
change_level_object_type(item: LevelObject, increment: bool)#
change_type(item: foundry.game.gfx.objects.LevelObject.LevelObject | foundry.game.gfx.objects.EnemyItem.EnemyObject, increment: bool)#
decrement_type(item: foundry.game.gfx.objects.LevelObject.LevelObject | foundry.game.gfx.objects.EnemyItem.EnemyObject)#
increment_type(item: foundry.game.gfx.objects.LevelObject.LevelObject | foundry.game.gfx.objects.EnemyItem.EnemyObject)#
resize_level_object(item: LevelObject, point_difference: Point)#
set_level_object_height(item: LevelObject, height: int, *, render: bool = True)#
set_level_object_width(item: LevelObject, width: int, *, render: bool = True)#

Module contents#