Example #1
0
        /// <summary>
        /// Calculations performed on each simulation step.
        /// For a ploppable RICO building we want to force certain building flags to be set before and after each step.
        /// </summary>
        /// <param name="buildingID">Instance ID of the building</param>
        /// <param name="buildingData">Building data struct</param>
        /// <param name="frameData">Frame data</param>
        protected override void SimulationStepActive(ushort buildingID, ref Building buildingData, ref Building.Frame frameData)
        {
            // Apply flags.
            AIUtils.SetBuildingFlags(ref buildingData);

            // Execute base method.
            base.SimulationStepActive(buildingID, ref buildingData, ref frameData);

            // Ensure flags are still applied.
            AIUtils.SetBuildingFlags(ref buildingData);
        }