armory/Sources/armory/logicnode/MergedKeyboardNode.hx

41 lines
837 B
Haxe
Raw Normal View History

2017-03-21 03:06:38 +01:00
package armory.logicnode;
class MergedKeyboardNode extends LogicNode {
2017-03-21 03:06:38 +01:00
2019-12-19 23:54:08 +01:00
public var property0: String;
public var property1: String;
2017-04-03 22:29:46 +02:00
2019-12-19 23:54:08 +01:00
public function new(tree: LogicTree) {
2017-04-04 23:11:31 +02:00
super(tree);
2019-12-19 23:54:08 +01:00
2019-01-27 22:14:17 +01:00
tree.notifyOnUpdate(update);
2017-03-21 03:06:38 +01:00
}
2019-12-19 23:54:08 +01:00
function update() {
var keyboard = iron.system.Input.getKeyboard();
var b = false;
switch (property0) {
2020-11-17 21:35:22 +01:00
case "started":
b = keyboard.started(property1);
2020-11-17 21:35:22 +01:00
case "down":
2020-11-17 16:01:15 +01:00
b = keyboard.down(property1);
2020-11-17 21:35:22 +01:00
case "released":
b = keyboard.released(property1);
}
if (b) runOutput(0);
}
2019-12-19 23:54:08 +01:00
override function get(from: Int): Dynamic {
2017-11-20 15:16:52 +01:00
var keyboard = iron.system.Input.getKeyboard();
2017-04-03 22:29:46 +02:00
switch (property0) {
2020-11-17 21:35:22 +01:00
case "started":
2017-04-10 21:17:17 +02:00
return keyboard.started(property1);
2020-11-17 21:35:22 +01:00
case "down":
2020-11-17 16:01:15 +01:00
return keyboard.down(property1);
2020-11-17 21:35:22 +01:00
case "released":
2017-04-10 21:17:17 +02:00
return keyboard.released(property1);
2017-04-03 22:29:46 +02:00
}
return false;
2017-03-21 03:06:38 +01:00
}
}