Browse Source

Physics platform updates

Josh Engebretson 10 years ago
parent
commit
3dc60b8bae
39 changed files with 572 additions and 5 deletions
  1. 49 0
      PhysicsPlatformerNew/Resources/Components/Bat.js
  2. 7 0
      PhysicsPlatformerNew/Resources/Components/Bat.js.asset
  3. 68 0
      PhysicsPlatformerNew/Resources/Components/Coin.js
  4. 7 0
      PhysicsPlatformerNew/Resources/Components/Coin.js.asset
  5. 28 0
      PhysicsPlatformerNew/Resources/Components/Level.js
  6. 67 0
      PhysicsPlatformerNew/Resources/Components/Vine.js
  7. 7 0
      PhysicsPlatformerNew/Resources/Components/Vine.js.asset
  8. 17 0
      PhysicsPlatformerNew/Resources/Prefabs/Bat.prefab
  9. 5 0
      PhysicsPlatformerNew/Resources/Prefabs/Bat.prefab.asset
  10. 16 0
      PhysicsPlatformerNew/Resources/Prefabs/Coin.prefab
  11. 5 0
      PhysicsPlatformerNew/Resources/Prefabs/Coin.prefab.asset
  12. 6 5
      PhysicsPlatformerNew/Resources/Scenes/Scene.scene
  13. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat.asset
  14. 69 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/Bat.scml
  15. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/Bat.scml.asset
  16. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-1.png
  17. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-1.png.asset
  18. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-2.png
  19. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-2.png.asset
  20. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-3.png
  21. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-3.png.asset
  22. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-4.png
  23. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-4.png.asset
  24. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-5.png
  25. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-5.png.asset
  26. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-6.png
  27. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-6.png.asset
  28. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-7.png
  29. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-7.png.asset
  30. BIN
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-8.png
  31. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-8.png.asset
  32. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Coin.asset
  33. 128 0
      PhysicsPlatformerNew/Resources/Sprites/Coin/GoldIcon.scml
  34. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Coin/GoldIcon.scml.asset
  35. 23 0
      PhysicsPlatformerNew/Resources/Sprites/Coin/GoldIcon.xml
  36. BIN
      PhysicsPlatformerNew/Resources/Sprites/Coin/SU_Coin_4x4.png
  37. 5 0
      PhysicsPlatformerNew/Resources/Sprites/Coin/SU_Coin_4x4.png.asset
  38. BIN
      PhysicsPlatformerNew/Resources/Sprites/vine.png
  39. 5 0
      PhysicsPlatformerNew/Resources/Sprites/vine.png.asset

+ 49 - 0
PhysicsPlatformerNew/Resources/Components/Bat.js

@@ -0,0 +1,49 @@
+
+var glmatrix = require("gl-matrix");
+var vec2 = glmatrix.vec2;
+
+"atomic component";
+
+var component = function (self) {
+
+  var node = self.node;
+
+  var sprite = node.getComponent("AnimatedSprite2D")
+  sprite.setAnimation("Fly");
+
+  var cwaypoint = -1;
+
+  var time = Math.random() * 10000;
+
+  self.update = function(timestep) {
+
+      time += timestep * 4;
+
+      var waypoints = node.waypoints;
+      var pos = node.position2D;
+
+      if (cwaypoint == -1 || vec2.distance(pos, waypoints[cwaypoint]) < .5) {
+          cwaypoint = Math.round(Math.random() * (waypoints.length - 1));
+          return;
+      }
+
+      var dir = vec2.create();
+      var goal = waypoints[cwaypoint];
+
+      vec2.subtract(dir, goal, pos);
+      vec2.normalize(dir, dir);
+      vec2.scale(dir, dir, timestep * 2);
+
+      if (dir[0] < 0)
+          sprite.flipX = true;
+      else
+          sprite.flipX = false;
+
+      vec2.add(pos, pos, dir);
+      node.position2D = pos;
+
+  }
+
+}
+
+module.exports = component;

+ 7 - 0
PhysicsPlatformerNew/Resources/Components/Bat.js.asset

