Browse Source

Touch Input

Josh Engebretson 10 years ago
parent
commit
97064bc319

+ 1 - 1
PhysicsPlatformer/Resources/Components/Player.js

@@ -122,7 +122,7 @@ function handleInput(timeStep) {
     var left = input.getKeyDown(Atomic.KEY_LEFT) || input.getKeyDown(Atomic.KEY_A);
     var right = input.getKeyDown(Atomic.KEY_RIGHT) || input.getKeyDown(Atomic.KEY_D);
     
-    var jump = input.getKeyDown(Atomic.KEY_UP) || input.getKeyDown(Atomic.KEY_SPACE);
+    var jump = input.getKeyDown(Atomic.KEY_UP) || input.getKeyDown(Atomic.KEY_SPACE) || input.getKeyDown(Atomic.KEY_W);
 
     control = false;
 

+ 1 - 7
PhysicsPlatformer/Resources/Components/TouchInput.js

@@ -8,7 +8,7 @@ var input = game.input;
 function start() {
 
 	// input.setTouchEmulation(true);
-    var layout = game.cache.getResource("XMLFile", "XML/ScreenJoystick_Platformer.xml");
+    var layout = game.cache.getResource("XMLFile", "Data/ScreenJoystick.xml");
     var uiStyle = game.cache.getResource("XMLFile", "UI/DefaultStyle.xml");    
     input.addScreenJoystick(layout, uiStyle);
 
@@ -17,9 +17,3 @@ function start() {
 function update(timeStep) {
 
 }
-
-/*
-
-input.AddScreenJoystick(layout, cache.GetResource("XMLFile", "UI/DefaultStyle.xml"));
-
-*/

+ 0 - 0
PhysicsPlatformer/Resources/XML/ScreenJoystick_Platformer.xml → PhysicsPlatformer/Resources/Data/ScreenJoystick.xml


+ 2 - 0
SpaceGame/Resources/Components/HUD.js

@@ -49,6 +49,8 @@ gameText.horizontalAlignment = Atomic.HA_CENTER;
 gameText.verticalAlignment = Atomic.VA_CENTER;
 root.addChild(gameText);
 
+if (Atomic.platform == "iOS" || Atomic.platform == "Android")
+	self.node.createJSComponent("TouchInput");
 
 self.updateScore = function (value) {
 

+ 7 - 7
SpaceGame/Resources/Components/Player.js

@@ -16,15 +16,15 @@ self.onHit = function() {
     exp.init(node.worldPosition2D);
 
     self.health--;
-    
+
     SpaceGame.hud.updateHealth(self.health);
-    
+
     if (self.health == 0) {
-    
+
         SpaceGame.lose();
-    
+
     }
-    
+
 
 }
 
@@ -38,7 +38,7 @@ function doShooting(timeStep) {
         return;
     }
 
-    if (!input.getKeyDown(Atomic.KEY_W))
+    if (!input.getKeyDown(Atomic.KEY_W) && !input.getKeyDown(Atomic.KEY_UP) && !input.getKeyDown(Atomic.KEY_SPACE))
         return;
 
     self.shootDelta = 0.15;
@@ -89,7 +89,7 @@ function start() {
 }
 
 function update(timeStep) {
-    
+
     if (self.allowShoot)
         doShooting(timeStep);
 

+ 19 - 0
SpaceGame/Resources/Components/TouchInput.js

@@ -0,0 +1,19 @@
+
+// Atomic Component
+
+var game = Atomic.game;
+var node = self.node;
+var input = game.input;
+
+function start() {
+
+	// input.setTouchEmulation(true);
+    var layout = game.cache.getResource("XMLFile", "Data/ScreenJoystick.xml");
+    var uiStyle = game.cache.getResource("XMLFile", "UI/DefaultStyle.xml");    
+    input.addScreenJoystick(layout, uiStyle);
+
+}
+
+function update(timeStep) {
+
+}

+ 28 - 0
SpaceGame/Resources/Data/ScreenJoystick.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<element inherit="UI/ScreenJoystick.xml">
+    <replace sel="/element/element[./attribute[@name='Name' and @value='Button0']]/element[./attribute[@name='Name' and @value='Label']]/attribute[@name='Text']/@value">Fire</replace>
+    <add sel="/element/element[./attribute[@name='Name' and @value='Button0']]">
+        <attribute name="Is Visible" value="true" />
+        <element type="Text">
+        <attribute name="Name" value="KeyBinding" />
+        <attribute name="Text" value="UP" />
+        </element>
+    </add>
+    <add sel="/element/element[./attribute[@name='Name' and @value='Button1']]">
+        <attribute name="Is Visible" value="false" />
+    </add>
+    <add sel="/element/element[./attribute[@name='Name' and @value='Button2']]">
+        <element type="Text">
+            <attribute name="Name" value="KeyBinding" />
+            <attribute name="Text" value="SELECT" />
+        </element>
+    </add>
+    <replace sel="/element/element[./attribute[@name='Name' and @value='Hat0']]/attribute[@name='Position']/@value">12 -76</replace>
+    <add sel="/element/element[./attribute[@name='Name' and @value='Hat0']]">
+        <attribute name="Is Visible" value="true" />
+        <element type="Text">
+            <attribute name="Name" value="KeyBinding" />
+            <attribute name="Text" value="WSAD" />
+                    </element>
+    </add>
+</element>