이 프로젝트를 통해 귀하의minehut 계정/서버에 쉽게 통합할 수 있습니다. 여기에는 계정 생성/확인 기능을 포함하여 마인허트 백엔드 API의 모든 기능이 포함되어 있습니다.
이 프로젝트는 Visual Basic으로 작성되었지만 .NET 라이브러리이므로 C#에서 사용하는 것과 별 차이가 없습니다.
가장 먼저 알아야 할 부분은 이 라이브러리의 대부분이 MinehutAPIClient에 있다는 것입니다.
minehut API의 대부분 기능을 사용하려면 로그인이 필요하므로 서버에 액세스할 수 있습니다. 이렇게 하려면 Login() 메서드를 사용합니다. 이 클래스에 포함된 대부분의 함수의 경우 Minehut.Types 클래스를 가져오는 것이 좋습니다.
using Minehut . Types ;
이렇게 하면 클라이언트가minehut API에 인증되어 서버에서 작업할 수 있습니다. 기음#
MinehutApiClient Minehut = New MinehutApiClient ( ) ;
Minehut . Login ( "[email protected]" , "SuperSecretPassword" ) ;
이 기능을 사용하면 현재 실행 중인 모든 공개 마인허트 서버에 접근할 수 있습니다. 이러한 서버는 서버 유형의 IList로 반환됩니다. (Minehut.Types 내)
IList < Server > servers = Minehut . GetServers ( ) ;
이는 서버의 ID를 검색하며, 이 ID는 다른 기능/메서드에 영향을 미치려는 서버를 지정하는 데 사용됩니다.
String [ ] MyServers = Minehut . GetSelfServers ;
이 함수는minehut에서 사용 가능한 모든 플러그인을 검색합니다.
IList < Plugin > Plugins = Minehut . GetPlugins ( ) ;
그러면 지정된 서버에 대한 확장 정보가 표시됩니다. 서버 ID가 필요하며 서버에 대한 정보를 반환합니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
ExtendedServer ExtendedServerInformation = Minehut . GetServerByID ( Server1ID ) ;
이 함수는 저장 정보를 GetServerByID()로 반환하지만 서버 ID 대신 서버 이름을 사용합니다.
ExtendedServer ExtendedServerInformation = Minehut . GetServerByID ( "Skyblock" ) ;
이 기능을 사용하면 Minecraft 서버의 일부로 저장된 파일을 검색할 수 있습니다. 각 파일은 ServerFile 개체(Minehut.Types)로 저장됩니다. 이러한 개체에는 다음이 포함됩니다.
서버 ID를 지정해야 하며 선택적으로 경로를 지정할 수도 있습니다. 기본적으로 서버의 루트 디렉터리에 저장된 파일을 반환합니다.
루트 디렉터리 파일을 얻으려면:
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Ilist < ServerFile > RootFiles = Minehut . GetServerFiles ( Server1ID ) ;
지정된 폴더의 파일을 가져오려면:
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Ilist < ServerFile > EssentialsConfigFiles = Minehut . GetServerFiles ( Server1ID , "PluginsEssentials" ) ;
그러면 지정된 서버에 설치된 모든 플러그인이 반환됩니다. InstalledPlugin의 IList로 반환됩니다(Minehut.Types에서).
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Ilist < InstalledPlugin > InstalledPlugins = Minehut . GetServerPlugins ( Server1ID ) ;
이는 해당 서버의 상태를 반환합니다. 온라인에 있는 사람 수, 온라인에 있는 사람, 서버 상태 등을 확인하는 데 유용합니다. 상태 개체로 반환(Minehut.Types에서)
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Status MyServerStatus = Minehut . GetServerStatus ( Server1ID ) ;
그러면 AuthToken 개체가 반환됩니다(Minehut.types에서). 이는minehut API에 인증하는 데 필요한 세션 ID와 액세스 토큰을 캡슐화합니다. 세션 ID/토큰을 저장하려는 경우 유용합니다. 주로 MinehutEventprovider에 사용됩니다. 이에 대한 예는 이 문서의 뒷부분에서 볼 수 있습니다.
참고: 이 함수를 호출하기 전에minehut에 로그인해야 합니다.
AuthToken Auth = Minehut . GetAuthToken ( ) ;
이 메서드는 지정된 서버의 MOTD(Minecraft 서버 목록에 표시되는 제목 메시지)를 변경합니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Minehut . ChangeServerMOTD ( Server1ID , "Welcome to my epic minecraft server!" ) ;
그러면 서버의 이름과 IP 주소가 변경됩니다. 이름이 이미 사용된 경우 오류가 발생하므로 try catch에 넣는 것이 좋습니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
try
{
Minehut . ChangeServerName ( Server1ID , "MySky" ) ;
Console . WriteLine ( "Server name changed!" ) ;
}
catch ( ArgumentNullException ex )
{
Console . WriteLine ( "OOPS! that name is already taken!" ) ;
}
이를 사용하면 서버의 속성을 변경할 수 있습니다. 서버 ID, 서버 속성(Minehut.Types에 저장된 ServerProperties Enum 사용) 및 새 속성 값을 지정하면 비행 허용, Nether 허용, 플레이어 업적 발표, 난이도, 명령 블록 활성화, Force 등의 속성을 변경할 수 있습니다. 게임 모드, 게임 모드, 구조 생성, 생성기 설정, 하드코어, 레벨 이름, 레벨 유형, 최대 플레이어 수(10 또는 20, 유료 서버가 있는 경우 더 높아질 수 있음), PVP, 리소스 팩(다운로드 URL), 동물을 생성하고 몹을 생성합니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Minehut . ChangeServerProperty ( Server1ID , Serverproperties . difficulty , "normal" ) ;
Minehut . ChangeServerProperty ( Server1ID , Serverproperties . Level_Name , "world1" ) ;
Minehut . ChangeServerProperty ( Server1ID , Serverproperties . MaxPlayers , 20 ) ;
이를 통해 서버를 공개 또는 비공개로 설정할 수 있습니다. 서버 ID를 지정하고 공개 또는 비공개인지 여부를 지정합니다. 참 = 공개 거짓 = 비공개
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String SuperSecretServersID = MyServers [ 0 ] ;
Minehut . ChangeServerVisibility ( SuperSecretServersID , False ) ;
지정된 플러그인을 Minecraft 서버에 설치합니다. 플러그인 ID를 찾으려면 GetPlugins() 함수를 사용하는 것이 좋습니다. 예를 들어 Essentials 플러그인의 ID는 5a42ba4846246d33fa64c625입니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
IList < Plugin > PublicPlugins = Minehut . GetPlugins ( ) ;
String RandomPluginID = PublicPlugins [ 50 ] . ID ;
//installs a the random plugin
Minehut . InstallServerPlugin ( Server1ID , RandomPluginID ) ;
//installs a the Essentials plugin
Minehut . InstallServerPlugin ( Server1ID , "5a42ba4846246d33fa64c625" ) ;
Minecraft 서버에서 플러그인을 제거합니다. InstallServerPlugin()과 매우 유사하지만 플러그인을 설치하는 대신 제거합니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
IList < InstalledPlugins > MyInstalledPlugins = Minehut . GetServerPlugins ( Server1ID ) ;
String RandomInstalledPluginID = MyInstalledPlugins [ 4 ] . ID ;
//uninstalls a the random plugin
Minehut . RemoveServerPlugin ( Server1ID , RandomPluginID ) ;
//uninstalls a the Essentials plugin
Minehut . RemoveServerPlugin ( Server1ID , "5a42ba4846246d33fa64c625" ) ;
깨지거나 손상된 Minecraft 서버 파일을 수정하는 데 사용되는 모든 Minecraft 서버 파일을 복구합니다.
String [ ] MyServers = Minehut . GetSelfServers ( ) ;
String Sevrer1ID = MyServers [ 0 ] ;
Minehut . RepairServer ( Server1ID ) ;
지정된 서버의 모든 서버 파일을 삭제하고 공장 기본값으로 재설정하며 모든 월드, 플러그인 등을 삭제합니다.
참고: 이 작업은 취소할 수 없습니다. 파일은 영구적으로 손실되므로 이 작업을 수행하기 전에 서버 파일을 백업하는 것이 좋습니다.
Minehut . ResetServer ( ServerID ) ;
그러면 해당 서버에서 해당 플러그인에 대한 구성이 재설정됩니다. 구성 파일이 완전히 손상된 경우 유용합니다.
Minehut . ResetServerPlugin ( ServerID , PluginID ) ;
그러면 기본 서버 세계가 지워지고 재생성됩니다. 기억하세요. 이렇게 하면 서버가 지워지고 모든 것이 손실됩니다.
Minehut . ResetServerWorld ( ServerID ) ;
서버의 세계를 구합니다. /저장과 동일합니다.
Minehut . SaveServer ( ServerID ) ;
콘솔을 통해 지정된 명령을 서버로 보냅니다. 모든 명령은 서버로 실행되므로 운영자 권한이 있습니다.
minehut . SendCommand ( ServerID , "Op ShimmyMySherbet" )
minehut . SendCommand ( ServerID , "Broadcast Server shutting down in 5 minutes!" )
지정된 Minecraft 서버에 대한 서비스 및 서버를 시작합니다.
Minehut . StartService ( ServerID ) ;
마인크래프트 서버를 시작합니다. 참고: 서비스가 이미 온라인 상태인 경우에만 이 방법을 사용하십시오. 일반적으로 StartService()를 사용하는 것이 가장 좋습니다.
Minehut . StartServer ( ServerID ) ;
저장한 다음 Minecraft 서버와 해당 서비스를 종료합니다. 다음 5분 내에 서버를 다시 시작할 계획이 없다면 이 방법을 사용하세요.
Minehut . ShutdownService ( ServerID ) ;
저장한 다음 서버를 종료하지만 서비스는 종료하지 않습니다. 따라서 서버 백업을 빠르게 다시 시작할 수 있습니다. 속성 변경이나 플러그인 변경을 적용하는 데 유용합니다.
Minehut . ShutdownServer ( ServerID ) ;
Minehut 계정에 가입할 수 있습니다. 하지만 이를 위해서는 단지minehut 웹사이트를 사용하는 것이 좋습니다.
Date DateOfBirth = New Date ( 2000 , 9 , 15 ) ;
Minehut . SignUp ( "[email protected]" , DateOfBirth ) ;
그러면minehut이 지정된 이메일로 인증 코드를 보내게 됩니다.
이를 통해 귀하의 이메일 주소로 전송된 이메일 코드를 사용하여 귀하의minehut 계정을 확인할 수 있습니다(위 참조).
Minehut . ConfirmEmail ( "SuperSecretPassword124" , "EmailverificationCode" ) ;