@@ -0,0 +1,7 @@
+{
+	"version": 1,
+	"guid": "707fe47df0bd953eab7c3f9eaedf3c7c",
+	"JavascriptImporter": {
+		"IsComponentFile": true
+	}
+}

+ 68 - 0
PhysicsPlatformerNew/Resources/Components/Coin.js

@@ -0,0 +1,68 @@
+"atomic component";
+
+var glmatrix = require("gl-matrix");
+var vec2 = glmatrix.vec2;
+
+var component = function (self) {
+
+var node = self.node;
+var camera = self.node.scene.getMainCamera();
+var cameraNode = camera.node;
+
+// Resources
+
+var sprite = node.getComponent("AnimatedSprite2D")
+sprite.setAnimation("idle");
+
+
+//sprite.setLayer(100);
+
+var activated = false;
+var body;
+
+function onPlayerHit() {
+
+    node.scale2D = [0, 0];
+    sprite.enabled = false;
+    body.enabled = false;
+
+}
+
+
+self.start = function() {
+
+}
+
+self.update =  function(timeStep) {
+
+    if (activated)
+        return false;
+
+    if (vec2.distance(cameraNode.position2D, node.position2D) < 3.0) {
+
+        activated = true;
+
+        body = node.createComponent("RigidBody2D");
+        body.setBodyType(Atomic.BT_DYNAMIC);
+        body.fixedRotation = true;
+        body.castShadows = false;
+
+        var circle = node.createComponent("CollisionCircle2D");
+
+        // Set radius
+        circle.setRadius(.3);
+        // Set density
+        circle.setDensity(1.0);
+        // Set friction.
+        circle.friction = .2;
+        // Set restitution
+        circle.setRestitution(.8);
+
+
+    }
+
+}
+
+}
+
+module.exports = component;

+ 7 - 0
PhysicsPlatformerNew/Resources/Components/Coin.js.asset

@@ -0,0 +1,7 @@
+{
+	"version": 1,
+	"guid": "86c5198f2192a4c59102bd1d3ee2317d",
+	"JavascriptImporter": {
+		"IsComponentFile": true
+	}
+}

+ 28 - 0
PhysicsPlatformerNew/Resources/Components/Level.js

@@ -31,6 +31,34 @@ var component = function (self) {
         node.stopPos = p.stop;
     }
 
