public static void AddOnce(this LongEvent thisEvent, UnityAction <long> reciever) { thisEvent.RemoveListener(reciever); thisEvent.AddListener(reciever); }
public void TranslateTo(LongEvent eventData, long sequence) { eventData.Value = sequence; }
// Use this for initialization public EventMaintenance() { using (var reader = new StreamReader(@"Assets/Scripts/testLongEvents.tsv")) { reader.ReadLine(); while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split('\t'); int EventID = int.Parse(values[0]); int noofoptions = int.Parse(values[1]); int factor = int.Parse(values[2]); string desc = values[3]; string type = values[4]; LongEvent Event = new LongEvent(EventID, desc, noofoptions, factor); long_events.Add(Event); } } using (var reader = new StreamReader(@"Assets/Scripts/testLongEventsoptions.tsv")) { reader.ReadLine(); int n = 0; while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split('\t'); int eventID = int.Parse(values[0]); int prEffect = int.Parse(values[1]); int legalEffect = int.Parse(values[2]); int researchEffect = int.Parse(values[3]); double moneyPercentChange = double.Parse(values[4]); int prReq = int.Parse(values[5]); int legalReq = int.Parse(values[6]); int researchReq = int.Parse(values[7]); int doomCounter = int.Parse(values[8]); double chance = double.Parse(values[9]); int marketEffect = int.Parse(values[10]); int regulation = int.Parse(values[11]); int gasreq = int.Parse(values[12]); string optionDescription = values[13]; int EN = int.Parse(values[14]); int RN = int.Parse(values[15]); if (n != 1) { long_events[eventID - 1].options[n] = new Option(optionDescription, prEffect, legalEffect, researchEffect, moneyPercentChange, prReq, legalReq, researchReq, doomCounter, chance, marketEffect, regulation, optionDescription, EN, RN); n++; } } } // Read in event csv using (var reader = new StreamReader(@"Assets/Scripts/testOptions.tsv")) { reader.ReadLine(); while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split('\t'); int EventID = int.Parse(values[0]); string type = values[1]; string description = values[2]; //Debug.Log(description); Event newEvent = new Event(EventID, type, description, 3); events.Add(newEvent); } } using (var reader = new StreamReader(@"Assets/Scripts/testEvents.tsv")) { int count = 0; reader.ReadLine(); int lineNum = 0; while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split('\t'); int eventID = int.Parse(values[0]); int prEffect = int.Parse(values[1]); int legalEffect = int.Parse(values[2]); int researchEffect = int.Parse(values[3]); double moneyPercentChange = double.Parse(values[4]); int prReq = int.Parse(values[5]); int legalReq = int.Parse(values[6]); int researchReq = int.Parse(values[7]); int doomCounter = int.Parse(values[8]); double chance = double.Parse(values[9]); int marketEffect = int.Parse(values[10]); int regulation = int.Parse(values[11]); string optionDescription = values[12]; int EN = int.Parse(values[13]); int RN = int.Parse(values[14]); events[eventID - 1].options[count] = new Option(optionDescription, prEffect, legalEffect, researchEffect, moneyPercentChange, prReq, legalReq, researchReq, doomCounter, chance, marketEffect, regulation, optionDescription, EN, RN); lineNum = lineNum + 1; if (count == events[eventID - 1].Optionsnumber) { count = 0; } } } foreach (var Event in events) { if (Event.type == "Environment") { environmental_events.Add(Event); } if (Event.type == "Relations") { relation_events.Add(Event); } } foreach (var LongEvent in long_events) { if (LongEvent.type == "Environment") { environmental_long_events.Add(LongEvent); } if (LongEvent.type == "Relations") { relation_long_events.Add(LongEvent); } } }