Skip to content

Commit 10fa440

Browse files
committed
Properly update Renderer.can_render
1 parent 9d0f416 commit 10fa440

File tree

6 files changed

+15
-12
lines changed

6 files changed

+15
-12
lines changed

rlbot/interface.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ class SocketRelay:
3333
from `rlbot.managers`.
3434
"""
3535

36+
can_render = False
37+
"""Indicates whether RLBotServer has given permission to send rendering commands"""
3638
is_connected = False
3739
_running = False
3840
"""Indicates whether a messages are being handled by the `run` loop (potentially in a background thread)"""
@@ -296,6 +298,10 @@ def handle_incoming_message(self, incoming_message: bytes) -> MsgHandlingResult:
296298
for handler in self.field_info_handlers:
297299
handler(field_info)
298300
case flat.MatchConfiguration() as match_config:
301+
self.can_render = (
302+
match_config.enable_rendering == flat.DebugRendering.OnByDefault
303+
)
304+
299305
for handler in self.match_config_handlers:
300306
handler(match_config)
301307
case flat.MatchComm() as match_comm:

rlbot/managers/bot.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,6 @@ def _try_initialize(self):
120120
def _handle_match_config(self, match_config: flat.MatchConfiguration):
121121
self.match_config = match_config
122122
self._has_match_settings = True
123-
self.can_render = (
124-
match_config.enable_rendering == flat.DebugRendering.OnByDefault
125-
)
126123

127124
self._try_initialize()
128125

@@ -234,7 +231,7 @@ def rendering_status_update(self, update: flat.RenderingStatus):
234231
By default, this will update `self.renderer.can_render` if appropriate.
235232
"""
236233
if update.is_bot and update.index == self.index:
237-
self.renderer.can_render = update.status
234+
self._game_interface.can_render = update.status
238235

239236
def update_rendering_status(
240237
self,

rlbot/managers/hivemind.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ def rendering_status_update(self, update: flat.RenderingStatus):
232232
By default, this will update `self.renderer.can_render` if appropriate.
233233
"""
234234
if update.is_bot and update.index in self.indices:
235-
self.renderer.can_render = update.status
235+
self._game_interface.can_render = update.status
236236

237237
def update_rendering_status(
238238
self,

rlbot/managers/rendering.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,6 @@ class Renderer:
4545
purple = flat.Color(128, 0, 128)
4646
teal = flat.Color(0, 128, 128)
4747

48-
can_render: bool = False
49-
5048
_logger = get_logger("renderer")
5149

5250
_used_group_ids: set[int] = set()
@@ -62,6 +60,11 @@ def __init__(self, game_interface: SocketRelay):
6260
self._send_msg: Callable[[flat.RenderGroup | flat.RemoveRenderGroup], None] = (
6361
game_interface.send_msg
6462
)
63+
self._game_interface = game_interface
64+
65+
@property
66+
def can_render(self) -> bool:
67+
return self._game_interface.can_render
6568

6669
def set_resolution(self, screen_width: float, screen_height: float):
6770
"""

rlbot/managers/script.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,6 @@ def _try_initialize(self):
102102
def _handle_match_config(self, match_config: flat.MatchConfiguration):
103103
self.match_config = match_config
104104
self._has_match_settings = True
105-
self.can_render = (
106-
match_config.enable_rendering == flat.DebugRendering.OnByDefault
107-
)
108105

109106
self._try_initialize()
110107

@@ -194,7 +191,7 @@ def rendering_status_update(self, update: flat.RenderingStatus):
194191
By default, this will update `self.renderer.can_render` if appropriate.
195192
"""
196193
if not update.is_bot and update.index == self.index:
197-
self.renderer.can_render = update.status
194+
self._game_interface.can_render = update.status
198195

199196
def update_rendering_status(
200197
self,

rlbot/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "2.0.0-beta.50"
1+
__version__ = "2.0.0-beta.51"

0 commit comments

Comments
 (0)