// Path: src/org/sinrel/engine/Engine.java
// public class Engine {
// 	
// 	private EngineSettings settings;
// 	
// 	private Intent intent;
// 	private Config config;
// 	
// 	private Downloader downloader;
// 	private Checker checker;
// 	private AuthBehavior auth;
// 	private MinecraftStarter starter;
// 	
// 	private boolean debug = false;
// 	
// 	public Engine( EngineSettings settings ) {
// 		try {
// 			intent = new Intent(this);
// 			setSettings(settings);
// 			config = new DefaultConfig(this);
// 			downloader = new DefaultDownloader();
// 			checker = new DefaultChecker();
// 			auth = new DefaultAuthBehavior();
// 			starter = new MinecraftAppletStarter();
// 		}catch( Exception e ) {
// 			FatalError.showErrorWindow(e);
// 		}
// 	}	
// 	
// 	public EngineSettings getSettings() {
// 		return settings;
// 	}
// 	
// 	public Downloader getDownloader() {
// 		return downloader;
// 	}
// 	
// 	public Checker getChecker() {
// 		return checker;
// 	}
// 	
// 	public AuthBehavior getAuth() {
// 		return auth;
// 	}
// 		
// 	public Intent getIntent(){
// 		return intent;
// 	}
// 	
// 	public Config getConfig() {
// 		return config;
// 	}
// 	
// 	public MinecraftStarter getStarter(){
// 		return starter;
// 	}
// 	
// 	public void setSettings(EngineSettings settings){
// 		if( settings == null ) throw new NullPointerException();
// 		this.settings = settings;
// 	}
// 	
// 	public void setDownloader(Downloader downloader) {
// 		if( downloader == null ) throw new NullPointerException();
// 		this.downloader = downloader;
// 	}
// 	
// 	public void setChecker( Checker checker ) {
// 		if( checker == null ) throw new NullPointerException();
// 		this.checker = checker;
// 	}
// 	
// 	public void setAuth(AuthBehavior auth) {
// 		if( auth == null ) throw new NullPointerException();
// 		this.auth = auth;
// 	}
// 			
// 	public void setConfig( Config config ) {
// 		if( config == null ) throw new NullPointerException();
// 		this.config = config;
// 	}
// 	
// 	public void setMinecraftStarter( MinecraftStarter starter ){
// 		if( starter == null ) throw new NullPointerException();
// 		this.starter = starter;
// 	}
// 	
// 	public void useDebug( boolean debug ) {
// 		this.debug = debug;
// 	}
// 	
// 	public boolean isDebug(){
// 		return debug;
// 	}
// 	
// }


import java.io.File;
import org.sinrel.engine.Engine;

package org.sinrel.engine.library;



public final class OSManager {
	
	/**
	 * @param name Имя рабочей папки
 	 * @param clientName Имя сервера, к которому принадлежит клиент
	 * @return Возвращает директорию в которой содержатся файлы клиента
	 * Пример:
	 *  name = sinrel
	 *  clientName = simple
	 *  Будет возвращена директория - C:\Users\%USERNAME%\AppData\Roaming\.sinrel\simple\bin (Для Windows)
	 */
	public static final File getClientFolder( String workingDirectory, String clientName ) {
		return new File( getWorkingDirectory( workingDirectory ).getPath() , clientName + File.separator + "bin" + File.separator );		
	}
	

// Path: src/org/sinrel/engine/Engine.java
// public class Engine {
// 	
// 	private EngineSettings settings;
// 	
// 	private Intent intent;
// 	private Config config;
// 	
// 	private Downloader downloader;
// 	private Checker checker;
// 	private AuthBehavior auth;
// 	private MinecraftStarter starter;
// 	
// 	private boolean debug = false;
// 	
// 	public Engine( EngineSettings settings ) {
// 		try {
// 			intent = new Intent(this);
// 			setSettings(settings);
// 			config = new DefaultConfig(this);
// 			downloader = new DefaultDownloader();
// 			checker = new DefaultChecker();
// 			auth = new DefaultAuthBehavior();
// 			starter = new MinecraftAppletStarter();
// 		}catch( Exception e ) {
// 			FatalError.showErrorWindow(e);
// 		}
// 	}	
// 	
// 	public EngineSettings getSettings() {
// 		return settings;
// 	}
// 	
// 	public Downloader getDownloader() {
// 		return downloader;
// 	}
// 	
// 	public Checker getChecker() {
// 		return checker;
// 	}
// 	
// 	public AuthBehavior getAuth() {
// 		return auth;
// 	}
// 		
// 	public Intent getIntent(){
// 		return intent;
// 	}
// 	
// 	public Config getConfig() {
// 		return config;
// 	}
// 	
// 	public MinecraftStarter getStarter(){
// 		return starter;
// 	}
// 	
// 	public void setSettings(EngineSettings settings){
// 		if( settings == null ) throw new NullPointerException();
// 		this.settings = settings;
// 	}
// 	
// 	public void setDownloader(Downloader downloader) {
// 		if( downloader == null ) throw new NullPointerException();
// 		this.downloader = downloader;
// 	}
// 	
// 	public void setChecker( Checker checker ) {
// 		if( checker == null ) throw new NullPointerException();
// 		this.checker = checker;
// 	}
// 	
// 	public void setAuth(AuthBehavior auth) {
// 		if( auth == null ) throw new NullPointerException();
// 		this.auth = auth;
// 	}
// 			
// 	public void setConfig( Config config ) {
// 		if( config == null ) throw new NullPointerException();
// 		this.config = config;
// 	}
// 	
// 	public void setMinecraftStarter( MinecraftStarter starter ){
// 		if( starter == null ) throw new NullPointerException();
// 		this.starter = starter;
// 	}
// 	
// 	public void useDebug( boolean debug ) {
// 		this.debug = debug;
// 	}
// 	
// 	public boolean isDebug(){
// 		return debug;
// 	}
// 	
// }


// Path: src/org/sinrel/engine/library/OSManager.java
import java.io.File;
import org.sinrel.engine.Engine;

package org.sinrel.engine.library;



public final class OSManager {
	
	/**
	 * @param name Имя рабочей папки
 	 * @param clientName Имя сервера, к которому принадлежит клиент
	 * @return Возвращает директорию в которой содержатся файлы клиента
	 * Пример:
	 *  name = sinrel
	 *  clientName = simple
	 *  Будет возвращена директория - C:\Users\%USERNAME%\AppData\Roaming\.sinrel\simple\bin (Для Windows)
	 */
	public static final File getClientFolder( String workingDirectory, String clientName ) {
		return new File( getWorkingDirectory( workingDirectory ).getPath() , clientName + File.separator + "bin" + File.separator );		
	}
	

	public static final File getClientFolder( Engine engine, String clientName ) {
