private void AddFlowerAt(int slot) { var angularPos = this.FlowerPosFromSlot (slot); Debug.Log ("Tree at slot " + slot + " pos " + angularPos); var flower = new GameObject(); flower.transform.Translate(new Vector3(0f, 9.9f, -.5f)); flower.transform.RotateAround (new Vector3 (0, 0, 0), Vector3.forward, -angularPos); var rotation = this.gameObject.transform.rotation; this.gameObject.transform.rotation = Quaternion.identity; flower.transform.parent = this.gameObject.transform; this.gameObject.transform.rotation = rotation; flower.name = "Flower"; var flowerData = new FlowerData () { slot = slot, anglePos = angularPos, gameObj = flower }; var spriteRenderer = flower.AddComponent<SpriteRenderer>(); spriteRenderer.sprite = (Sprite)Instantiate (this.sprite_WhiteFlower); this.flowers.Add(flowerData); }
public void ProcessGrowth() { if (!this.m_isUnlocked) { return; } if (this.CanGrowNewFlower()) { var surroundingSeeds = this.m_surroundingFields.Where(f => f.IsPlanted && f.IsUnlocked).Select(f => f.PlantedSeed).ToList(); var targetColor = surroundingSeeds.First().Color; var t = 1f / surroundingSeeds.Count; foreach (var seed in surroundingSeeds) { targetColor = Color.Lerp(targetColor, seed.Color, t); } var newSeed = new Seed(targetColor, 3.25f * surroundingSeeds.Count, FlowerData.GetRandomFlowerName()); this.PlantSeed(newSeed); } else if (this.CanGrow() && this.m_currentProgress < 1f) { this.m_currentProgress += this.m_progressPerDay; this.m_flowerTransform.localScale = Vector3.one * this.m_currentProgress; } else { this.m_currentProgress = 0f; this.m_plantedSeed = null; this.m_flowerTransform.localScale = Vector3.zero; } }
public void Harvest(Hex h) { FlowerData data = h.Harvest(); if (data) { inventory.AddToAllItems(data.name, data.abundance); } }
public void ShowUp(FlowerData flower) { this.flower = flower; Initialize(); SetHeight(flower.Height); StartCoroutine(ScaleUp()); RotateFlower(); RotatePistil(); }
private void Spawn(FlowerData data) { Debug.Log("Spawn " + data.FlowerType.name); var flower = Instantiate(prefab, transform, false); flower.GetComponent <FlowerCreator>().Create(data.FlowerType.PistilPrefab); var randomPosX = Mathf.Lerp(ArrangeManager.rangeX.x, ArrangeManager.rangeX.y, Random.value); flower.transform.localPosition = new Vector3(randomPosX, 0); }
public static FlowerData CreateInstance(FlowerData original) { FlowerData copy = ScriptableObject.CreateInstance <FlowerData>(); copy.name = original.name; copy.display_name = original.display_name; copy.image = original.image; copy.time_to_harvest = original.time_to_harvest; copy.abundance = original.abundance; return(copy); }
public FlowerData Harvest() { FlowerData data = flower; flower = null; item = null; readyToHarvest = false; Destroy(flowerContainer); Destroy(itemContainer); Destroy(harvestSignalContainer); return(data); }
void Show() { for (int i = 0; i < list.Count; i++) { SpecialRef specail = ConfigMng.Instance.GetSpecialRef(1); if (specail != null) { int flowerId = specail.flowers[i]; int someOneId = GameCenter.friendsMng.sendFlowerToOne; int type = GameCenter.friendsMng.SendFlowerType; FlowerData data = new FlowerData(flowerId, someOneId, type); list[i].FlowerData = data; } } }
public void SaveFlower(Flower flower) { BinaryFormatter formatter = new BinaryFormatter(); string path = Application.persistentDataPath + "/" + flower.flowerName + ".flw"; FileStream stream = new FileStream(path, FileMode.Create); FlowerData data = new FlowerData(flower); formatter.Serialize(stream, data); stream.Close(); for (int i = 0; i < flower.parts.Count; i++) { SaveFlowerPart(flower.parts[i].GetComponent <FlowerPart>()); } Debug.Log("Saving flower " + flower.flowerName); }
Route GenerateRoute(int zone) { if (zone < 0 || zone > zones.Count) { Debug.LogError($"Attempting to get invalid zone # {zone}, only {zones.Count} available"); return(null); } FlowerType type = zones[zone].Get(); FlowerData data = ControlManager.instance.MapData.FlowerTypeData[type]; return(new Route( name: data.Names[UnityEngine.Random.Range(0, data.Names.Count - 1)], type: type, distance: zone + 1, resources: UnityEngine.Random.Range(data.Resources.min, data.Resources.max) * 10, workerCapacity: UnityEngine.Random.Range(data.Size.min, data.Size.max) )); }
public void UpdateStats(string obj_id, int obj_count) { Object obj = Resources.Load("Items/" + obj_id); if (obj as ItemData) { ItemData data = obj as ItemData; SetStats(data.image, data.display_name, obj_count); } else if (obj as FlowerData) { FlowerData data = obj as FlowerData; SetStats(data.image, data.display_name, obj_count); } else { FlowerData data = Resources.Load("Items/Placeholder") as FlowerData; SetStats(data.image, obj_id, obj_count); } }
private void CreateFlower(int numberOfFlowersInField) { int startingNumber = 0; if (flowersList.Count < numberOfFlowersInField) { if (flowerReplacementInField == true) { startingNumber = flowersList.Count; } for (int i = startingNumber; i < numberOfFlowersInField; i++) { FlowerData flowerInfo = new FlowerData(); flowerInfo.FlowerDataKeyStatus = "updateLocation"; flowerInfo.FlowerWaitingTimeToDisplay = SetWaitingTimeToDisplayAFlower(); flowersList.Add(flowerInfo); } } }
public GameObject LoadFlower(string name) { string path = Application.persistentDataPath + "/" + name + ".flw"; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); FlowerData data = (FlowerData)formatter.Deserialize(stream); stream.Close(); Debug.Log("Loading Flower " + name); return(data.getFlower(material).gameObject); } else { Debug.Log("save file " + path + " not found"); return(null); } }
public bool AddItem(string obj_id) { Object obj = Resources.Load("Items/" + obj_id); if (readyToHarvest) { return(false); } else if (flower != null && obj as ItemData) { ItemData newItem = ItemData.CreateInstance(obj as ItemData); return(AddMarketItem(newItem)); } else if (flower == null && obj as FlowerData) { flower = FlowerData.CreateInstance(obj as FlowerData); flowerContainer = DisplayItem(flowerContainer, flower.image); return(true); } else { return(false); } }
public void UpdateStats(string obj_id, int obj_count, int curr_count) { UnityEngine.Object obj = Resources.Load("Items/" + obj_id); if (obj as ItemData) { ItemData data = obj as ItemData; SetStats(data.image, data.display_name); } else if (obj as FlowerData) { FlowerData data = obj as FlowerData; SetStats(data.image, data.display_name); } else { FlowerData data = Resources.Load("Items/Placeholder") as FlowerData; SetStats(data.image, obj_id); } count.text = curr_count + "/" + obj_count; marked_count = curr_count; max_count = obj_count; this.obj_id = obj_id; }
private void BuildFlowerData(bool useWhitelist) { var objData = Game1.content.Load <Dictionary <int, string> >("Data\\ObjectInformation"); var cropData = Game1.content.Load <Dictionary <int, string> >("Data\\Crops"); var spring = new List <FlowerData>(); var summer = new List <FlowerData>(); var fall = new List <FlowerData>(); var winter = new List <FlowerData>(); var whitelist = new List <int>(new int[] { 591, 593, 595, 597, 376, 402, 418 }); foreach (var crop in cropData) { string[] toks = crop.Value.Split('/'); string[] seasons = toks[1].Split(' '); int product = int.Parse(toks[3]); int category = int.Parse(objData[product].Split('/')[3].Split(' ')[1]); if (category != StardewValley.Object.flowersCategory || useWhitelist && !whitelist.Contains(product)) { continue; } List <Color> cols = new List <Color>(new Color[] { Color.White }); if (toks[8].StartsWith("true ")) { cols.Clear(); var colToks = toks[8].Split(' '); for (int i = 1; i < colToks.Length; i += 3) { int r = int.Parse(colToks[i + 0]); int g = int.Parse(colToks[i + 1]); int b = int.Parse(colToks[i + 2]); var col = new Color(r, g, b); cols.Add(col); } } foreach (var col in cols) { FlowerData fd = new FlowerData() { index = product, color = col, }; foreach (var season in seasons) { switch (season) { case "spring": spring.Add(fd); break; case "summer": summer.Add(fd); break; case "fall": fall.Add(fd); break; case "winter": winter.Add(fd); break; } } } } fd.Clear(); fd.Add("spring", spring); fd.Add("summer", summer); fd.Add("fall", fall); fd.Add("winter", winter); }