From fd7b1d06cd61a23bd893fb403d2fc84503e01962 Mon Sep 17 00:00:00 2001 From: johns <> Date: Tue, 13 Mar 2001 21:39:34 +0000 Subject: [PATCH] Made patrol working --- src/action/action_patrol.cpp | 14 +++++++++----- src/action/command.cpp | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/action/action_patrol.cpp b/src/action/action_patrol.cpp index 6247dd5d0..f1a1b3732 100644 --- a/src/action/action_patrol.cpp +++ b/src/action/action_patrol.cpp @@ -57,18 +57,22 @@ global void HandleActionPatrol(Unit* unit) if( DoActionMove(unit)<0 ) { // reached end-point or stop #ifdef NEW_ORDERS - Order order; + //Order order; + int tmp; unit->Orders[0].Action=UnitActionPatrol; // // Swap the points. // - order=unit->Orders[0]; - - DebugLevel0Fn("FIXME: patrol not written\n"); - + //order=unit->Orders[0]; + tmp=(int)unit->Orders[0].Arg1; + unit->Orders[0].Arg1=(void*)((unit->Orders[0].X<<16)|unit->Orders[0].Y); + unit->Orders[0].X=tmp>>16; + unit->Orders[0].Y=tmp&0xFFFF; ResetPath(unit->Orders[0]); + + NewResetPath(unit); #else unit->Command.Action=UnitActionPatrol; diff --git a/src/action/command.cpp b/src/action/command.cpp index beede81ff..60b6d571f 100644 --- a/src/action/command.cpp +++ b/src/action/command.cpp @@ -720,7 +720,7 @@ global void CommandPatrolUnit(Unit* unit,int x,int y,int flush) order->Type=NULL; DebugCheck( unit->X&~0xFFFF || unit->Y&~0xFFFF ); // BUG-ALERT: encode source into arg1 as two 16 bit values! - order->Arg1=(void*)(unit->X<<16|unit->Y); + order->Arg1=(void*)((unit->X<<16)|unit->Y); } #else Command* command;