Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Pygame Groups
#2
Example. You could do something like this.
class SOGroup:
    group_background = pygame.sprite.Group()
    group_zplanes = pygame.sprite.Group()
    group_interface = pygame.sprite.Group()
    group_overlay = pygame.sprite.Group()

    @classmethod
    def add_background(cls, item):
        cls.group_background.add(item)

    @classmethod
    def add_zplanes(cls, item):
        cls.group_zplanes.add(item)

    #etc

    @classmethod
    def draw(cls, surface):
        cls.group_background.draw(surface)
        cls.group_zplanes.draw(surface)
        cls.group_interface.draw(surface)
        cls.group_overlay.draw(surface)

Example. Or you could do this.
from enum import Enum

Group = Enum('Group', 'background, zplanes, interface, overlay')
class SOGroup:
    groups = {
        Group.background: pygame.sprite.Group(),
        Group.zplanes: pygame.sprite.Group(),
        Group.interface: pygame.sprite.Group(),
        Group.overlay: pygame.sprite.Group(),
        }

    @classmethod
    def add(cls, group, item):
        cls.groups[group].add(item)

    @classmethod
    def draw(cls, surface):
        cls.groups[Group.background].draw(surface)
        cls.groups[Group.zplanes].draw(surface)
        cls.groups[Group.interface].draw(surface)
        cls.groups[Group.overlay].draw(surface)

Example. Or this
class SOGroup:
    groups = {
        'Background': pygame.sprite.Group(),
        'ZPlanes': pygame.sprite.Group(),
        'Interface': pygame.sprite.Group(),
        'Overlay': pygame.sprite.Group(),
        }

    @classmethod
    def add(cls, group, item):
        cls.groups[group].add(item)

    @classmethod
    def draw(cls, surface):
        cls.groups['Background'].draw(surface)
        cls.groups['Zplanes'].draw(surface)
        cls.groups['Interface'].draw(surface)
        cls.groups['Overlay'].draw(surface)
99 percent of computer problems exists between chair and keyboard.
Reply


Messages In This Thread
Pygame Groups - by microphone_head - Aug-27-2018, 03:28 PM
RE: Pygame Groups - by Windspar - Aug-27-2018, 08:20 PM
RE: Pygame Groups - by microphone_head - Aug-28-2018, 07:30 AM
RE: Pygame Groups - by microphone_head - Aug-28-2018, 09:53 AM
RE: Pygame Groups - by microphone_head - Aug-28-2018, 10:40 PM

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020