package com.gushikustudios.rube; import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.physics.box2d.BodyDef; import com.badlogic.gdx.physics.box2d.FixtureDef; import com.badlogic.gdx.physics.box2d.joints.DistanceJointDef; import com.badlogic.gdx.physics.box2d.joints.FrictionJointDef; import com.badlogic.gdx.physics.box2d.joints.GearJointDef; import com.badlogic.gdx.physics.box2d.joints.MouseJointDef; import com.badlogic.gdx.physics.box2d.joints.PrismaticJointDef; import com.badlogic.gdx.physics.box2d.joints.PulleyJointDef; import com.badlogic.gdx.physics.box2d.joints.RevoluteJointDef; import com.badlogic.gdx.physics.box2d.joints.RopeJointDef; import com.badlogic.gdx.physics.box2d.joints.WeldJointDef; import com.badlogic.gdx.physics.box2d.joints.WheelJointDef; import com.gushikustudios.rube.loader.serializers.utils.RubeImage; /** * Static data that give the default values to use for a bunch of parameters. * Default values can be changed if done before the loading of a {@link RubeScene}. * @author clement.vayer */ public class RubeDefaults { public static class World { public static final Vector2 gravity = new Vector2(0.0f, -9.81f); public static boolean allowSleep = true; public static boolean autoClearForces = true; public static boolean continuousPhysics = true; public static boolean warmStarting = true; public static int stepsPerSecond = 60; public static int positionIterations = 3; public static int velocityIterations = 8; } public static class Body { public static final BodyDef definition = new BodyDef(); } public static class RubeFixtureDef extends FixtureDef { public RubeFixtureDef() { super(); friction = 0; // Mario defined this as 0.2 in FixtureDef. If it's 0 in RUBE, then it doesn't appear in the .JSON } } public static class Fixture { public static final FixtureDef definition = new RubeFixtureDef(); } public static class Joint { public static final boolean collideConnected= false; public static final RevoluteJointDef revoluteDef = new RevoluteJointDef(); public static final PrismaticJointDef prismaticDef = new PrismaticJointDef(); public static final DistanceJointDef distanceDef = new DistanceJointDef(); public static final PulleyJointDef pulleyDef = new PulleyJointDef(); public static final MouseJointDef mouseDef = new MouseJointDef(); public static final GearJointDef gearDef = new GearJointDef(); public static final WheelJointDef wheelDef = new WheelJointDef(); public static final WeldJointDef weldDef = new WeldJointDef(); public static final FrictionJointDef frictionDef = new FrictionJointDef(); public static final RopeJointDef ropeDef = new RopeJointDef(); } public static class Image { public static final RubeImage image = new RubeImage(); public static final int [] colorArray = new int[]{255,255,255,255}; } }