+    var coins = levelParser.getEntities("Coin");
+    for (var i = 0; i < coins.length; i++) {
+        var node = self.scene.createChildPrefab("Coin", "Prefabs/Coin.prefab");
+        node.position2D = coins[i].position;
+    }
+
+    var waypoints = [];
+    var batWaypoints = levelParser.getEntities("BatWaypoint");
+    for (var i = 0; i < batWaypoints.length; i++) {
+        waypoints.push(batWaypoints[i].position);
+    }
+
+    var bats = levelParser.getEntities("Bat");
+
+    for (var i = 0; i < bats.length; i++) {
+        var node = self.scene.createChildPrefab("Bat", "Prefabs/Bat.prefab");
+        node.position2D = bats[i].position;
+        node.waypoints = waypoints;
+    }
+
+    var vines = levelParser.getEntities("Vine");
+    for (var i = 0; i < vines.length; i++) {
+        var vnode  = self.scene.createChild("Vine");
+        vnode.createJSComponent("Components/Vine.js", {startPosition : vines[i].position});
+    }
+
+
+
   }
 
   self.update = function(timeStep) {

+ 67 - 0
PhysicsPlatformerNew/Resources/Components/Vine.js

@@ -0,0 +1,67 @@
+// Rope Vine
+"atomic component";
+
+var component = function (self) {
+
+var NUM_OBJECTS = 10;
+
+var node = self.node;
+
+node.position = [0, 0, 0];
+
+self.start = function() {
+
+        var x = self.startPosition[0];
+        var y = self.startPosition[1];
+
+        // create the node body
+        var groundBody = node.createComponent("RigidBody2D");
+        groundBody.castShadows = false;
+
+        var prevBody = groundBody;
+
+        for (var i = 0; i < NUM_OBJECTS; i++) {
+
+            var vnode = node.scene.createChild("RigidBody");
+
+            var sprite2D = vnode.createComponent("StaticSprite2D");
+            sprite2D.sprite = Atomic.cache.getResource("Sprite2D", "Sprites/vine.png");
+
+            var vbody = vnode.createComponent("RigidBody2D");
+            vbody.castShadows = false;
+            vbody.bodyType = Atomic.BT_DYNAMIC;
+
+            // Create box
+            var vbox = vnode.createComponent("CollisionBox2D");
+            // Set friction
+            vbox.friction = .2;
+            // Set mask bits.
+            vbox.maskBits = 0xFFFF & ~0x0002;
+
+            vnode.position = [x + 0.5 + 1.0 * i, y, 0.0];
+            vbox.size = [1.0, 0.1];
+            vbox.density = 5.0;
+            vbox.categoryBits = 0x0001;
+
+            if (i == NUM_OBJECTS - 1)
+                vbody.angularDamping = 0.4;
+
+            var joint = vnode.createComponent("ConstraintRevolute2D");
+            joint.otherBody = prevBody;
+            joint.anchor = [x + i, y];
+            joint.collideConnected = false;
+            prevBody = vbody;
+
+        }
+
+        var constraintRope = node.createComponent("ConstraintRope2D");
+        constraintRope.otherBody = prevBody;
+        constraintRope.ownerBodyAnchor = [x, y];
+        constraintRope.maxLength = (NUM_OBJECTS + 0.01);
+
+
+    }
+
+}
+
+module.exports = component;

+ 7 - 0
PhysicsPlatformerNew/Resources/Components/Vine.js.asset

@@ -0,0 +1,7 @@
+{
+	"version": 1,
+	"guid": "c3c6aadae8dd1bb4e09619023caff54e",
+	"JavascriptImporter": {
+		"IsComponentFile": true
+	}
+}

+ 17 - 0
PhysicsPlatformerNew/Resources/Prefabs/Bat.prefab

@@ -0,0 +1,17 @@
+<?xml version="1.0"?>
+<node id="17670">
+	<attribute name="Is Enabled" value="true" />
+	<attribute name="Name" value="Bat" />
+	<attribute name="Position" value="15.8358 29.5251 0" />
+	<attribute name="Rotation" value="1 0 0 0" />
+	<attribute name="Scale" value="0.5 0.5 1" />
+	<attribute name="Variables" />
+	<component type="AnimatedSprite2D" id="22974">
+		<attribute name="Layer" value="100" />
+		<attribute name="Animation Set" value="AnimationSet2D;Sprites/Bat/Bat.scml" />
+		<attribute name="Animation" value="Fly" />
+	</component>
+	<component type="JSComponent" id="22975">
+		<attribute name="ComponentFile" value="JSComponentFile;Components/Bat.js" />
+	</component>
+</node>

+ 5 - 0
PhysicsPlatformerNew/Resources/Prefabs/Bat.prefab.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "78702d5709542d2ec4832634a1cb2c0b",
+	"PrefabImporter": {}
+}

+ 16 - 0
PhysicsPlatformerNew/Resources/Prefabs/Coin.prefab

@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<node id="17673">
+	<attribute name="Is Enabled" value="true" />
+	<attribute name="Name" value="Coin" />
+	<attribute name="Position" value="27.0608 28.4885 -16.6422" />
+	<attribute name="Rotation" value="1 0 0 0" />
+	<attribute name="Scale" value="1 1 1" />
+	<attribute name="Variables" />
+	<component type="AnimatedSprite2D" id="22979">
+		<attribute name="Animation Set" value="AnimationSet2D;Sprites/Coin/GoldIcon.scml" />
+		<attribute name="Animation" value="idle" />
+	</component>
+	<component type="JSComponent" id="22980">
+		<attribute name="ComponentFile" value="JSComponentFile;Components/Coin.js" />
+	</component>
+</node>

+ 5 - 0
PhysicsPlatformerNew/Resources/Prefabs/Coin.prefab.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "380a8c6384a0896a3b6b30fc3500fa4b",
+	"PrefabImporter": {}
+}

+ 6 - 5
PhysicsPlatformerNew/Resources/Scenes/Scene.scene

