JScratch
Loading...
Searching...
No Matches
Project.java
Go to the documentation of this file.
1package com.jscratch;
2
3import java.util.ArrayList;
4import java.util.List;
5import java.util.Map;
6import java.util.HashMap;
7
11public class Project {
12 public String name = "New Project";
13 public int blockIdCounter = 1;
14 public StageData stage = new StageData();
15 public List<SpriteData> sprites = new ArrayList<>();
17
18 public Project() {
19 // Main is a special built-in sprite/class that coordinates the project
20 sprites.add(new SpriteData("Main"));
21 sprites.add(new SpriteData("Sprite1"));
22 }
23
24 public static class StageData {
25 public int width = 480;
26 public int height = 360;
27 public List<String> backdrops = new ArrayList<>();
28 public int currentBackdropIndex = 0;
29 }
30
31 public static class SpriteData {
32 public String name;
33 public List<String> costumes = new ArrayList<>();
34 public List<String> sounds = new ArrayList<>();
35 public String sourceCode = "";
36
37 public SpriteData(String name) {
38 this.name = name;
39 }
40 }
41
42 public static class MapMakerData {
43 public int width = 60, height = 45;
44 public int tileSize = 8;
45 public int displayScale = 4;
46 public List<LayerData> layers = new ArrayList<>();
47 public Map<Integer, String> tileAssets = new HashMap<>(); // ID -> Costume Name
48
49 public MapMakerData() {
50 layers.add(new LayerData("Background", width, height));
51 layers.add(new LayerData("Main", width, height));
52 layers.add(new LayerData("Foreground", width, height));
53 }
54 }
55
56 public static class LayerData {
57 public String name;
58 public int[][] tiles;
59
60 public LayerData(String name, int w, int h) {
61 this.name = name;
62 this.tiles = new int[w][h];
63 }
64 }
65}
LayerData(String name, int w, int h)
Definition Project.java:60
Map< Integer, String > tileAssets
Definition Project.java:47
List< SpriteData > sprites
Definition Project.java:15
MapMakerData mapMaker
Definition Project.java:16