public NewsHeadline GetRandomByIdealType(IdealType idealType) { List<NewsHeadline> validHeadlines = new List<NewsHeadline>(); for (int i = 0; i < pool.Count; i++) { if (pool[i].idealType == idealType) { validHeadlines.Add(pool[i]); } } NewsHeadline returnHeadline = null; if (validHeadlines.Count > 0) { returnHeadline = validHeadlines[UnityEngine.Random.Range(0, validHeadlines.Count)]; } else { returnHeadline = pool[UnityEngine.Random.Range(0, pool.Count)]; } pool.Remove(returnHeadline); return returnHeadline; }
public void RandomiseKeyIdeals() { int idealsCount = Utility.GetEnumValues <IdealType>().Length; KeyIdeal = (IdealType)UnityEngine.Random.Range(0, idealsCount); RandomiseCurrentIdeals(); }
protected void OnHeadlineResolved(IdealType idealType, IdealLean lean) { List <Sheep> flippingSheep = new List <Sheep>(); // Get sheep's whose lean are opposite to the headline idealType. for (int i = 0; i < allSheep.Count; i++) { Sheep sheep = allSheep[i]; IdealLean sheepLean = sheep.Ideals.GetIdealLean(idealType); if (lean == IdealLean.Positive && sheepLean == IdealLean.Negative) { flippingSheep.Add(sheep); } else if (lean == IdealLean.Negative && sheepLean == IdealLean.Positive) { flippingSheep.Add(sheep); } sheep.SetState(SheepState.Idle); } // Choose an amount to flip and flip 'em! int amountToFlip = 0; if (flippingSheep.Count <= 5) { amountToFlip = flippingSheep.Count; } else { amountToFlip = (int)((float)flippingSheep.Count * UnityEngine.Random.Range(0.5f, 1f)); } for (int i = 0; i < amountToFlip; i++) { Sheep flipSheep = flippingSheep[i]; //float prevLean = flipSheep.Lean; flipSheep.Ideals.SetIdealValue(idealType, -flippingSheep[i].Ideals.GetIdealValue(idealType)); //flipSheep.UpdateLean(player, dictator); /*if (flipSheep.Lean != prevLean) * { * flipSheep.SetState(SheepState.Newspaper); * }*/ } newsHeadline.Hide(); StartNewsHeadlineCountdown(); AudioManager.PlaySFXRandom("baa"); AudioManager.PlaySFX("sheep-move"); playerControls.Show(); playerControls.ShowNewCards(); }
protected void ParseText() { Debug.Log("Parse"); cardCollection.cards.Clear(); string[] allLines = System.IO.File.ReadAllLines(Application.dataPath + "/ResistJam/StreamingAssets/ResistJamCards.csv"); List <List <string> > CardTable = new List <List <string> >(); for (int i = 0; i < allLines.Length; i++) { CardTable.Add(new List <string>()); string[] result = allLines[i].Split(new string[] { ";" }, StringSplitOptions.None); foreach (string s in result) { CardTable[i].Add(s); } } IdealType currentIdealType = IdealType.Environment; for (int i = 1; i < CardTable.Count; i++) { if (CardTable[i][2] != "") { Card newCard = new Card(); if (CardTable[i][0] == "ENVIRONMENT") { currentIdealType = IdealType.Environment; } else if (CardTable[i][0] == "CIVIL RIGHTS") { currentIdealType = IdealType.CivilRights; } else if (CardTable[i][0] == "PUBLIC SERVICES") { currentIdealType = IdealType.PublicServices; } else if (CardTable[i][0] == "FOREIGN POLICY") { currentIdealType = IdealType.ForeignPolicy; } else if (CardTable[i][0] == "ECONOMY") { currentIdealType = IdealType.Economy; } else if (CardTable[i][0] == "SCIENCE & CULTURE") { currentIdealType = IdealType.ScienceAndCulture; } newCard.idealType = currentIdealType; newCard.value = float.Parse(CardTable[i][3]); newCard.message = CardTable[i][2]; cardCollection.cards.Add(newCard); } } Debug.Log(cardCollection.cards.Count); }
public void InitHeadline(IdealType ideal, IdealLean idealLean, string headline) { this.currentIdeal = ideal; this.idealLean = idealLean; headlineText.text = headline; isHeadlineInitialised = true; responded = false; }
public void RandomiseIdealValue(IdealType idealType) { float newVal = 0f; if (KeyIdeal == idealType) { newVal = RandomValue(3, 3); } else { newVal = RandomValue(1, 2); } idealsDict[idealType] = newVal; }
public IdealLean GetIdealLean(IdealType idealType) { float val = idealsDict[idealType]; if (val == 0f) { return(IdealLean.Neutral); } else if (val > 0f) { return(IdealLean.Positive); } else { return(IdealLean.Negative); } }
public void AddToIdealValue(IdealType idealType, float value) { idealsDict[idealType] += value; idealsDict[idealType] = Mathf.Clamp(idealsDict[idealType], -5f, 5f); }
public void SetIdealValue(IdealType idealType, float value) { idealsDict[idealType] = Mathf.Clamp(value, -5f, 5f); }
public float GetIdealValue(IdealType idealType) { return(idealsDict[idealType]); }
protected string GetString(IdealType idealType) { return(idealType.ToString() + ": " + sheep.Ideals.GetIdealValue(idealType).ToString("N1")); }
protected void SetHeaderSprite(IdealType idealType) { headerImage.sprite = headerSprites[(int)idealType]; }