private void createBridge(BridgeElement bridge) { Vector2 position = bridge.position; GameObject obj = Instantiate(bridgePrefab, this.transform); BridgeController controller = obj.GetComponent <BridgeController>(); obj.gameObject.transform.position = new Vector3(-this.mapModel.Width / 2f + position.x + 0.5f, 0, -this.mapModel.Height / 2f + position.y + 0.5f); // initial status controller.setInitialStatus(bridge.Closed); // Length if (bridge.Length > 1) { obj.gameObject.transform.localScale = new Vector3(bridge.Length, bridge.Length, obj.gameObject.transform.localScale.z); Vector3 old_position = obj.gameObject.transform.position; obj.gameObject.transform.position = new Vector3(old_position.x + (bridge.VerticalOrientation?0f:bridge.Length / 2f - 0.5f), old_position.y, old_position.z - (!bridge.VerticalOrientation?0f:bridge.Length / 2f - 0.5f)); } // Orientation if (bridge.VerticalOrientation) { obj.gameObject.transform.rotation = Quaternion.Euler(0, 90, 0); } bridges.Add(controller); }
public void addBridge(BridgeElement bridge) { this.bridges.Add(bridge); }