public static BuildTowerEventArgs Create(TowerData towerData, IPlacementArea placementArea, IntVector2 placeGrid, Vector3 position, Quaternion rotation, object userData = null) { BuildTowerEventArgs buildTowerEventArgs = ReferencePool.Acquire <BuildTowerEventArgs>(); buildTowerEventArgs.TowerData = towerData; buildTowerEventArgs.PlacementArea = placementArea; buildTowerEventArgs.PlaceGrid = placeGrid; buildTowerEventArgs.Position = position; buildTowerEventArgs.Rotation = rotation; return(buildTowerEventArgs); }
/// <summary> /// Returns transform.position, as there is only one available spot /// </summary> /// <param name="gridPosition">The coordinate in grid space</param> /// <param name="sizeOffset"><see cref="IntVector2"/> indicating size of object to center.</param> public Vector3 GridToWorld(IntVector2 gridPosition, IntVector2 sizeOffset) { return(transform.position); }
/// <summary> /// Tests whether the placement area is valid. /// </summary> /// <param name="gridPos">The grid location</param> /// <param name="size">The size of the item</param> public TowerFitStatus Fits(IntVector2 gridPos, IntVector2 size) { return(m_IsOccupied ? TowerFitStatus.Overlaps : TowerFitStatus.Fits); }
/// <summary> /// Returns (0, 0), as there is only one available spot /// </summary> /// <param name="worldPosition"><see cref="Vector3"/> indicating world space coordinates to convert.</param> /// <param name="sizeOffset"><see cref="IntVector2"/> indicating size of object to center.</param> public IntVector2 WorldToGrid(Vector3 worldPosition, IntVector2 sizeOffset) { return(new IntVector2(0, 0)); }