예제 #1
0
QStringList OneSixInstance::processMinecraftArgs( QString user, QString session )
{
	I_D(OneSixInstance);
	auto version = d->version;
	QString args_pattern = version->minecraftArguments;
	
	QMap<QString, QString> token_mapping;
	token_mapping["auth_username"] = user;
	token_mapping["auth_session"] = session;
	//FIXME: user and player name are DIFFERENT!
	token_mapping["auth_player_name"] = user;
	//FIXME: WTF is this. I just plugged in a random UUID here.
	token_mapping["auth_uuid"] = "7d4bacf0-fd62-11e2-b778-0800200c9a66"; // obviously fake.
	
	// this is for offline:
	/*
	map["auth_player_name"] = "Player";
	map["auth_player_name"] = "00000000-0000-0000-0000-000000000000";
	*/
	
	token_mapping["profile_name"] = name();
	token_mapping["version_name"] = version->id;

	QString absRootDir = QDir(minecraftRoot()).absolutePath();
	token_mapping["game_directory"] = absRootDir;
	QString absAssetsDir = QDir("assets/").absolutePath();
	token_mapping["game_assets"] = absAssetsDir;
	
	QStringList parts = args_pattern.split(' ',QString::SkipEmptyParts);
	for (int i = 0; i < parts.length(); i++)
	{
		parts[i] = replaceTokensIn(parts[i], token_mapping);
	}
	return parts;
}
예제 #2
0
QStringList OneSixInstance::processMinecraftArgs(LoginResponse response)
{
	I_D(OneSixInstance);
	auto version = d->version;
	QString args_pattern = version->minecraftArguments;

	QMap<QString, QString> token_mapping;
	// yggdrasil!
	token_mapping["auth_username"] = response.username;
	token_mapping["auth_session"] = response.session_id;
	token_mapping["auth_access_token"] = response.access_token;
	token_mapping["auth_player_name"] = response.player_name;
	token_mapping["auth_uuid"] = response.player_id;

	// this is for offline?:
	/*
	map["auth_player_name"] = "Player";
	map["auth_player_name"] = "00000000-0000-0000-0000-000000000000";
	*/

	// these do nothing and are stupid.
	token_mapping["profile_name"] = name();
	token_mapping["version_name"] = version->id;

	QString absRootDir = QDir(minecraftRoot()).absolutePath();
	token_mapping["game_directory"] = absRootDir;
	QString absAssetsDir = QDir("assets/").absolutePath();
	token_mapping["game_assets"] = absAssetsDir;

	QStringList parts = args_pattern.split(' ', QString::SkipEmptyParts);
	for (int i = 0; i < parts.length(); i++)
	{
		parts[i] = replaceTokensIn(parts[i], token_mapping);
	}
	return parts;
}