if (!yuu.InputState) require("./input");
if (!yuu.Material) require("./gfx");
+ function getCommand (element) {
+ var command = element.getAttribute('data-yuu-command');
+ if (!command || command === 'data-yuu-command')
+ element.setAttribute('data-yuu-command', command = element.id);
+ return command;
+ }
+
yuu.Director = yT({
constructor: function (commandStack, input, tickHz) {
/** Manage and update a set of Scenes
var elements = element.querySelectorAll("[data-yuu-command]");
yf.each(function (element) {
- var command = element.getAttribute("data-yuu-command");
+ var command = getCommand(element);
switch (element.tagName.toLowerCase()) {
case "input":
switch (element.type.toLowerCase()) {
function handleElement (event) {
/*jshint validthis:true */
/* `this` comes from being a DOM element event handler. */
- var command = this.getAttribute("data-yuu-command");
+ var command = getCommand(this);
switch (this.tagName.toLowerCase()) {
case "input":
switch (this.type.toLowerCase()) {