chiark / gitweb /
working on making it compile, hah
authorian <ian>
Sun, 27 Mar 2005 22:18:29 +0000 (22:18 +0000)
committerian <ian>
Sun, 27 Mar 2005 22:18:29 +0000 (22:18 +0000)
hostside/safety.c

index 544da3b709e4e1688f7152c661deac5fe2edf1c7..c7181b5651369a268cdfb1037b4c074b8ec653b3 100644 (file)
@@ -34,30 +34,30 @@ static void lay_train_pass(LayTrainState *l,
   SegmentState *seg;
   const SegmentInfo *segi;
   long overall, remain;
-  int *invert_likehere, *invert_unlikehere;
-  TrainState *tra= s->trains[l->tran];
+  int *invert_likehere, *invert_unlikehere, train_inverted_here;
+  TrainState *tra= &s.trains[l->tran];
 
   if (l->ec) return;
 
-  segn= tra->segn;
-  seg= &s->segs[segn];
+  segn= tra->foredetect;
+  seg= &s.segments[segn];
 
   remain= overall= advance + speed * SPEED_CLEAR_MULT;
 
   for (;;) {
     segn= tloc.segn;
-    seg= &s->segs[segn];
-    segi= &info_segment[segn];
+    seg= &s.segments[segn];
+    segi= &info_segments[segn];
 
     if (check_clash) {
       if (seg->tr_updated) {
-       *ec= safety_problem(tloc.segn, l->tran, "self-collision");
+       l->ec= safety_problem(tloc.segn, l->tran, "self-collision");
        return;
       }
       if (seg->owned) {
-       if (seg->owner != tran) {
+       if (seg->owner != l->tran) {
          l->ec= safety_problem(tloc.segn, l->tran, seg->owner, "collision"
-                               " with %s", info_trans[seg->owner].pname);
+                               " with %s", info_trains[seg->owner].pname);
          return;
        }
        seg_clear_stale(seg);
@@ -65,9 +65,9 @@ static void lay_train_pass(LayTrainState *l,
     }
     
     seg->owned= 1;
-    seg->owner_backwards= tloc.backwards ^ backwards;
+    seg->tr_backwards= tloc.backwards ^ backwards;
     seg->tr_updated= 1;
-    seg->tran= l->tran;
+    seg->owner= l->tran;
 
     train_inverted_here= seg->seg_inverted ^ seg->tr_backwards;
     invert_likehere= &l->invert_count[train_inverted_here];