示例#1
0
        public object CaptureState()
        {
            AICSaveStruct savingStruct = new AICSaveStruct();

            savingStruct.savedWaypointDwellTime      = waypointDwellTime;
            savingStruct.savedTimeSinceLastSawPlayer = timeSinceLastSawPlayer;
            savingStruct.savedNextPosition           = new SerializableVector3(nextPosition);
            return(savingStruct);
        }
示例#2
0
        public void RestoreState(object state)
        {
            AICSaveStruct savingStruct = (AICSaveStruct)state;

            waypointDwellTime = savingStruct.savedWaypointDwellTime;
            nextPosition      = savingStruct.savedNextPosition.ToVector();

            if (timeSinceLastSawPlayer <= Mathf.Epsilon)
            {
                timeSinceLastSawPlayer = Mathf.Infinity;
            }
            else
            {
                timeSinceLastSawPlayer = savingStruct.savedTimeSinceLastSawPlayer;
            }
        }