internal EventCollection(IEnumerable <string> eventChain, IBase script) { if (eventChain.Count() == 0) { return; } Events = eventChain.First().Trim().Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < Events.Length; ++i) { Events[i] = GenerateEventName(Events[i], script.GetGroup(), script.GetObjectId()); } if (eventChain.Count() > 1) { Next = new EventCollection(eventChain.Skip(1), script); } }