Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 516 → Rev 517

/DUBwise/trunk/j2me/src/MKStatusVoice.java
132,30 → 132,115
}
}
public void start_playing(String name)
 
 
public boolean play(String what)
{
 
// start play
try {
act_player_state=PLAYERSTATE_PLAYING;
player=init_player(name);
player=init_player(what);
player.start();
}
catch (Exception e) {
act_player_state=PLAYERSTATE_FIN;
}
}
public void wait_for_end()
{
 
// wait for end
while (act_player_state!=PLAYERSTATE_FIN)
{
try { Thread.sleep(5); }
catch (Exception e) { }
}
 
 
return true;
}
 
// play number
public void play(int what)
{
 
if (what==0)
{
play("0");
return;
}
 
if (((what/1000)%10)!=0)
{
play((what/1000)%10);
play("thousand");
what%=1000;
}
if (((what/100)%10)!=0)
{
play((what/100)%10);
play("hundred");
what%=100;
}
 
 
 
 
if (what<20)
{
if (what<13)
{
if(what!=0)
play(""+what);
}
else
{
switch (what%10)
{
case 3:
play("thir");
break;
case 5:
play("fiv");
break;
default:
play (""+what%10);
}
play("teen");
}
}
else
{
switch (what/10)
{
 
case 2:
play("twen");
break;
case 3:
play("thir");
break;
case 5:
play("fiv");
break;
default:
play (""+what/10);
}
play("ty");
if ((what%10)!=0)
play (what%10);
}
 
}
 
 
 
int info_from_debug_set=-1;
int volt_timeout=0;
 
167,66 → 252,164
public int loop_cnt;
public int volts_play_cnt;
 
boolean conn_told=false;
boolean disconn_told=true;
boolean sender_warning_told=false;
 
 
public void run()
{
 
 
while(true)
{
loop_cnt++;
if ((canvas.mk!=null)&&(canvas.mk.connected)&&(canvas.settings.do_sound)&&(canvas.mk.UBatt()!=-1)&&(!canvas.mk.force_disconnect))
if ((canvas.mk!=null)&&(canvas.settings.do_sound))
{
volt_timeout--;
if (info_from_debug_set!=canvas.mk.stats.debug_data_count)
{ // only when newdata
if (canvas.settings.do_volts_sound&&(volt_timeout<0))
 
if ((canvas.mk.connected)&&(!canvas.mk.force_disconnect))
{
if (!conn_told)
{
if (canvas.mk.version.known)
{
volts_play_cnt++;
play("connected");
play("to");
play("mikrokopter");
play("version");
play(canvas.mk.version.major);
play("point");
play(canvas.mk.version.minor);
play("established");
conn_told=true;
disconn_told=false;
}
}
else
{
 
volt_timeout=(delay*1000)/BASE_SLEEP;
int ubatt=canvas.mk.UBatt();
info_from_debug_set=canvas.mk.stats.debug_data_count;
start_playing(""+(ubatt/10));
wait_for_end();
if((ubatt%10)!=0)
if ((canvas.mk.SenderOkay()<1))
{
if (!sender_warning_told)
{
start_playing("komma");
wait_for_end();
start_playing(""+(ubatt%10));
wait_for_end();
play("warning");
play("rc-signal");
play("lost");
sender_warning_told=true;
}
start_playing("volt");
wait_for_end();
}
else
sender_warning_told=false;
 
 
if (canvas.settings.do_altimeter_sound)
if ((canvas.mk.AngleNick()>400)||(canvas.mk.AngleRoll()>400)||(canvas.mk.AngleNick()<-400)||(canvas.mk.AngleRoll()<-400))
{
if (last_alt==-1) last_alt=canvas.mk.Alt();
play("tilt");
play("warning");
}
 
volt_timeout--;
if (last_alt>canvas.mk.Alt()+canvas.settings.altsteps)
if (info_from_debug_set!=canvas.mk.stats.debug_data_count)
{ // only when newdata
if (canvas.settings.do_volts_sound&&(volt_timeout<0))
{
// start_playing("down");
play_down();
wait_for_end();
last_alt-=canvas.settings.altsteps;
play("battery");
play("at");
volts_play_cnt++;
volt_timeout=(delay*1000)/BASE_SLEEP;
int ubatt=canvas.mk.UBatt();
info_from_debug_set=canvas.mk.stats.debug_data_count;
play((ubatt/10));
if((ubatt%10)!=0)
{
play("point");
play((ubatt%10));
}
play("volts");
play("altitude");
 
play( canvas.mk.Alt()/10);
play("point");
play( canvas.mk.Alt()%10);
play("meter");
 
 
if ((canvas.mk.stats.flying_time()!=0))
{
play("flight");
play("time");
switch (canvas.mk.stats.flying_time()/60)
{
case 0:
case 1:
play("1");
play("minute");
break;
default:
play(canvas.mk.stats.flying_time()/60);
play("minutes");
}
 
switch (canvas.mk.stats.flying_time()%60)
{
case 0:
// case 1:
// play("1");
break;
default:
play(canvas.mk.stats.flying_time()%60);
play("minutes");
}
 
}
}
if (last_alt<canvas.mk.Alt()-canvas.settings.altsteps)
if (canvas.settings.do_altimeter_sound)
{
//start_playing("up");
play_up();
wait_for_end();
last_alt+=canvas.settings.altsteps;
if (last_alt==-1) last_alt=canvas.mk.Alt();
if (last_alt>canvas.mk.Alt()+canvas.settings.altsteps)
{
play("down");
last_alt-=canvas.settings.altsteps;
}
if (last_alt<canvas.mk.Alt()-canvas.settings.altsteps)
{
play("up");
last_alt+=canvas.settings.altsteps;
}
}
else
last_alt=-1;
}
else
last_alt=-1;
}
}
else
{
if (!disconn_told)
play("disconnected");
conn_told=false;
disconn_told=true;
}
}
 
try {