Скачать E-Utils — Minecraft Моды — ModStock

E-Utils

Активный

Установок

0

Последнее обновление

2 месяца назад

Версии

1.0 — 1.21.5
Сервер
Fabric
Библиотеки
Утилиты

EverlastingUtils

Note: If you're seeing this as a dependency requirement for another mod, you can simply install it and ignore this documentation.

Also if you arent using the latest versions of my mods that require this download the 1.0.2 version

EverlastingUtils is a utility library for Fabric mod development. It provides implementations for common features that mod developers frequently need to implement:

  • Configuration management with runtime reloading
  • Command registration with permission handling
  • Inventory GUI framework
  • Utility functions and extensions

For mod developers looking to use this library, continue reading below.

Features

Config Management

  • JSONC configuration with comments support
  • Automatic config migration and backup
  • File watching and hot reloading
  • Type-safe config handling with Kotlin data classes
    
    data class MyConfig(
      override val version: String = "1.0.0",
      override val configId: String = "mymod"
      // Your config properties here
    ) : ConfigData

val configManager = ConfigManager( currentVersion = "1.0.0", defaultConfig = MyConfig(), configClass = MyConfig::class )


### Enhanced Command System
- Fluent command builder API
- Built-in permission handling
- Subcommand support
- Alias support
```kotlin
commandManager.command("mycommand", permission = "mymod.command") {
    executes { context ->
        // Command logic
        1
    }

    subcommand("subcommand") {
        executes { context ->
            // Subcommand logic
            1
        }
    }
}

GUI Framework

  • Simple inventory GUI creation
  • Custom button support
  • Interactive slot handling
  • Dynamic content updates
    CustomGui.openGui(
      player = player,
      title = "My GUI",
      layout = listOf(/* GUI items */),
      onInteract = { context ->
          // Handle interactions
      }
    )

Dependencies

  • Kotlin
  • Fabric API
  • Fabric Language Kotlin

Installation

Add to your build.gradle.kts:

dependencies {
    modImplementation("com.username:blanketutils:1.0.0")
}

Usage Examples

Config Management

// Create a config
data class MyConfig(
    override val version: String = "1.0.0",
    override val configId: String = "mymod",
    var debugMode: Boolean = false
) : ConfigData

// Initialize manager
val configManager = ConfigManager(
    currentVersion = "1.0.0",
    defaultConfig = MyConfig(),
    configClass = MyConfig::class,
    metadata = ConfigMetadata(
        headerComments = listOf("My mod configuration")
    )
)

// Access config
val currentConfig = configManager.getCurrentConfig()

Command Registration

val commandManager = CommandManager("mymod")

commandManager.command("hello", permission = "mymod.hello") {
    executes { context ->
        val source = context.source
        CommandManager.sendSuccess(source, "Hello, World!")
        1
    }
}

GUI Creation

CustomGui.openGui(
    player = player,
    title = "My GUI",
    layout = listOf(
        CustomGui.createNormalButton(
            ItemStack(Items.DIAMOND),
            "Click Me!",
            listOf("Button Description")
        )
    ),
    onInteract = { context ->
        // Handle button clicks
    }
)

Contributing

Contributions are welcome! Feel free to submit issues and pull requests.

Source Code & Development

The complete source code for EverlastingUtils is available on GitHub: EverlastingUtils Repository

Adding to Your Project

Add this to your build.gradle.kts:

dependencies {
    modCompileOnly(files("libs/everlastingutils-1.0.0.jar"))
}

Make sure to place the EverlastingUtils JAR file in your project's libs directory.

Участники проекта
Hysocs

Hysocs

Разработчик