diff options
Diffstat (limited to 'Kod')
| -rw-r--r-- | Kod/bilbana/yc4/do_car.m | 16 | ||||
| -rw-r--r-- | Kod/bilbana/yc4/main.m | 17 |
2 files changed, 30 insertions, 3 deletions
diff --git a/Kod/bilbana/yc4/do_car.m b/Kod/bilbana/yc4/do_car.m index ce3d76c..ed8de89 100644 --- a/Kod/bilbana/yc4/do_car.m +++ b/Kod/bilbana/yc4/do_car.m @@ -33,6 +33,10 @@ if car.running == true end end +if car.stopped == true + return +end + %% READ INPUT FROM TRACK if car.running == true if car.lap ~= 0 @@ -66,6 +70,18 @@ if car.running == true end end + if car.stopping == true + % CHECK IF CAR IS AT THE END OF TRACK + if car.position > (car.map(80, 1) / 100) - 0.8 % 80cm + disp(car.position) + disp((car.map(80, 1) / 100) - 300) + set_car_speed(car.num, 0); + car.stopped = true; + return + end + end + + %% CHECK POINT if car.new_check_point == true if car.new_lap == false % choose_position krachar vid nytt varv (seg 10) diff --git a/Kod/bilbana/yc4/main.m b/Kod/bilbana/yc4/main.m index 8ee18b2..fcff963 100644 --- a/Kod/bilbana/yc4/main.m +++ b/Kod/bilbana/yc4/main.m @@ -35,6 +35,8 @@ car1 = struct; car1.num = 1; car1.running = false; car1.automatic = true; +car1.stopping = false; +car1.stopped = false; car1.segment = 1; car1.lap = 0; car1.lap_times = []; @@ -49,6 +51,8 @@ car2 = struct; car2.num = 2; car2.running = false; car2.automatic = true; +car2.stopping = false; +car2.stopped = false; car2.segment = 1; car2.lap = 0; car2.lap_times = []; @@ -103,6 +107,9 @@ while 1 if strcmp(get(hf,'currentcharacter'),'q') close(hf) break + elseif strcmp(get(hf, 'currentcharacter'), 's') + car1.stopping = true; + car2.stopping = true; end figure(hf) @@ -114,12 +121,16 @@ while 1 if car1.stop == true disp('stopped by car 1'); break; - end - if car2.stop == true + end + if car2.stop == true disp('stopped by car 2'); break; - end + end + if (~car2.running && car1.stopped) || (~car1.running && car2.stopped) || (car1.stopped && car2.stopped) + break; + end + %% END OF LOOP while 1 %Whileloop med paus som k�rs till pausen �verskridit 0.07 sekunder % DISPLAY |
