Skip to content

Commit

Permalink
Multiwalker dead variable removal + macOS pygame fix (#1107)
Browse files Browse the repository at this point in the history
  • Loading branch information
umutucak authored Oct 5, 2023
1 parent d0196aa commit c90f947
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 10 deletions.
1 change: 1 addition & 0 deletions pettingzoo/classic/connect_four/connect_four.py
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,7 @@ def render(self):
)

if self.render_mode == "human":
pygame.event.pump()
pygame.display.update()
self.clock.tick(self.metadata["render_fps"])

Expand Down
6 changes: 4 additions & 2 deletions pettingzoo/sisl/multiwalker/multiwalker.py
Original file line number Diff line number Diff line change
Expand Up @@ -151,9 +151,11 @@ def __init__(self, *args, **kwargs):
EzPickle.__init__(self, *args, **kwargs)
self.env = _env(*args, **kwargs)
self.render_mode = self.env.render_mode
self.agents = ["walker_" + str(r) for r in range(self.env.num_agents)]
self.agents = ["walker_" + str(r) for r in range(self.env.n_walkers)]
self.possible_agents = self.agents[:]
self.agent_name_mapping = dict(zip(self.agents, list(range(self.num_agents))))
self.agent_name_mapping = dict(
zip(self.agents, list(range(self.env.n_walkers)))
)
self._agent_selector = agent_selector(self.agents)
# spaces
self.action_spaces = dict(zip(self.agents, self.env.action_space))
Expand Down
9 changes: 3 additions & 6 deletions pettingzoo/sisl/multiwalker/multiwalker_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,6 @@ def __init__(
self._seed()
self.setup()
self.screen = None
self.agent_list = list(range(self.n_walkers))
self.last_rewards = [0 for _ in range(self.n_walkers)]
self.last_dones = [False for _ in range(self.n_walkers)]
self.last_obs = [None for _ in range(self.n_walkers)]
Expand All @@ -359,15 +358,12 @@ def setup(self):
BipedalWalker(self.world, init_x=sx, init_y=init_y, seed=self.seed_val)
for sx in self.start_x
]
self.num_agents = len(self.walkers)
self.observation_space = [agent.observation_space for agent in self.walkers]
self.action_space = [agent.action_space for agent in self.walkers]

self.package_scale = self.n_walkers / 1.75
self.package_length = PACKAGE_LENGTH / SCALE * self.package_scale

self.total_agents = self.n_walkers

self.prev_shaping = np.zeros(self.n_walkers)
self.prev_package_shaping = 0.0

Expand Down Expand Up @@ -534,7 +530,7 @@ def get_last_rewards(self):
)

def get_last_dones(self):
return dict(zip(self.agent_list, self.last_dones))
return dict(zip(list(range(self.n_walkers)), self.last_dones))

def get_last_obs(self):
return dict(
Expand Down Expand Up @@ -692,7 +688,8 @@ def render(self, close=False):
self.surf = pygame.transform.flip(self.surf, False, True)
self.screen.blit(self.surf, (-self.scroll * render_scale - offset, 0))
if self.render_mode == "human":
pygame.display.flip()
pygame.event.pump()
pygame.display.update()
elif self.render_mode == "rgb_array":
return np.transpose(
np.array(pygame.surfarray.pixels3d(self.screen)), axes=(1, 0, 2)
Expand Down
3 changes: 2 additions & 1 deletion pettingzoo/sisl/pursuit/pursuit_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -417,7 +417,8 @@ def render(self):
new_observation = np.copy(observation)
del observation
if self.render_mode == "human":
pygame.display.flip()
pygame.event.pump()
pygame.display.update()
return (
np.transpose(new_observation, axes=(1, 0, 2))
if self.render_mode == "rgb_array"
Expand Down
3 changes: 2 additions & 1 deletion pettingzoo/sisl/waterworld/waterworld_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -741,7 +741,8 @@ def render(self):
del observation

if self.render_mode == "human":
pygame.display.flip()
pygame.event.pump()
pygame.display.update()
return (
np.transpose(new_observation, axes=(1, 0, 2))
if self.render_mode == "rgb_array"
Expand Down

0 comments on commit c90f947

Please sign in to comment.