package com.indignado.logicbricks.utils.builders.joints; import com.badlogic.gdx.physics.box2d.World; /** * @author Rubentxu */ public class JointBuilder { private final World world; private DistanceJointBuilder distanceJointBuilder; private FrictionJointBuilder frictionJointBuilder; private GearJointBuilder gearJointBuilder; private PrismaticJointBuilder prismaticJointBuilder; private PulleyJointBuilder pulleyJointBuilder; private RevoluteJointBuilder revoluteJointBuilder; private RopeJointBuilder ropeJointBuilder; private WeldJointBuilder weldJointBuilder; private WheelJointBuilder wheelJointBuilder; public JointBuilder(World world) { this.world = world; } public DistanceJointBuilder distanceJoint() { if (distanceJointBuilder == null) distanceJointBuilder = new DistanceJointBuilder(world); else distanceJointBuilder.reset(); return distanceJointBuilder; } public FrictionJointBuilder frictionJoint() { if (frictionJointBuilder == null) frictionJointBuilder = new FrictionJointBuilder(world); else frictionJointBuilder.reset(); return frictionJointBuilder; } public GearJointBuilder gearJoint() { if (gearJointBuilder == null) gearJointBuilder = new GearJointBuilder(world); else gearJointBuilder.reset(); return gearJointBuilder; } public PrismaticJointBuilder prismaticJoint() { if (prismaticJointBuilder == null) prismaticJointBuilder = new PrismaticJointBuilder(world); else prismaticJointBuilder.reset(); return prismaticJointBuilder; } public PulleyJointBuilder pulleyJoint() { if (pulleyJointBuilder == null) pulleyJointBuilder = new PulleyJointBuilder(world); else pulleyJointBuilder.reset(); return pulleyJointBuilder; } public RevoluteJointBuilder revoluteJoint() { if (revoluteJointBuilder == null) revoluteJointBuilder = new RevoluteJointBuilder(world); else revoluteJointBuilder.reset(); return revoluteJointBuilder; } public RopeJointBuilder ropeJoint() { if (ropeJointBuilder == null) ropeJointBuilder = new RopeJointBuilder(world); else ropeJointBuilder.reset(); return ropeJointBuilder; } public WeldJointBuilder weldJoint() { if (weldJointBuilder == null) weldJointBuilder = new WeldJointBuilder(world); else weldJointBuilder.reset(); return weldJointBuilder; } public WheelJointBuilder wheelJoint() { if (wheelJointBuilder == null) wheelJointBuilder = new WheelJointBuilder(world); else wheelJointBuilder.reset(); return wheelJointBuilder; } }