Skip to content

Commit

Permalink
Fixed a syntax package mapping issue
Browse files Browse the repository at this point in the history
  • Loading branch information
eyesniper2 committed Jan 18, 2025
1 parent 63bc8c7 commit bf6cddf
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 3 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ buildscript {
}

group 'net.skripthub'
version '1.9'
version '1.10'

apply plugin: 'com.github.johnrengelman.shadow'
apply plugin: 'java'
Expand Down
19 changes: 17 additions & 2 deletions src/main/kotlin/net/skripthub/docstool/documentation/BuildDocs.kt
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,16 @@ import kotlin.collections.ArrayList

class BuildDocs(private val instance: JavaPlugin, private val sender: CommandSender?) : Runnable{

var addonMap: HashMap<String, AddonData> = hashMapOf()
private var addonMap: HashMap<String, AddonData> = hashMapOf()

// Skript has multiple internal class packages such as ch.njol.skript and org.skriptlang.skript.
// Since we base the package mapping based off of the entry class, which for Skript lives in the
// ch.njol.skript package, we don't and can't know about org.skriptlang.skript.
// addonPackageMap is a hard coded map of known internal packages so we are always mapping back
// to the right addon.
private var addonPackageMap: HashMap<String, String> = hashMapOf(
"org.skriptlang.skript" to "ch.njol.skript"
)

private val fileType: FileType = JsonFile(false)

Expand Down Expand Up @@ -292,13 +301,19 @@ class BuildDocs(private val instance: JavaPlugin, private val sender: CommandSen
private fun getAddon(skriptEventInfo: SyntaxElementInfo<*>): AddonData? {

var name = skriptEventInfo.getElementClass().`package`.name
// var testName = skriptEventInfo.getElementClass().packageName
// var testName = skriptEventInfo.getElementClass().packageName

if (name == "ch.njol.skript.lang.util"){
// Used Simple event or expression registration
name = skriptEventInfo.originClassPath
}

// Check to see if we need to remap the package to the addon root package.
val mappedPackageNode = addonPackageMap.entries.firstOrNull { name.startsWith(it.key) }
if (mappedPackageNode != null){
name = mappedPackageNode.value
}

// DEBUG
// sender?.sendMessage("[" + ChatColor.DARK_AQUA + "Skript Hub Docs Tool"
// + ChatColor.RESET + "] " + ChatColor.YELLOW + "Calced Package Name: " + ChatColor.BLUE + "$name")
Expand Down

0 comments on commit bf6cddf

Please sign in to comment.