@@ -5,10 +5,10 @@
 	<attribute name="Smoothing Constant" value="50" />
 	<attribute name="Snap Threshold" value="5" />
 	<attribute name="Elapsed Time" value="0" />
-	<attribute name="Next Replicated Node ID" value="16230" />
-	<attribute name="Next Replicated Component ID" value="21226" />
-	<attribute name="Next Local Node ID" value="16778660" />
-	<attribute name="Next Local Component ID" value="16777342" />
+	<attribute name="Next Replicated Node ID" value="17674" />
+	<attribute name="Next Replicated Component ID" value="22981" />
+	<attribute name="Next Local Node ID" value="16778678" />
+	<attribute name="Next Local Component ID" value="16777355" />
 	<attribute name="Variables" />
 	<attribute name="Variable Names" value="" />
 	<component type="Octree" id="2" />
@@ -36,6 +36,7 @@
 			<attribute name="Near Clip" value="0" />
 			<attribute name="Orthographic" value="true" />
 			<attribute name="Orthographic Size" value="8" />
+			<attribute name="Zoom" value="0.5" />
 		</component>
 	</node>
 	<node id="370">
@@ -69,7 +70,7 @@
 	</node>
 	<node id="9748">
 		<attribute name="Is Enabled" value="true" />
-		<attribute name="Name" value="Node" />
+		<attribute name="Name" value="TheSun" />
 		<attribute name="Position" value="22.2822 29.6825 0" />
 		<attribute name="Rotation" value="1 0 0 0" />
 		<attribute name="Scale" value="1 1 1" />

+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "e46d11279a7ba1ceaec980302dbb5eb3",
+	"FolderImporter": {}
+}

+ 69 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/Bat.scml

@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<spriter_data scml_version="1.0" generator="BrashMonkey Spriter" generator_version="r2">
+    <folder id="0">
+        <file id="0" name="bat-frame-8.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="1" name="bat-frame-1.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="2" name="bat-frame-2.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="3" name="bat-frame-3.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="4" name="bat-frame-4.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="5" name="bat-frame-5.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="6" name="bat-frame-6.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+        <file id="7" name="bat-frame-7.png" width="128" height="128" pivot_x="0" pivot_y="1"/>
+    </folder>
+    <entity id="0" name="Bat">
+        <animation id="0" name="Fly" length="500" interval="100">
+            <mainline>
+                <key id="0">
+                    <object_ref id="0" timeline="0" key="0" z_index="0"/>
+                </key>
+                <key id="1" time="62">
+                    <object_ref id="0" timeline="0" key="1" z_index="0"/>
+                </key>
+                <key id="2" time="125">
+                    <object_ref id="0" timeline="0" key="2" z_index="0"/>
+                </key>
+                <key id="3" time="187">
+                    <object_ref id="0" timeline="0" key="3" z_index="0"/>
+                </key>
+                <key id="4" time="250">
+                    <object_ref id="0" timeline="0" key="4" z_index="0"/>
+                </key>
+                <key id="5" time="312">
+                    <object_ref id="0" timeline="0" key="5" z_index="0"/>
+                </key>
+                <key id="6" time="375">
+                    <object_ref id="0" timeline="0" key="6" z_index="0"/>
+                </key>
+                <key id="7" time="437">
+                    <object_ref id="0" timeline="0" key="7" z_index="0"/>
+                </key>
+            </mainline>
+            <timeline id="0" name="Fly">
+                <key id="0" spin="0">
+                    <object folder="0" file="1" x="-68" y="56"/>
+                </key>
+                <key id="1" time="62" spin="0">
+                    <object folder="0" file="2" x="-68" y="56"/>
+                </key>
+                <key id="2" time="125" spin="0">
+                    <object folder="0" file="3" x="-68" y="56"/>
+                </key>
+                <key id="3" time="187" spin="0">
+                    <object folder="0" file="4" x="-68" y="56"/>
+                </key>
+                <key id="4" time="250" spin="0">
+                    <object folder="0" file="5" x="-68" y="56"/>
+                </key>
+                <key id="5" time="312" spin="0">
+                    <object folder="0" file="6" x="-68" y="56"/>
+                </key>
+                <key id="6" time="375" spin="0">
+                    <object folder="0" file="7" x="-68" y="56"/>
+                </key>
+                <key id="7" time="437" spin="0">
+                    <object folder="0" file="0" x="-68" y="56"/>
+                </key>
+            </timeline>
+        </animation>
+    </entity>
+</spriter_data>

