Skip to content

Building

Graydon edited this page Mar 21, 2017 · 7 revisions

public struct Building

Base Class: ValueType

Fields

public Frame m_frame0
public Frame m_frame1
public Frame m_frame2
public Frame m_frame3
public Flags m_flags
public Problem m_problems
public uint m_buildIndex
public uint m_citizenUnits
public Vector3 m_position
public float m_angle
public ushort m_netNode
public ushort m_waterSource
public ushort m_nextGridBuilding
public ushort m_nextGridBuilding2
public ushort m_ownVehicles
public ushort m_guestVehicles
public ushort m_sourceCitizens
public ushort m_targetCitizens
public ushort m_electricityBuffer
public ushort m_waterBuffer
public ushort m_sewageBuffer
public ushort m_garbageBuffer
public ushort m_crimeBuffer
public ushort m_customBuffer1
public ushort m_customBuffer2
public ushort m_infoIndex
public byte m_baseHeight
public byte m_productionRate
public byte m_waterPollution
public byte m_fireIntensity
public byte m_happiness
public byte m_health
public byte m_citizenCount
public byte m_lastFrame
public byte m_tempImport
public byte m_tempExport
public byte m_finalImport
public byte m_finalExport
public byte m_electricityProblemTimer
public byte m_waterProblemTimer
public byte m_workerProblemTimer
public byte m_incomingProblemTimer
public byte m_outgoingProblemTimer
public byte m_healthProblemTimer
public byte m_deathProblemTimer
public byte m_serviceProblemTimer
public byte m_taxProblemTimer
public byte m_majorProblemTimer
public byte m_levelUpProgress
public byte m_width
public byte m_length
public byte m_education1
public byte m_education2
public byte m_education3
public byte m_teens
public byte m_youngs
public byte m_adults
public byte m_seniors
public byte m_fireHazard
private static ushort[] TempMask

Properties

public BuildingInfo Info { get; set; }
public int Width { get; set; }
public int Length { get; set; }

Constructors

static Building()

Methods

public void RenderInstance(CameraInfo cameraInfo, ushort buildingID, int layerMask)
private void RenderInstance(CameraInfo cameraInfo, ushort buildingID, int layerMask, BuildingInfo info, ref Instance data)
public static void RenderLod(CameraInfo cameraInfo, BuildingInfoBase info)
public void PlayAudio(ListenerInfo listenerInfo, ushort buildingID)
public Frame GetLastFrameData()
public Frame GetFrameData(uint simulationFrame)
public void SetFrameData(uint simulationFrame, Frame data)
public void GetInfoWidthLength(out BuildingInfo info, out int width, out int length)
public static float CalculateLocalMeshOffset(BuildingInfo info, int length)
public static Vector3 CalculateMeshPosition(BuildingInfo info, Vector3 position, float angle, int length)
public static Quaternion CalculateMeshRotation(float angle)
public void CalculateMeshPosition(out Vector3 meshPosition, out Quaternion meshRotation)
public Vector3 CalculateSidewalkPosition()
public Vector3 CalculateSidewalkPosition(float xOffset, float zOffset)
public static Vector3 CalculateSidewalkPosition(Vector3 position, float angle, int length)
public static Vector3 CalculateSidewalkPosition(Vector3 position, float angle, int length, float xOffset, float zOffset)
public Vector3 CalculatePosition(Vector3 offset)
public static Vector3 CalculatePosition(Vector3 position, float angle, Vector3 offset)
private static void SampleHeight(BuildingInfo info, Vector3 pos, ref float minY, ref float maxY)
public static void SampleBuildingHeight(Vector3 worldPos, float angle, int width, int length, BuildingInfo info, out float minY, out float maxY, out float buildingY)
public void CalculateBuilding(ushort buildingID)
public void UpdateBuilding(ushort buildingID)
public void TerrainUpdated(ushort buildingID, float minX, float minZ, float maxX, float maxZ)
public void AfterTerrainUpdated(ushort buildingID, float minX, float minZ, float maxX, float maxZ)
public static void TerrainUpdated(BuildingInfo info, ushort buildingID, Vector3 position, float angle, int width, int length, float minX, float minZ, float maxX, float maxZ)
public bool OverlapQuad(ushort buildingID, Quad2 quad, float minY, float maxY)
public bool RayCast(Segment3 ray, out float t)
public void AddOwnVehicle(ushort vehicleID, ref Vehicle data)
public void RemoveOwnVehicle(ushort vehicleID, ref Vehicle data)
public void AddGuestVehicle(ushort vehicleID, ref Vehicle data)
public void RemoveGuestVehicle(ushort vehicleID, ref Vehicle data)
public void AddSourceCitizen(ushort instanceID, ref CitizenInstance data)
public void AddTargetCitizen(ushort instanceID, ref CitizenInstance data)
public void RemoveSourceCitizen(ushort instanceID, ref CitizenInstance data)
public void RemoveTargetCitizen(ushort instanceID, ref CitizenInstance data)
public uint GetEmptyCitizenUnit(Flags flag)
public uint GetNotFullCitizenUnit(Flags flag)
public uint FindCitizenUnit(Flags flag, uint citizen)
public ushort FindSegment(Service service, SubService subService, Layer itemLayers)
public ushort FindNode(Service service, SubService subService, Layer itemLayers)
public bool ContainsSegment(ushort segment)
public bool ContainsNode(ushort node)
public ushort FindParentNode(ushort buildingID)
public bool CheckZoning(Zone zone)
private void CheckZoning(Zone zone, ref uint validCells, ref ZoneBlock block)
public float SampleWalkingHeight(Vector3 worldPos, float terrainHeight)
public bool CalculateGroupData(ushort buildingID, int layer, ref int vertexCount, ref int triangleCount, ref int objectCount, ref VertexArrays vertexArrays)
public void PopulateGroupData(ushort buildingID, int groupX, int groupZ, int layer, ref int vertexIndex, ref int triangleIndex, Vector3 groupPosition, MeshData data, ref Vector3 min, ref Vector3 max, ref float maxRenderDistance, ref float maxInstanceDistance)

Clone this wiki locally