|
|
@ -68,7 +68,6 @@ void L3_task_game_init(void) |
|
|
|
_s_task_game.game_info[0].game_supported_oid[4].yes_or_no = 0; |
|
|
|
|
|
|
|
_s_task_game.game_info[0].game_order = 0; |
|
|
|
_s_task_game.game_info[0].game_order_index = 0; |
|
|
|
_s_task_game.game_info[0].game_timeout_seconds = 600; |
|
|
|
_s_task_game.game_info[0].game_score = 0; |
|
|
|
|
|
|
@ -78,9 +77,9 @@ void L3_task_game_init(void) |
|
|
|
_s_task_game.game_info[1].game_supported_oid[1].oid = 0x3145; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[2].oid = 0x3146; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[3].oid = 0x3147; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[4].oid = 0x3148; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[5].oid = 0x3149; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[6].oid = 0x314A; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[4].oid = 0x3149; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[5].oid = 0x314A; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[6].oid = 0x314B; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[7].oid = 0x314C; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[8].oid = 0x314D; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[9].oid = 0x314E; |
|
|
@ -102,7 +101,6 @@ void L3_task_game_init(void) |
|
|
|
_s_task_game.game_info[1].game_supported_oid[25].oid = 0x3179; |
|
|
|
_s_task_game.game_info[1].game_supported_oid[25].yes_or_no = 0; |
|
|
|
_s_task_game.game_info[1].game_order = 1; |
|
|
|
_s_task_game.game_info[1].game_order_index = 0; |
|
|
|
_s_task_game.game_info[1].game_timeout_seconds = 600; |
|
|
|
_s_task_game.game_info[1].game_score = 0; |
|
|
|
|
|
|
@ -116,7 +114,6 @@ void L3_task_game_init(void) |
|
|
|
_s_task_game.game_info[2].game_supported_oid[5].oid = 0x317A; |
|
|
|
_s_task_game.game_info[2].game_supported_oid[5].yes_or_no = 0; |
|
|
|
_s_task_game.game_info[2].game_order = 1; |
|
|
|
_s_task_game.game_info[2].game_order_index = 0; |
|
|
|
_s_task_game.game_info[2].game_timeout_seconds = 600; |
|
|
|
_s_task_game.game_info[2].game_score = 0; |
|
|
|
|
|
|
@ -186,17 +183,26 @@ void L3_task_game_handler(S_TASK_GAME *s) |
|
|
|
} |
|
|
|
TTSS_Task_step(D_task_GAME_PLAY) |
|
|
|
U8 i = 0,j = 0; |
|
|
|
U8 has_unhandled_point = 0; |
|
|
|
for (i = 0; i < game_supported_oid_max; i++) |
|
|
|
{ |
|
|
|
POINT_INFO* p = &_s_task_game.game_info[_s_task_game.game_info_index].game_supported_oid[i]; |
|
|
|
GAME_INF* g = &s->game_info[_s_task_game.game_info_index]; |
|
|
|
POINT_INFO* p = &s->game_info[_s_task_game.game_info_index].game_supported_oid[i]; |
|
|
|
if (p->oid == 0) |
|
|
|
{ |
|
|
|
break; |
|
|
|
} |
|
|
|
if (s->read_oid == p->oid) |
|
|
|
if (s->read_oid != p->oid) |
|
|
|
{ |
|
|
|
if (p->yes_or_no == 1 && p->handled == 0) |
|
|
|
{ |
|
|
|
has_unhandled_point = 1; |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
//错误码
|
|
|
|
if (p->yes_or_no == 0) |
|
|
|
//错误码 或者 是正确码有序,但是存在未处理的点
|
|
|
|
if (p->yes_or_no == 0 || (p->yes_or_no == 1 && g->game_order == 1 && has_unhandled_point == 1)) |
|
|
|
{ |
|
|
|
s->eeror_times++; |
|
|
|
L0_uart0_sendstr("eeror_times = "); |
|
|
@ -210,7 +216,7 @@ void L3_task_game_handler(S_TASK_GAME *s) |
|
|
|
L2_WT2605B_Broadcast(p->point_audio); |
|
|
|
} |
|
|
|
} |
|
|
|
//正确码
|
|
|
|
//正确码 并且是(无序的 或者 是有序的没有未处理的点)
|
|
|
|
else |
|
|
|
{ |
|
|
|
//未处理
|
|
|
@ -262,7 +268,7 @@ void L3_task_game_handler(S_TASK_GAME *s) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
L2_task_go_Tdelay(D_task_READ_OID,D_Tdelay_2s); |
|
|
|
L2_task_go_Tdelay(D_task_READ_OID,D_Tdelay_300ms); |
|
|
|
|
|
|
|
TTSS_Task_end(); |
|
|
|
|
|
|
|