Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions src/examples/java/reference/SpriteAddCostumes.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteAddCostumes {
public SpriteAddCostumes() {
Stage myStage = new Stage(600, 240);
Sprite mySprite = new Sprite();

// Add costumes from spritesheet (using bee animation as example)
mySprite.addCostumes("frame", "assets/bee_idle.png", 36, 34);
mySprite.setSize(200); // Make it bigger to see clearly

myStage.add(mySprite);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Cycle through the costumes added from spritesheet
for (int i = 0; i < 12; i++) { // Assuming multiple frames were added
mySprite.switchCostume("frame" + (i % 6)); // Cycle through frames
myStage.wait(200);
}

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteAddCostumes();
}
}
33 changes: 33 additions & 0 deletions src/examples/java/reference/SpriteChangeHeight.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteChangeHeight {
public SpriteChangeHeight() {
Stage myStage = new Stage(600, 240);
Sprite gamma = new Sprite("gamma", "assets/gamma_purple_badge.png");
myStage.add(gamma);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Change height by increasing and decreasing
while (myStage.getTimer().forMillis(2000)) {
gamma.changeHeight(3);
myStage.wait(50);
}

while (myStage.getTimer().forMillis(4000)) {
gamma.changeHeight(-4);
myStage.wait(50);
}

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteChangeHeight();
}
}
34 changes: 34 additions & 0 deletions src/examples/java/reference/SpriteChangePosition.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;
import org.openpatch.scratch.extensions.math.Vector2;

