]> rtime.felk.cvut.cz Git - eurobot/public.git/commitdiff
corns: add was_collected field to struct corn type
authorFilip Jares <filipjares@post.cz>
Mon, 26 Apr 2010 21:18:03 +0000 (23:18 +0200)
committerFilip Jares <filipjares@post.cz>
Mon, 26 Apr 2010 21:28:58 +0000 (23:28 +0200)
src/robofsm/corns_configs.c
src/robofsm/corns_configs.h

index 96f4da284ddb1a2d8f6aa462d773062bba5da540..a83c2b721f33bebdd8e8726b37e6df4435f57fec 100644 (file)
@@ -307,10 +307,13 @@ void print_positions_indexes(int **positions)
                        position_indexes_to_string(positions[i]));
        }
 }
- void print_corn_position(struct corn * corn)
- {
-       printf("corn: %s is %s\n", position_to_string(&corn->position), (corn->is_fake?"fake":"real"));
- }
+
+void print_corn_position(struct corn * corn)
+{
+       printf("corn: %s is %s, %s collected\n", position_to_string(&corn->position),
+               (corn->is_fake?"fake":"real"),
+               (corn->was_collected?"    was":"was not"));
+}
 
 void print_corns_positions(struct corns_group * corns_group)
 {
@@ -318,10 +321,11 @@ void print_corns_positions(struct corns_group * corns_group)
        int i;
 
        for(corn = corns_group->corns, i = 1; corn < &corns_group->corns[corns_group->corns_count]; corn++, i++) {
-               printf("corn no. %2i coords: %s, is %s\n",
+               printf("corn no. %2i coords: %s, is %s, %s collected\n",
                        i,
                        position_to_string(&corn->position),
-                       (corn->is_fake?"fake":"real"));
+                       (corn->is_fake?"fake":"real"),
+                       (corn->was_collected?"    was":"was not"));
        }
 }
 
@@ -453,6 +457,7 @@ struct corns_group * get_fake_corns(int left_right_conf, int center_conf)
        struct corn * corn; int i;
        for(corn = group->corns, i = 0; corn < &group->corns[NUM_OF_FAKE_CORNS]; corn++, i++) {
                corn->is_fake = true;
+               corn->was_collected = false;
                transform_corn_indexes_into_position(positions_indexes[i], &corn->position);
        }
 
@@ -491,6 +496,7 @@ struct corns_group * get_all_corns(int left_right_conf, int center_conf)
                        if (!contains_group_corn_with_position(fake_group, &some_corn_position)
                            && !contains_group_corn_with_position(group, &some_corn_position)) {
                                corn->is_fake = false;
+                               corn->was_collected = false;
                                copy_position_values(&some_corn_position, &corn->position);
                                break;
                        }
index 094f60db96eddafb493707b79149dc9c9d9085a1..42d3f092f850a1eeb46fc839ceedc2c8c0cf5a25 100644 (file)
@@ -23,6 +23,7 @@ struct position {
 struct corn {
        struct position position;
        bool is_fake;
+       bool was_collected;
 };
 
 struct corns_group {