CmlLib
한국어 (v3)
한국어 (v3)
  • 🧊CmlLib Projects
  • [AD] 커스텀 런처 주문제작
  • 🚀CmlLib.Core
    • 홈
    • 시작하기
      • CMLauncher
      • 게임 경로 설정
      • 실행 옵션 설정
      • 이벤트 처리
    • 로그인과 세션
      • 마이크로소프트 엑스박스 계정
      • 예전 모장 계정
      • 오프라인 계정
    • 고급 기능
      • VersionLoader
      • Version
      • FileChecker
      • Downloader
    • 모드 로더 인스톨러
      • Forge Installer
      • Fabric Installer
      • LiteLoader Installer
    • 유틸리티
      • Minecraft Changelogs
    • 자료
      • 자주 묻는 질문
      • 알려진 문제
      • 예시 런처
      • 라이센스
  • 🔓Auth.Microsoft
    • 홈
    • CmlLib.Core.Auth.Microsoft
      • JELoginHandler
      • JELoginHandlerBuilder
      • JEAuthenticator
    • XboxAuthNet.Game
      • OAuth
      • XboxAuth
      • XboxAuthException
      • AccountManager
      • Accounts
    • XboxAuthNet.Game.Msal
      • ClientID
      • MsalClientHelper
      • OAuth
    • CmlLib.Core.Bedrock.Auth
    • 자료
  • 🌐MojangAPI
    • 홈
    • Mojang API
    • SecurityQuestion
  • ⚒️Installer.Forge
    • 홈
    • 지원되는 버전
    • 시작하기
    • MForge
    • ForgeVersionLoader
Powered by GitBook
On this page
  • Example
  • IVersionLoader interface
  • LocalVersionLoader class
  • Constructors
  • MojangVersionLoader class
  • DefaultVersionLoader class
  • Constructors
  • MVersionCollection class
  • Properties
  • Methods
Edit on GitHub
  1. CmlLib.Core
  2. 고급 기능

VersionLoader

Get version metadata list

All VersionLoader should inherit IVersionLoader. There are 3 version loaders, and you can make your own version loader. VersionLoader return version metadata list as MVersionCollection type.

LocalVersionLoader: Get version metadata list from MinecraftPath.Versions directory. MojangVersionLoader: Get version metadata list from mojang metadata server.

DefaultVersionLoader: Get version metadatas using LocalVersionLoader and MojangVersionLoader, and merge two lists.

Example

var launcher = new CMLauncher(new MinecraftPath());

// CMLauncher class create DefaultVersionLoader instance automatically
// MVersionCollection versions = launcher.VersionLoader.GetVersionMetadatasAsync();
MVersionCollection versions = await launcher.GetAllVersionsAsync(); // shortcut

// show all versions
foreach (MVersionMetadata ver in versions)
{
    Console.WriteLine(ver.Type + " : " ver.Name);
}

// Get latest release version name:
Console.WriteLine(versions.LatestReleaseVersion.Name);

// Get latest snapshot version name:
Console.WriteLine(versions.LatestSnapshotVersion.Name);

// Get MVersion
MVersion realVersion = versions.GetVersion("1.15.2");

IVersionLoader interface

Task GetVersionMetadatasAsync();

Get version metadata list.

MVersionCollection GetVersionMetadatas();

Get version metadata list.

LocalVersionLoader class

Get version metadata list from MinecraftPath.Versions directory. Inherit IVersionLoader.

Constructors

public LocalVersionLoader(MinecraftPath path)

Set path to load versions.

MojangVersionLoader class

Get version metadata list from mojang version metadata server. Inherit IVersionLoader.

DefaultVersionLoader class

Get version metadata list using LocalVersionLoader and MojangVersionLoader, and merge two lists.

Constructors

public DefaultVersionLoader(MinecraftPath path)

Set path to load local versions.

MVersionCollection class

Manage MVersionMetadata lists.

Properties

LatestReleaseVersion

Type: MVersionMetadata

LatestSnapshotVersion

Type: MVersionMetadata

Methods

public MVersion GetVersion(string name)

Find MVersionMetadata named name, parse that version metadata to MVersion, and return it.

public MVersion GetVersion(MVersionMetadata versionMetadata)

Find versionMetadata, parse that version metadata to MVersion, and return it.

public void Merge(MVersionCollection from)

Merge two version collections. Remove duplications, change LatestReleaseVersion, LatestSnapshotVersion properties.

Previous고급 기능NextVersion

Last updated 1 year ago

🚀