+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/Bat.scml.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "04a3a3eedad543453054103ed958fb74",
+	"SpriterImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-1.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-1.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "3d7b9859d9b91ce48f75b013f306f238",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-2.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-2.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "e8ef828ae56c8a5ddd0cd8bdd3c343a4",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-3.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-3.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "3930dcdabdcc827b6965dc38cbb91b7c",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-4.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-4.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "25557ff0afb2fa7e93061a27372dd582",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-5.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-5.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "15c569ddd707778c23baa7c8d7449bb1",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-6.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-6.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "99aa2c3743a7011039658960e2f45b53",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-7.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-7.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "41a75185d98e93d8ae3848c2b6f5e739",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-8.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Bat/bat-frame-8.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "5994b026cf72cb88d3eb730448babf68",
+	"TextureImporter": {}
+}

+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Coin.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "090af14f3d6d0f21fc709bed6bff5997",
+	"FolderImporter": {}
+}

+ 128 - 0
PhysicsPlatformerNew/Resources/Sprites/Coin/GoldIcon.scml

@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<spriter_data scml_version="1.0" generator="BrashMonkey Spriter" generator_version="b8_1">
+    <folder id="0" name="GoldIcon">
+        <file id="0" name="GoldIcon/1.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="1" name="GoldIcon/2.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="2" name="GoldIcon/3.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="3" name="GoldIcon/4.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="4" name="GoldIcon/5.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="5" name="GoldIcon/6.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="6" name="GoldIcon/7.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="7" name="GoldIcon/8.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="8" name="GoldIcon/9.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="9" name="GoldIcon/10.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="10" name="GoldIcon/11.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="11" name="GoldIcon/12.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="12" name="GoldIcon/13.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="13" name="GoldIcon/14.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="14" name="GoldIcon/15.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+        <file id="15" name="GoldIcon/16.png" width="64" height="64" pivot_x="0.5" pivot_y="0.5"/>
+
+    </folder>
+    <entity id="0" name="entity_000">
+        <animation id="0" name="idle" length="750">
+            <mainline>
+                <key id="0">
+                    <object_ref id="0" timeline="0" key="0" z_index="0"/>
+                </key>
+                <key id="1" time="50">
+                    <object_ref id="0" timeline="0" key="1" z_index="0"/>
+                </key>
+                <key id="2" time="100">
+                    <object_ref id="0" timeline="0" key="2" z_index="0"/>
+                </key>
+                <key id="3" time="150">
+                    <object_ref id="0" timeline="0" key="3" z_index="0"/>
+                </key>
+                <key id="4" time="200">
+                    <object_ref id="0" timeline="0" key="4" z_index="0"/>
+                </key>
+                <key id="5" time="250">
+                    <object_ref id="0" timeline="0" key="5" z_index="0"/>
+                </key>
+                <key id="6" time="300">
+                    <object_ref id="0" timeline="0" key="6" z_index="0"/>
+                </key>
+                <key id="7" time="350">
+                    <object_ref id="0" timeline="0" key="7" z_index="0"/>
+                </key>
+                <key id="8" time="400">
+                    <object_ref id="0" timeline="0" key="8" z_index="0"/>
+                </key>
+                <key id="9" time="450">
+                    <object_ref id="0" timeline="0" key="9" z_index="0"/>
+                </key>
+                <key id="10" time="500">
+                    <object_ref id="0" timeline="0" key="10" z_index="0"/>
+                </key>
+                <key id="11" time="550">
+                    <object_ref id="0" timeline="0" key="11" z_index="0"/>
+                </key>
+                <key id="12" time="600">
+                    <object_ref id="0" timeline="0" key="12" z_index="0"/>
+                </key>
+                <key id="13" time="650">
+                    <object_ref id="0" timeline="0" key="13" z_index="0"/>
+                </key>
+                <key id="14" time="700">
+                    <object_ref id="0" timeline="0" key="14" z_index="0"/>
+                </key>
+                <key id="15" time="750">
+                    <object_ref id="0" timeline="0" key="15" z_index="0"/>
+                </key>
+
+            </mainline>
+            <timeline id="0" name="1">
+                <key id="0" spin="0">
+                    <object folder="0" file="0" angle="0"/>
+                </key>
+                <key id="1" time="50" spin="0">
+                    <object folder="0" file="1" angle="0"/>
+                </key>
+                <key id="2" time="100" spin="0">
+                    <object folder="0" file="2" angle="0"/>
+                </key>
+                <key id="3" time="150" spin="0">
+                    <object folder="0" file="3" angle="0"/>
+                </key>
+                <key id="4" time="200" spin="0">
+                    <object folder="0" file="4" angle="0"/>
+                </key>
+                <key id="5" time="250" spin="0">
+                    <object folder="0" file="5" angle="0"/>
+                </key>
+                <key id="6" time="300" spin="0">
+                    <object folder="0" file="6" angle="0"/>
+                </key>
+                <key id="7" time="350" spin="0">
+                    <object folder="0" file="7" angle="0"/>
+                </key>
+                <key id="8" time="400" spin="0">
+                    <object folder="0" file="8" angle="0"/>
+                </key>
+                <key id="9" time="450" spin="0">
+                    <object folder="0" file="9" angle="0"/>
+                </key>
+                <key id="10" time="500" spin="0">
+                    <object folder="0" file="10" angle="0"/>
+                </key>
+                <key id="11" time="550" spin="0">
+                    <object folder="0" file="11" angle="0"/>
+                </key>
+                <key id="12" time="600" spin="0">
+                    <object folder="0" file="12" angle="0"/>
+                </key>
+                <key id="13" time="650" spin="0">
+                    <object folder="0" file="13" angle="0"/>
+                </key>
+                <key id="14" time="600" spin="0">
+                    <object folder="0" file="14" angle="0"/>
+                </key>
+                <key id="15" time="750" spin="0">
+                    <object folder="0" file="15" angle="0"/>
+                </key>
+
+            </timeline>
+        </animation>
+    </entity>
+</spriter_data>

