From: Hesham E. <hes...@us...> - 2007-02-06 22:49:35
|
Update of /cvsroot/sserver/rcsoccersim/rcssserver3D/plugin/soccer/soccerruleaspect In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv15004/rcssserver3D/plugin/soccer/soccerruleaspect Modified Files: soccerruleaspect.cpp Log Message: max length of say messages is 20 chars, an offside bug is fixed Index: soccerruleaspect.cpp =================================================================== RCS file: /cvsroot/sserver/rcsoccersim/rcssserver3D/plugin/soccer/soccerruleaspect/soccerruleaspect.cpp,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** soccerruleaspect.cpp 10 Jun 2006 16:38:06 -0000 1.25 --- soccerruleaspect.cpp 6 Feb 2007 22:49:31 -0000 1.26 *************** *** 48,52 **** mWaitBeforeKickOff(1.0), mSingleHalfTime(false), ! mSayMsgSize(512), mAudioCutDist(50.0), mUseOffside(true), --- 48,52 ---- mWaitBeforeKickOff(1.0), mSingleHalfTime(false), ! mSayMsgSize(20), mAudioCutDist(50.0), mUseOffside(true), *************** *** 833,836 **** --- 833,837 ---- TTime kickingTime; TTime time; + static TTime lastCollisionTime = 0.0; if (! mLastModeWasPlayOn) *************** *** 840,845 **** } ! if (! mBallState->GetLastCollidingAgent(collidingAgent,collidingTime) && ! ! mBallState->GetLastKickingAgent(kickingAgent,kickingTime) ) { return false; --- 841,850 ---- } ! if (! mBallState->GetLastCollidingAgent(collidingAgent,collidingTime) ) ! { ! return false; ! } ! ! if (! mBallState->GetLastKickingAgent(kickingAgent,kickingTime) ) { return false; *************** *** 856,859 **** --- 861,865 ---- agent = kickingAgent; } + // if the last colliding agent is the first agent that touches the ball // after "a goal kick" or "a kick-in(FIFA: throw-in)" or "a corner kick" *************** *** 868,875 **** // offside, if we sometime want to consider // "interfering with an opponent" we should remove this condition ! if (mGameState->GetTime() != time) { return false; } // if the second last collinding agent is the last colliding agent, --- 874,882 ---- // offside, if we sometime want to consider // "interfering with an opponent" we should remove this condition ! if (lastCollisionTime == time) { return false; } + lastCollisionTime = time; // if the second last collinding agent is the last colliding agent, |