Package tripleplay.demo

Source Code of tripleplay.demo.TripleDemoJava

//
// Triple Play - utilities for use in PlayN-based games
// Copyright (c) 2011-2014, Three Rings Design, Inc. - All rights reserved.
// http://github.com/threerings/tripleplay/blob/master/LICENSE

package tripleplay.demo;

import java.util.List;

import com.google.common.collect.Lists;

import playn.core.Image;
import playn.core.PlayN;
import playn.java.JavaPlatform;
import playn.java.SWTPlatform;
import tripleplay.platform.JavaTPPlatform;
import tripleplay.platform.SWTTPPlatform;

public class TripleDemoJava
{
    enum Toolkit { NONE, AWT, SWT }

    public static void main (String[] args) {
        JavaPlatform.Config config = new JavaPlatform.Config();
        config.appName = "Tripleplay Demo";

        Toolkit tk = Toolkit.NONE;
        List<String> mainArgs = Lists.newArrayList();
        String size = "--size=";
        for (int ii = 0; ii < args.length; ii++) {
            if (args[ii].startsWith(size)) {
                String[] wh = args[ii].substring(size.length()).split("x");
                config.width = Integer.parseInt(wh[0]);
                config.height = Integer.parseInt(wh[1]);
            } else if (args[ii].equals("--swt")) tk = Toolkit.SWT;
            else if (args[ii].equals("--awt")) tk = Toolkit.AWT;
            else if (args[ii].equals("--retina")) config.scaleFactor = 2;
            else mainArgs.add(args[ii]);
        }

        TripleDemo.mainArgs = mainArgs.toArray(new String[0]);
        switch (tk) {
        case SWT: {
            config.appName += " (SWT)";
            SWTPlatform platform = SWTPlatform.register(config);
            SWTTPPlatform.register(platform, config);
            SWTTPPlatform.instance().setIcon(loadIcon());
            break;
        }
        case AWT: {
            JavaPlatform platform = JavaPlatform.register(config);
            JavaTPPlatform.register(platform, config);
            JavaTPPlatform.instance().setIcon(loadIcon());
            break;
        }
        default:
            // no native integration
            JavaPlatform.register(config);
            break;
        }
        PlayN.run(new TripleDemo());
    }

    protected static Image loadIcon () {
        return PlayN.assets().getImageSync("icon.png");
    }
}
TOP

Related Classes of tripleplay.demo.TripleDemoJava

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.