GH-1795 add terminal launch option to use a specific Minecraft profile
Used like this: ``` ./MultiMC --launch 1.17.1 --profile MultiMCTest --server mc.hypixel.net ```
This commit is contained in:
@ -4,6 +4,7 @@
|
||||
#include <tools/BaseProfiler.h>
|
||||
|
||||
#include "minecraft/launch/MinecraftServerTarget.h"
|
||||
#include "minecraft/auth/MinecraftAccount.h"
|
||||
|
||||
class InstanceWindow;
|
||||
class LaunchController: public Task
|
||||
@ -15,39 +16,45 @@ public:
|
||||
LaunchController(QObject * parent = nullptr);
|
||||
virtual ~LaunchController(){};
|
||||
|
||||
void setInstance(InstancePtr instance)
|
||||
{
|
||||
void setInstance(InstancePtr instance) {
|
||||
m_instance = instance;
|
||||
}
|
||||
InstancePtr instance()
|
||||
{
|
||||
|
||||
InstancePtr instance() {
|
||||
return m_instance;
|
||||
}
|
||||
void setOnline(bool online)
|
||||
{
|
||||
|
||||
void setOnline(bool online) {
|
||||
m_online = online;
|
||||
}
|
||||
void setProfiler(BaseProfilerFactory *profiler)
|
||||
{
|
||||
|
||||
void setProfiler(BaseProfilerFactory *profiler) {
|
||||
m_profiler = profiler;
|
||||
}
|
||||
void setParentWidget(QWidget * widget)
|
||||
{
|
||||
|
||||
void setParentWidget(QWidget * widget) {
|
||||
m_parentWidget = widget;
|
||||
}
|
||||
void setServerToJoin(MinecraftServerTargetPtr serverToJoin)
|
||||
{
|
||||
|
||||
void setServerToJoin(MinecraftServerTargetPtr serverToJoin) {
|
||||
m_serverToJoin = std::move(serverToJoin);
|
||||
}
|
||||
|
||||
void setAccountToUse(MinecraftAccountPtr accountToUse) {
|
||||
m_accountToUse = std::move(accountToUse);
|
||||
}
|
||||
|
||||
QString id()
|
||||
{
|
||||
return m_instance->id();
|
||||
}
|
||||
|
||||
bool abort() override;
|
||||
|
||||
private:
|
||||
void login();
|
||||
void launchInstance();
|
||||
void decideAccount();
|
||||
|
||||
private slots:
|
||||
void readyForLaunch();
|
||||
@ -62,6 +69,7 @@ private:
|
||||
InstancePtr m_instance;
|
||||
QWidget * m_parentWidget = nullptr;
|
||||
InstanceWindow *m_console = nullptr;
|
||||
MinecraftAccountPtr m_accountToUse = nullptr;
|
||||
AuthSessionPtr m_session;
|
||||
shared_qobject_ptr<LaunchTask> m_launcher;
|
||||
MinecraftServerTargetPtr m_serverToJoin;
|
||||
|
Reference in New Issue
Block a user