Files
Mindustry/ios/src/io/anuke/mindustry/IOSLauncher.java
2018-04-28 10:14:57 -04:00

63 lines
2.0 KiB
Java

package io.anuke.mindustry;
import com.badlogic.gdx.backends.iosrobovm.IOSApplication;
import com.badlogic.gdx.backends.iosrobovm.IOSApplicationConfiguration;
import io.anuke.kryonet.KryoClient;
import io.anuke.kryonet.KryoServer;
import io.anuke.mindustry.io.Platform;
import io.anuke.mindustry.net.Net;
import io.anuke.ucore.scene.ui.TextField;
import org.robovm.apple.foundation.NSAutoreleasePool;
import org.robovm.apple.uikit.UIApplication;
import java.text.DateFormat;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
public class IOSLauncher extends IOSApplication.Delegate {
@Override
protected IOSApplication createApplication() {
Net.setClientProvider(new KryoClient());
Net.setServerProvider(new KryoServer());
Platform.instance = new Platform() {
DateFormat format = SimpleDateFormat.getDateTimeInstance();
@Override
public String format(Date date) {
return format.format(date);
}
@Override
public String format(int number) {
return NumberFormat.getIntegerInstance().format(number);
}
@Override
public void addDialog(TextField field) {
TextFieldDialogListener.add(field, 16);
}
@Override
public void addDialog(TextField field, int maxLength) {
TextFieldDialogListener.add(field, maxLength);
}
@Override
public String getLocaleName(Locale locale) {
return locale.getDisplayName(locale);
}
};
IOSApplicationConfiguration config = new IOSApplicationConfiguration();
return new IOSApplication(new Mindustry(), config);
}
public static void main(String[] argv) {
NSAutoreleasePool pool = new NSAutoreleasePool();
UIApplication.main(argv, null, IOSLauncher.class);
pool.close();
}
}