import java.util.ArrayList; import org.jbox2d.common.Vec2; import pulpcore.sprite.Sprite; import pulpfizz.physics.Actor; import pulpfizz.pulp.body.BodySprite; import pulpfizz.pulp.body.PhysicsLayer; public class Challenges { static ArrayList postIts = new ArrayList(); public static void challenge(PhysicsLayer physics, ToyBox box, int count) { for (PostIt p : postIts) { p.physics.remove(p.imgSprite); } postIts.clear(); ArrayList shapes = new ArrayList(); switch (count) { case 1: PostIt pi = new PostIt(physics, GameScene.IMG_LOC + "post-hi.png", 450, 300); postIts.add(pi); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.FULL_RECT); break; case 2: pi = new PostIt(physics, GameScene.IMG_LOC + "post-hi.png", 425, 200); postIts.add(pi); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.HALF_RECT); shapes.add(Blokk.BodyShapes.HALF_RECT); shapes.add(Blokk.BodyShapes.FULL_TRIANGLE_L); shapes.add(Blokk.BodyShapes.FULL_TRIANGLE_R); break; case 3: pi = new PostIt(physics, Blokk.BodyShapes.FULL_CRESCENT_FILL, 450, 160); postIts.add(pi); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.HALF_RECT); shapes.add(Blokk.BodyShapes.HALF_RECT); shapes.add(Blokk.BodyShapes.FULL_CRESCENT); shapes.add(Blokk.BodyShapes.FULL_CRESCENT_FILL); shapes.add(Blokk.BodyShapes.LONG_EDGE); shapes.add(Blokk.BodyShapes.LONG_EDGE); break; case 4: pi = new PostIt(physics,Blokk.BodyShapes.FULL_TRIANGLE_L, 400, 300); postIts.add(pi); pi = new PostIt(physics,Blokk.BodyShapes.HALF_RECT, 500, 250); postIts.add(pi); shapes.add(Blokk.BodyShapes.FULL_RECT); shapes.add(Blokk.BodyShapes.HALF_RECT); shapes.add(Blokk.BodyShapes.FULL_CRESCENT); shapes.add(Blokk.BodyShapes.FULL_CRESCENT_FILL); shapes.add(Blokk.BodyShapes.FULL_TRIANGLE_L); shapes.add(Blokk.BodyShapes.FULL_TRIANGLE_R); shapes.add(Blokk.BodyShapes.LONG_EDGE); shapes.add(Blokk.BodyShapes.SHORT_EDGE); shapes.add(Blokk.BodyShapes.QUARTER_RECT); shapes.add(Blokk.BodyShapes.HALF_TRIANGLE_L); default: break; } int i = 0; float x = -physics.getPhysicsWidth() / 2 + 2; float y = -physics.getPhysicsHeight() / 2 + 6; for (Blokk.BodyShapes shape : shapes) { Blokk b = new Blokk(physics, shape); b.body.setXForm(new Vec2(x, y), 0); y += 3; } } }