Exemplo n.º 1
0
void ADDAC_CVlooper::update(int _MODE, int _interval, float _wet, int _val){
	//_MODE 0 == LOOP MODE
	//_MODE 1 == OVERDUB MODE
	//_MODE 2 == ERASE MODE
	
	wet=_wet; // INPUT Strength, 
	
	if(millis()>time+interval){
		interval=_interval/2; // BETWEEN 0(i.e. full sampleRate) and 511 ms
		time=millis();
		Serial.print(currentVal);
		if(currentVal<buffsNum*buffSize){ // BUFFER/ LOOP SIZE!!! IMPLEMENT DINAMIC MODE!
			record(_val);
			Serial.print(" /: ");
			Serial.print(currentVal/buffSize);
			Serial.print(" %: ");
			Serial.print(currentVal%buffSize);
			//analogWrite(pwmPin,analogRead(0)/4);
			currentVal++;
			Serial.print(" millis: ");
			Serial.print(millis());
		}else{
			if(_MODE==1){			// OVERDUB
				overdub(_val);	
			}else if(_MODE==2){		// ERASE
				clearRecord(_val);
				Serial.print(" recMode: ");
				Serial.print(_MODE);
			}else{					// PLAY
				play();
			}
		}
		//Serial.println();
  }
}
Exemplo n.º 2
0
void MainMenu::onConfirmNewGame(MyGUI::MessagePtr, MyGUI::MessageBoxStyle result)
{
    if (result == MyGUI::MessageBoxStyle::Yes)
    {
        //Clear user records.
        clearRecord();
        GlbVar.records.firstTime = false;
        GlbVar.woMgr->gotoWorld(GlbVar.records.highestLevelIndex); //Highest level is now first.
    }
}