minecraft172吧 关注:6贴子:602
  • 14回复贴,共1

用KMCCC核心制作Minecraft启动器

只看楼主收藏回复

最近闲的蛋疼来这个贴吧赚赚
一楼喂班主任


IP属地:天津1楼2018-04-07 00:52回复
    http://www.mcbbs.net/forum.php?mod=viewthread&tid=492606&highlight=KMCCC
    KMCCC(Kblack's Minecraft Core Code)是Kblack(@zhouyiran2 )制作的一个C#版的启动核心,拥有以下优点
    功能多:包含Json解析(LitJson),Java路径获取,Versions版本获取,文件解压,系统信息获取,以及Libraries文件获取、MojangAPI等。
    开源:任何人都可以免费使用,如需修改源码,请务必遵守LGPL协议。
    简单:启动只需要几句代码即可。
    我制作启动器参照的是官方教程,也就是顶上那个链接


    IP属地:天津2楼2018-04-07 01:23
    回复
      首先在Github中下载项目,并且在编译器中编译
      新建一个项目(我是C#),引用KMCCC.PRO.dll


      IP属地:天津3楼2018-04-07 01:24
      收起回复

        在app.xmal.xs(我是WPF,如果是winform是program.cs)
        添加引用
        using KMCCC.Launcher;
        添加代码
        public static LauncherCore Core = LauncherCore.Create();


        IP属地:天津4楼2018-04-07 01:30
        回复
          Reporter.SetClientName("启动器名称+版本");
          这行代码是KMCCC统计用,加不加都不影响正常启动游戏


          IP属地:天津5楼2018-04-07 01:34
          回复
            在mainwindows.xaml中添加两个控件,一个ComboBox,一个Button,我起的名字是 VersionComboBox和 Launch
            添加代码
            var versions = App.Core.GetVersions().ToArray();//定义变量获取版本列表
            VersionComboBox.ItemsSource = versions;//绑定数据源
            VersionComboBox.DisplayMemberPath = "Id";//设置comboBox显示的为版本Id

            如果是winform则添加代码:
            versions = Program.Core.GetVersions().ToArray();
            comboBox1.DataSource = versions;//绑定数据源
            comboBox1.DisplayMember = "Id";//设置comboBox显示的为版本Id
            然后打开xaml文件,在combobox添加
            DisplayMemberPath="Id"

            添加在
            <ComboBox x:Name="VersionComboBox"

            />中间即可。
            我因为设置了很多乱七八糟的,可能会有点长
            <ComboBox x:Name="VersionComboBox" HorizontalAlignment="Left" VerticalAlignment="Top" Width="150" Height="30" Margin="65,10,0,0" FontSize="18" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" Foreground="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" BorderBrush="White" DisplayMemberPath="Id" IsSynchronizedWithCurrentItem="True" FontWeight="Bold"/>


            IP属地:天津6楼2018-04-07 16:05
            回复
              在mainwindows.xaml中添加两个控件,一个ComboBox,一个Button,我起的名字是 VersionComboBox和 Launch
              添加代码
              var versions = App.Core.GetVersions().ToArray();//定义变量获取版本列表
              VersionComboBox.ItemsSource = versions;//绑定数据源
              VersionComboBox.DisplayMemberPath = "Id";//设置comboBox显示的为版本Id

              如果是winform则添加代码:
              versions = Program.Core.GetVersions().ToArray();
              comboBox1.DataSource = versions;//绑定数据源
              comboBox1.DisplayMember = "Id";//设置comboBox显示的为版本Id
              然后打开xaml文件,在combobox添加
              DisplayMemberPath="Id"

              添加在
              <ComboBox x:Name="VersionComboBox"

              />中间即可。
              我因为设置了很多乱七八糟的,可能会有点长
              <ComboBox x:Name="VersionComboBox" HorizontalAlignment="Left" VerticalAlignment="Top" Width="150" Height="30" Margin="65,10,0,0" FontSize="18" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" Foreground="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" BorderBrush="White" DisplayMemberPath="Id" IsSynchronizedWithCurrentItem="True" FontWeight="Bold"/>


              IP属地:天津7楼2018-04-07 16:05
              回复(2)
                在mainwindows.xaml中添加两个控件,一个ComboBox,一个Button,我起的名字是 VersionComboBox和 Launch
                添加代码
                var versions = App.Core.GetVersions().ToArray();//定义变量获取版本列表
                VersionComboBox.ItemsSource = versions;//绑定数据源
                VersionComboBox.DisplayMemberPath = "Id";//设置comboBox显示的为版本Id

                如果是winform则添加代码:
                versions = Program.Core.GetVersions().ToArray();
                comboBox1.DataSource = versions;//绑定数据源
                comboBox1.DisplayMember = "Id";//设置comboBox显示的为版本Id
                然后打开xaml文件,在combobox添加
                DisplayMemberPath="Id"

                添加在
                <ComboBox x:Name="VersionComboBox"

                />中间即可。
                我因为设置了很多乱七八糟的,可能会有点长
                <ComboBox x:Name="VersionComboBox" HorizontalAlignment="Left" VerticalAlignment="Top" Width="150" Height="30" Margin="65,10,0,0" FontSize="18" Background="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" Foreground="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" BorderBrush="White" DisplayMemberPath="Id" IsSynchronizedWithCurrentItem="True" FontWeight="Bold"/>


                IP属地:天津8楼2018-04-18 10:51
                回复
                  lz可以把你的这个启动器发出来吗?


                  来自手机贴吧9楼2019-03-22 18:56
                  收起回复
                    死在第一步了
                    怎么引用dll


                    IP属地:广东10楼2020-12-10 21:05
                    回复