+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Coin/GoldIcon.scml.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "a91355fa07f14d22ad4612ad7d826ac5",
+	"SpriterImporter": {}
+}

+ 23 - 0
PhysicsPlatformerNew/Resources/Sprites/Coin/GoldIcon.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Created with TexturePacker http://texturepacker.com-->
+<!-- $TexturePacker:SmartUpdate:86ac5203aadd5795b3e45516bcd6834b$ -->
+<TextureAtlas imagePath="SU_Coin_4x4.png">
+    <SubTexture name="1" x="0" y="0" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="2" x="64" y="0" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="3" x="128" y="0" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="4" x="192" y="0" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="5" x="0" y="64" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="6" x="64" y="64" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="7" x="128" y="64" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="8" x="192" y="64" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="9" x="0" y="128" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="10" x="64" y="128" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="11" x="128" y="128" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="12" x="192" y="128" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="13" x="0" y="192" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="14" x="64" y="192" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="15" x="128" y="192" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+    <SubTexture name="16" x="192" y="192" width="64" height="64" frameX="0" frameY="0" frameWidth="64" frameHeight="64"/>
+
+</TextureAtlas>
+

BIN
PhysicsPlatformerNew/Resources/Sprites/Coin/SU_Coin_4x4.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/Coin/SU_Coin_4x4.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "113261b9dc499bd63f42b3b778eae58c",
+	"TextureImporter": {}
+}

BIN
PhysicsPlatformerNew/Resources/Sprites/vine.png


+ 5 - 0
PhysicsPlatformerNew/Resources/Sprites/vine.png.asset

@@ -0,0 +1,5 @@
+{
+	"version": 1,
+	"guid": "1b0576d310edf3dffb1a7e38bf706861",
+	"TextureImporter": {}
+}