text("Tap 'u' to restore UI", width-4, height-6);
}
+ public void drawDanText() {
+ textFont(itemFont);
+ textAlign(LEFT);
+ fill(#FFFFFF);
+ text(DanTextLine1, 4, height-50);
+ text(DanTextLine2, 4, height-30);
+ }
+
public void drawFPS() {
textFont(titleFont);
textAlign(LEFT);
public void draw() {
drawLogoAndBackground();
+
int yPos = 0;
firstMappingY = yPos + lineHeight + 6;
yPos = drawObjectList(yPos, "MAPPING MODE", mappingModes, mappingModes, mappingModeStateMethod);
class DebugUI {
final ChannelMapping[] channelList;
- final int debugX = 10;
- final int debugY = 42;
+ final int debugX = 5;
+ final int debugY = 5;
final int debugXSpacing = 28;
- final int debugYSpacing = 22;
- final int[][] debugState = new int[17][6];
+ final int debugYSpacing = 21;
+ final int[][] debugState;
final int DEBUG_STATE_ANIM = 0;
final int DEBUG_STATE_WHITE = 1;
DebugUI(PandaMapping[] pandaMappings) {
int totalChannels = pandaMappings.length * PandaMapping.CHANNELS_PER_BOARD;
+ debugState = new int[totalChannels+1][ChannelMapping.CUBES_PER_CHANNEL+1];
+
channelList = new ChannelMapping[totalChannels];
int channelIndex = 0;
for (PandaMapping pm : pandaMappings) {
int xBase = debugX;
int yPos = debugY;
- fill(color(0, 0, 0, 80));
- rect(4, 32, 172, 388);
+ fill(#000000);
+ rect(0, 0, debugX + 5*debugXSpacing, height);
int channelNum = 0;
for (ChannelMapping channel : channelList) {
case ChannelMapping.MODE_SPEAKER:
drawNumBox(xPos, yPos, "S" + channel.objectIndices[0], debugState[channelNum][1]);
break;
- case ChannelMapping.MODE_FLOOR:
+ case ChannelMapping.MODE_STRUTS_AND_FLOOR:
drawNumBox(xPos, yPos, "F", debugState[channelNum][1]);
break;
case ChannelMapping.MODE_NULL:
state = debugState[channelIndex][1];
if (state != DEBUG_STATE_ANIM) {
color debugColor = (state == DEBUG_STATE_WHITE) ? white : off;
- for (Point p : glucose.model.bassBox.points) {
- colors[p.index] = debugColor;
+ for (Strip s : glucose.model.bassBox.boxStrips) {
+ for (Point p : s.points) {
+ colors[p.index] = debugColor;
+ }
}
}
break;
- case ChannelMapping.MODE_FLOOR:
+ case ChannelMapping.MODE_STRUTS_AND_FLOOR:
state = debugState[channelIndex][1];
if (state != DEBUG_STATE_ANIM) {
color debugColor = (state == DEBUG_STATE_WHITE) ? white : off;
for (Point p : glucose.model.boothFloor.points) {
colors[p.index] = debugColor;
}
+ for (Strip s : glucose.model.bassBox.struts) {
+ for (Point p : s.points) {
+ colors[p.index] = debugColor;
+ }
+ }
}
break;
if ((dy >= 0) && (dy < debugState.length)) {
if ((dx >= 0) && (dx < debugState[dy].length)) {
int newState = debugState[dy][dx] = (debugState[dy][dx] + 1) % 3;
- if (dy == 16) {
+ if (dy == debugState.length-1) {
for (int[] states : debugState) {
for (int i = 0; i < states.length; ++i) {
states[i] = newState;