30 lines
709 B
Python
30 lines
709 B
Python
import os
|
|
import subprocess
|
|
|
|
from . import util
|
|
|
|
GODOT_PATHS = ["C:\Program Files (x86)\Steam\steamapps\common\Godot Engine\godot.windows.opt.tools.64.exe"]
|
|
GODOT_PROJECT = "project.godot"
|
|
|
|
class Project():
|
|
def __init__(self, path):
|
|
self.path = path
|
|
|
|
def run(self):
|
|
subprocess.run(find_command(), cwd=self.path)
|
|
|
|
def edit(self):
|
|
subprocess.run([find_command(), "--editor"], cwd=self.path)
|
|
|
|
def find_command():
|
|
for exe in GODOT_PATHS:
|
|
if os.path.exists(exe):
|
|
return exe
|
|
|
|
return "godot"
|
|
|
|
def find_project(path):
|
|
path = util.find_nearest(path, lambda entry: entry.lower() == GODOT_PROJECT)
|
|
if path is not None:
|
|
return Project(path)
|