public class SpriteChangePosition {
public SpriteChangePosition() {
Stage myStage = new Stage(600, 240);
Sprite gamma = new Sprite("gamma", "assets/gamma_purple_badge.png");
myStage.add(gamma);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Change position using vectors
for (int i = 0; i < 6; i++) {
Vector2 change = new Vector2(50, 30);
gamma.changePosition(change);
myStage.wait(400);

change = new Vector2(-30, -20);
gamma.changePosition(change);
myStage.wait(400);
}

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteChangePosition();
}
}
34 changes: 34 additions & 0 deletions src/examples/java/reference/SpriteChangeSize.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteChangeSize {
public SpriteChangeSize() {
Stage myStage = new Stage(600, 240);
Sprite gamma = new Sprite("gamma", "assets/gamma_purple_badge.png");
myStage.add(gamma);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Change size by increasing it
while (myStage.getTimer().forMillis(2000)) {
gamma.changeSize(2);
myStage.wait(50);
}

// Change size by decreasing it
while (myStage.getTimer().forMillis(4000)) {
gamma.changeSize(-3);
myStage.wait(50);
}

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteChangeSize();
}
}
33 changes: 33 additions & 0 deletions src/examples/java/reference/SpriteChangeWidth.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteChangeWidth {
public SpriteChangeWidth() {
Stage myStage = new Stage(600, 240);
Sprite gamma = new Sprite("gamma", "assets/gamma_purple_badge.png");
myStage.add(gamma);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Change width by increasing and decreasing
while (myStage.getTimer().forMillis(2000)) {
gamma.changeWidth(3);
myStage.wait(50);
}

while (myStage.getTimer().forMillis(4000)) {
gamma.changeWidth(-4);
myStage.wait(50);
}

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteChangeWidth();
}
}
36 changes: 36 additions & 0 deletions src/examples/java/reference/SpriteClone.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteClone {
public SpriteClone() {
Stage myStage = new Stage(600, 240);
Sprite original = new Sprite("gamma", "assets/gamma_purple_badge.png");
original.setPosition(-100, 0);
myStage.add(original);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Clone the sprite
Sprite clone = original.clone();
clone.setPosition(100, 0);
myStage.add(clone);

myStage.wait(1500);

// Move both sprites to show they are independent
original.move(30);
clone.move(-30);

myStage.wait(1500);

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteClone();
}
}
41 changes: 41 additions & 0 deletions src/examples/java/reference/SpriteDisableHitbox.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteDisableHitbox {
public SpriteDisableHitbox() {
Stage myStage = new Stage(600, 240);
Sprite gamma = new Sprite("gamma", "assets/gamma_purple_badge.png");
Sprite zeta = new Sprite("zeta", "assets/zeta_green_badge.png");

gamma.setPosition(-20, 0);
zeta.setPosition(20, 0);

myStage.add(gamma);
myStage.add(zeta);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Check collision before disabling hitbox
gamma.say("Touching: " + gamma.isTouchingSprite(zeta));
myStage.wait(1500);

// Disable hitbox
gamma.disableHitbox();
gamma.say("Hitbox disabled");
myStage.wait(1000);

// Check collision after disabling
gamma.say("Touching: " + gamma.isTouchingSprite(zeta));
myStage.wait(1500);

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteDisableHitbox();
}
}
34 changes: 34 additions & 0 deletions src/examples/java/reference/SpriteDisableNineSlice.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteDisableNineSlice {
public SpriteDisableNineSlice() {
Stage myStage = new Stage(600, 240);
Sprite mySprite = new Sprite("zeta", "assets/zeta_green_badge.png");
myStage.add(mySprite);

// First enable nine-slice
mySprite.setNineSlice(10, 10, 10, 10);
mySprite.setSize(200);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

mySprite.say("Nine-slice enabled");
myStage.wait(1500);

// Disable nine-slice
mySprite.disableNineSlice();
mySprite.say("Nine-slice disabled");
myStage.wait(1500);

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteDisableNineSlice();
}
}
44 changes: 44 additions & 0 deletions src/examples/java/reference/SpriteEnableHitbox.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteEnableHitbox {
public SpriteEnableHitbox() {
Stage myStage = new Stage(600, 240);
Sprite gamma = new Sprite("gamma", "assets/gamma_purple_badge.png");
Sprite zeta = new Sprite("zeta", "assets/zeta_green_badge.png");

gamma.setPosition(-20, 0);
zeta.setPosition(20, 0);

myStage.add(gamma);
myStage.add(zeta);

// Start with disabled hitbox
gamma.disableHitbox();

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Check collision with disabled hitbox
gamma.say("Touching: " + gamma.isTouchingSprite(zeta));
myStage.wait(1500);

// Enable hitbox
gamma.enableHitbox();
gamma.say("Hitbox enabled");
myStage.wait(1000);

// Check collision after enabling
gamma.say("Touching: " + gamma.isTouchingSprite(zeta));
myStage.wait(1500);

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteEnableHitbox();
}
}
27 changes: 27 additions & 0 deletions src/examples/java/reference/SpriteGetCurrentDay.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteGetCurrentDay {
public SpriteGetCurrentDay() {
Stage myStage = new Stage(600, 240);
Sprite mySprite = new Sprite("zeta", "assets/zeta_green_badge.png");
myStage.add(mySprite);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Display current day
int currentDay = mySprite.getCurrentDay();
mySprite.say("Current Day: " + currentDay);
myStage.wait(3000);

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteGetCurrentDay();
}
}
27 changes: 27 additions & 0 deletions src/examples/java/reference/SpriteGetCurrentHour.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package reference;
import org.openpatch.scratch.*;
import org.openpatch.scratch.extensions.recorder.*;

public class SpriteGetCurrentHour {
public SpriteGetCurrentHour() {
Stage myStage = new Stage(600, 240);
Sprite mySprite = new Sprite("zeta", "assets/zeta_green_badge.png");
myStage.add(mySprite);

GifRecorder recorder =
new GifRecorder("examples/reference/" + this.getClass().getName() + ".gif");
recorder.start();

// Display current hour
int currentHour = mySprite.getCurrentHour();
mySprite.say("Current Hour: " + currentHour);
myStage.wait(3000);

recorder.stop();
myStage.exit();
}

public static void main(String[] args) {
new SpriteGetCurrentHour();
}
}
Loading