Skip to content

Commit 717782f

Browse files
committed
make the main method available
1 parent e7d6e6a commit 717782f

3 files changed

Lines changed: 17 additions & 7 deletions

File tree

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
from .classes import *
22
from .wrappers import *
3+
from main import main as _main

engine/src/crossplay_python/battlecode/runner.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
from threading import Thread, Event, Lock
66
from time import sleep
77

8+
import battlecode
9+
810
from .classes import GameActionException, GameActionExceptionType
911
from .instrument import Instrument
1012
from types import CodeType, MethodType
@@ -192,6 +194,10 @@ def import_call(self, name, globals=None, locals=None, fromlist=(), level=0, cal
192194
return enum
193195
if name == 'battlecode':
194196
import battlecode
197+
198+
if hasattr(battlecode, '_main'):
199+
del battlecode._main
200+
195201
return battlecode
196202

197203
raise ImportError('Module "' + name + '" does not exist.')

engine/src/crossplay_python/main.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,10 @@ def get_round():
233233
close()
234234

235235

236-
def main():
236+
def main(args=None):
237+
if args is None:
238+
args = sys.argv[1:]
239+
237240
if sys.version_info.major != 3 or sys.version_info.minor != 12:
238241
print(
239242
f"Error: The Battlecode Python runner requires Python 3.12. Found version {sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}."
@@ -249,19 +252,19 @@ def main():
249252
action="store_true",
250253
help="Start the Python runner in a new process",
251254
)
252-
args = parser.parse_args()
255+
parsed_args = parser.parse_args(args)
253256

254-
if args.new_process:
257+
if parsed_args.new_process:
255258
new_args = [
256259
sys.executable,
257260
__file__,
258261
"--teamA",
259-
args.teamA if args.teamA else "/",
262+
parsed_args.teamA if parsed_args.teamA else "/",
260263
"--teamB",
261-
args.teamB if args.teamB else "/",
264+
parsed_args.teamB if parsed_args.teamB else "/",
262265
]
263266

264-
if args.debug:
267+
if parsed_args.debug:
265268
new_args.append("--debug")
266269

267270
Popen(
@@ -274,7 +277,7 @@ def main():
274277
creationflags=DETACHED_PROCESS,
275278
)
276279
else:
277-
play(team_a=args.teamA, team_b=args.teamB, debug=args.debug)
280+
play(team_a=parsed_args.teamA, team_b=parsed_args.teamB, debug=parsed_args.debug)
278281

279282

280283
if __name__ == "__main__":

0 commit comments

Comments
 (0)