예제 #1
0
void Colors::startupFlash(){
  for(byte i = 0; i < NEO_COUNT+3; i++){
    if(i > 2) setColor(i-3, 0,0,0);
    if(i > 1 && i-2 < NEO_COUNT) setColor(i-2, 0,0,255);
    if(i > 0 && i-1 < NEO_COUNT) setColor(i-1, 0,255,0);
    if(i < NEO_COUNT) setColor(i, 255,0,0);

    pushColors();
    delay(100);
  }
  for(int i = NEO_COUNT+2; i >= 0; i--){
    if(i > 2) setColor(i-3, 255,0,0);
    if(i > 1 && i-2 < NEO_COUNT) setColor(i-2, 0,255,0);
    if(i > 0 && i-1 < NEO_COUNT) setColor(i-1, 0,0,255);
    if(i < NEO_COUNT) setColor(i, 0,0,0);

    pushColors();
    delay(100);
  }
  displayBatteryColors();
  pushColors();
  delay(80);
  setColor(NEO_COUNT-1, 0,0,0);
  pushColors();
  watch->getMotor()->pulseMotorRepeat(1023,150,100,2);
}
예제 #2
0
void Colors::confirmFlash(){
    clearColors();
    setColors(42,0,255,0);
    pushColors();
    watch->getMotor()->pulseMotor(1023, 150);
    delay(50);
}
예제 #3
0
Dart Topo3PrimalRender<PFP>::picking(MAP& map, int x, int y)
{
	pushColors();
	setDartsIdColor(map);
	Dart d = pickColor(x,y);
	popColors();
	return d;
}
예제 #4
0
void Colors::messageFlash(){
  for(byte i = 0; i < NEO_COUNT; i++)
    setColor(i, Wheel(((i * 256 / NEO_COUNT) + 5) & 255));
  pushColors();
  watch->getMotor()->pulseMotorRepeat(1023,150,50,2);
  watch->getMotor()->pulseMotor(1023, 250);
  delay(50);
}
예제 #5
0
void Colors::errorFlash(){
    
    for(byte i = 1; i <= 16; i++){
      analogWrite(MOTOR_PIN,1023/ i);
      
      byte mod = i%8;
      if(mod == 0){
        clearColors();
        setColors(85,255,128,0);
        pushColors();
      }else if(mod == 4){
        clearColors();
        setColors(42,255,128,0);
        pushColors();
      }
      
      delay(50);
    }
    analogWrite(MOTOR_PIN,0);
}