summaryrefslogtreecommitdiffstats
path: root/Kod
diff options
context:
space:
mode:
authorGustav Sörnäs <gusso230@student.liu.se>2019-11-15 00:46:35 +0100
committerGustav Sörnäs <gusso230@student.liu.se>2019-11-15 08:08:40 +0100
commit6f5da496ef46c8bd04db31c14923aaf1c53399b8 (patch)
tree82c41955a340451e438ffb6e0f0295552a32e734 /Kod
parent0108fb74ef6cf2dedc1043bee939aaa9c9ecc2ac (diff)
downloadtfyy51-6f5da496ef46c8bd04db31c14923aaf1c53399b8.tar.gz
Implement key to stop car at end of track
Diffstat (limited to 'Kod')
-rw-r--r--Kod/bilbana/yc4/do_car.m14
-rw-r--r--Kod/bilbana/yc4/main.m11
2 files changed, 25 insertions, 0 deletions
diff --git a/Kod/bilbana/yc4/do_car.m b/Kod/bilbana/yc4/do_car.m
index ce3d76c..5063e1d 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,16 @@ if car.running == true
end
end
+ if car.stopping == true
+ % CHECK IF CAR IS AT THE END OF TRACK
+ if car.position > 19 % TODO idk
+ 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..6bd889c 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)
@@ -120,6 +127,10 @@ while 1
break;
end
+ if car1.stopped == true && car2.stopped == true
+ break;
+ end
+
%% END OF LOOP
while 1 %Whileloop med paus som k�rs till pausen �verskridit 0.07 sekunder
% DISPLAY