public ObjectPlacedInSeasonStartEvent(GameObject go, SeasonalEffect effect, SeasonCoordinate coord, string seasonName) { this.placedObject = go; this.effect = effect; this.coord = coord; this.seasonName = seasonName; }
public void SeasonToGlobalCoordinateAngleTest() { var startAngle = 0f; SeasonCoordinate sc; Vector3 gc; sc = new SeasonCoordinate(1, 0f, 0); gc = SeasonCoordinateManager.SeasonToGlobalCoordinate(startAngle, sc); Assert.AreEqual(1, gc.x, 0.1); Assert.AreEqual(0, gc.z, 0.1); sc = new SeasonCoordinate(2, 45f, 0); gc = SeasonCoordinateManager.SeasonToGlobalCoordinate(startAngle, sc); Assert.AreEqual(Mathf.Sqrt(2f), gc.x, 0.1); Assert.AreEqual(Mathf.Sqrt(2f), gc.z, 0.1); sc = new SeasonCoordinate(2, 30f, 0); gc = SeasonCoordinateManager.SeasonToGlobalCoordinate(startAngle, sc); Assert.AreEqual(Mathf.Sqrt(3f), gc.x, 0.01); Assert.AreEqual(1f, gc.z, 0.01); sc = new SeasonCoordinate(2, 60f, 0); gc = SeasonCoordinateManager.SeasonToGlobalCoordinate(startAngle, sc); Assert.AreEqual(1f, gc.x, 0.01); Assert.AreEqual(Mathf.Sqrt(3f), gc.z, 0.01); }
public SeasonalObjectPlacedForFirstTime(GameObject go, SeasonalEffect effect, string season, SeasonCoordinate placedAtCoord) { this.placedObject = go; this.placedInSeason = season; this.placedAtCoord = placedAtCoord; this.effect = effect; }
public static Vector3 SeasonToGlobalCoordinate(float startAngle, SeasonCoordinate sc) { var angleRad = Mathf.Deg2Rad * (sc.angle + startAngle); var x = sc.radius * Mathf.Cos(angleRad); var z = sc.radius * Mathf.Sin(angleRad); return(new Vector3(x, sc.height, z)); }
public ObjectPlacedInSeasonFinishedEvent(GameObject go, SeasonCoordinate coord, string seasonName) { this.placedObject = go; this.coord = coord; this.seasonName = seasonName; }