package com.indignado.logicbricks.utils.builders.joints; import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.physics.box2d.Body; import com.badlogic.gdx.physics.box2d.World; import com.badlogic.gdx.physics.box2d.joints.RevoluteJointDef; /** * @author Rubentxu. */ public class RevoluteJointBuilder extends BaseJointBuilder<RevoluteJointDef, PulleyJointBuilder> { public RevoluteJointBuilder(World world) { super(world); } @Override public void reset() { jointDef = new RevoluteJointDef(); } public RevoluteJointBuilder initialize(Body bodyA, Body bodyB, Vector2 anchor) { jointDef.initialize(bodyA, bodyB, anchor); return this; } public RevoluteJointBuilder referenceAngle(float referenceAngle) { jointDef.referenceAngle = referenceAngle; return this; } public RevoluteJointBuilder enableLimit(boolean enableLimit) { jointDef.enableLimit = enableLimit; return this; } public RevoluteJointBuilder lowerAngle(float lowerAngle) { jointDef.lowerAngle = lowerAngle; return this; } public RevoluteJointBuilder upperAngle(float upperAngle) { jointDef.upperAngle = upperAngle; return this; } public RevoluteJointBuilder enableMotor(boolean enableMotor) { jointDef.enableMotor = enableMotor; return this; } public RevoluteJointBuilder motorSpeed(float motorSpeed) { jointDef.motorSpeed = motorSpeed; return this; } public RevoluteJointBuilder maxMotorTorque(float maxMotorTorque) { jointDef.maxMotorTorque = maxMotorTorque; return this; } }