diff --git a/rider/src/main/kotlin/com/jetbrains/rider/plugins/godot/run/GodotDotNetRuntimeAutodetect.kt b/rider/src/main/kotlin/com/jetbrains/rider/plugins/godot/run/GodotDotNetRuntimeAutodetect.kt new file mode 100644 index 00000000..5bf1bae5 --- /dev/null +++ b/rider/src/main/kotlin/com/jetbrains/rider/plugins/godot/run/GodotDotNetRuntimeAutodetect.kt @@ -0,0 +1,22 @@ +package com.jetbrains.rider.plugins.godot.run + +import com.intellij.openapi.project.Project +import com.jetbrains.rider.model.RdTargetFrameworkId +import com.jetbrains.rider.model.RunnableProjectKind +import com.jetbrains.rider.plugins.godot.GodotProjectDiscoverer +import com.jetbrains.rider.runtime.DotNetRuntimeAutodetect +import com.jetbrains.rider.runtime.RiderDotNetActiveRuntimeHost +import com.jetbrains.rider.runtime.RuntimeDetectionResult +import com.jetbrains.rider.runtime.dotNetCore.DotNetCoreRuntime + +class GodotDotNetRuntimeAutodetect(private val project: Project): DotNetRuntimeAutodetect { + override fun detectRuntime(dotNetCoreRuntime: DotNetCoreRuntime?, riderDotNetActiveRuntimeHost: RiderDotNetActiveRuntimeHost, projectKind: RunnableProjectKind?, tfm: RdTargetFrameworkId?, exePath: String): RuntimeDetectionResult? { + if (dotNetCoreRuntime == null) + return null + + if (GodotProjectDiscoverer.getInstance(project).godotCorePath.value != null) + return RuntimeDetectionResult.create(dotNetCoreRuntime) + + return null + } +} \ No newline at end of file diff --git a/rider/src/main/resources/META-INF/plugin.xml b/rider/src/main/resources/META-INF/plugin.xml index 24cc42dd..95367815 100644 --- a/rider/src/main/resources/META-INF/plugin.xml +++ b/rider/src/main/resources/META-INF/plugin.xml @@ -34,6 +34,8 @@ + +