Agrego nuevo modo incio carrera auto_start , todos los participantes deben mantener pulsados a la vez el boton , ademas sirve para probar el mando independientemente porque se enciende un led con cada mando, el semaforo parpadea lento para indicar esta en este modo
This commit is contained in:
parent
2d115cd1d4
commit
7c74e922f7
1 changed files with 28 additions and 2 deletions
|
@ -69,6 +69,8 @@ char const version[] = "0.9.6b";
|
|||
|
||||
#define NEWRACE_DELAY 5000
|
||||
|
||||
#define AUTO_START 0
|
||||
|
||||
enum{
|
||||
MAX_CARS = 4,
|
||||
};
|
||||
|
@ -276,7 +278,7 @@ void loop() {
|
|||
break;
|
||||
|
||||
case READY:
|
||||
{
|
||||
{if (AUTO_START==1){
|
||||
if(customDelay.elapsed()) {
|
||||
for( int i = 0; i < race.numcars; ++i) {
|
||||
car_resetPosition( &cars[i] );
|
||||
|
@ -286,6 +288,29 @@ void loop() {
|
|||
race.phase = COUNTDOWN;
|
||||
send_phase( race.phase );
|
||||
}
|
||||
}
|
||||
else {int pstart=0;
|
||||
strip_clear( &tck );
|
||||
if( ramp_isactive( &tck ) )
|
||||
draw_ramp( &tck );
|
||||
if( box_isactive( &tck ) )
|
||||
draw_box_entrypoint( &tck );
|
||||
for( int i = 0; i < race.numcars; ++i) {
|
||||
if (controller_getStatus(cars[i].ct)==false){
|
||||
car_resetPosition( &cars[i] );
|
||||
Serial.println(i);
|
||||
track.setPixelColor(i,cars[i].color);
|
||||
cars[i].repeats = 0;
|
||||
pstart++;}
|
||||
}
|
||||
|
||||
track.setPixelColor(LED_SEMAPHORE , ((millis()/5)%64)*0x010100 );
|
||||
track.show();
|
||||
if (pstart==race.numcars){tck.ledcoin = COIN_RESET;
|
||||
race.phase = COUNTDOWN;
|
||||
send_phase( race.phase );}
|
||||
|
||||
};
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -560,7 +585,8 @@ void strip_clear( track_t* tck ) {
|
|||
|
||||
void draw_coin( track_t* tck ) {
|
||||
struct cfgtrack const* cfg = &tck->cfg.track;
|
||||
track.setPixelColor( 1 + cfg->nled_main + cfg->nled_aux - tck->ledcoin,COLOR_COIN );
|
||||
track.setPixelColor( 1 + cfg->nled_main + cfg->nled_aux - tck->ledcoin,COLOR_COIN * ((millis()/4)%64));
|
||||
//track.setPixelColor( 1 + cfg->nled_main + cfg->nled_aux - tck->ledcoin,0x010100 * ((millis()/4)%64)); // FX if charging ???
|
||||
}
|
||||
|
||||
void draw_winner( track_t* tck, uint32_t color) {
|
||||
|
|
Loading…
Add table
Reference in a new issue