Read_PTG_Best(PT_Size-3,&stepx,&timex);//读取该级别的最纪录 if(timex==0)BEST=1; //第一次 if(timex<stepx)minx=timex; //去最小的值 else minx=stepx; if(PT_Time<minx||PT_Step<minx)BEST=1;//时间/步数小于先前最佳值,记录被破 else if(PT_Time==timex&&PT_Step<stepx)BEST=1;//时间相等,步数较少,也破纪录 LCD_Fill(40,80,200,160,GRAY);//填充空白域 POINT_COLOR=BROWN; LCD_DrawRectangle(39,79,201,161);//画空的方框 LCD_DrawRectangle(40,80,200,160);//画空的方框 LCD_DrawRectangle(41,81,199,159);//画空的方框 BACK_COLOR=GRAY; POINT_COLOR=RED; if(BEST) { Save_PTG_Best(PT_Size-3,PT_Step,PT_Time);//保存最佳纪录 Show_Str_Mid(40,82,"创记录了!",16,160);//叠加模式,非自动换行 } else Show_Str_Mid(40,82,"恭喜过关!",16,160);//叠加模式,非自动换行 POINT_COLOR=BLACK; Show_Str(44,100,"您的成绩:",16,0X01);//叠加模式,非自动换行 Show_Str(44,118,"步数:",16,0X01);//叠加模式,非自动换行 Show_Str(124,118,"时间:",16,0X01);//叠加模式,非自动换行 POINT_COLOR=RED; LCD_ShowNum(84,118,PT_Step,4,16);//显示步数 LCD_ShowNum(164,118,PT_Time,4,16);//显示时间 BACK_COLOR=LGRAY;
Show_Str(104,139,"确定",16,0X00);//叠加模式,非自动换行 POINT_COLOR=BROWN; LCD_DrawRectangle(104,139,136,155);//画空的方框 Pen_Point.Key_Sta=Key_Up;//释放显示期间的触发 timex=0; while(1)//等待按键退出 { tkey=AI_Read_TP(30); if(tkey==2)Pen_Point.Key_Reg|=0X80;//标记按键已经按下了 if(tkey==0&&(Pen_Point.Key_Reg&0X80))//按键松开了 { Pen_Point.Key_Reg=0; if(Is_In_Area(104,139,32,16))return;//确定键被按下了