public void ReadAnimGroups(byte[] raw) { int count = GetArrayCount(raw); byte[] buff = GetArrayContent(raw); int pos = 0; for (int i = 0; i < count; i++) { List <PropertyReader.Property> pp = PropertyReader.ReadProp(pcc, buff, pos); pos = pp[pp.Count - 1].offend; AnimGroupEntry e = new AnimGroupEntry(); foreach (PropertyReader.Property p in pp) { switch (pcc.getNameEntry(p.Name)) { case "GroupName": e.GroupName = pcc.getNameEntry(p.Value.IntValue); break; case "RateScale": e.RateScale = BitConverter.ToSingle(p.raw, p.raw.Length - 4); break; case "SynchPctPosition": e.SynchPctPosition = BitConverter.ToSingle(p.raw, p.raw.Length - 4); break; } } AnimGroups.Add(e); } }
public void ReadAnimGroups(byte[] raw) { int count = GetArrayCount(raw); byte[] buff = GetArrayContent(raw); int pos = 0; for (int i = 0; i < count; i++) { List<PropertyReader.Property> pp = PropertyReader.ReadProp(pcc, buff, pos); pos = pp[pp.Count - 1].offend; AnimGroupEntry e = new AnimGroupEntry(); foreach(PropertyReader.Property p in pp) switch (pcc.getNameEntry(p.Name)) { case "GroupName": e.GroupName = pcc.getNameEntry(p.Value.IntValue); break; case "RateScale": e.RateScale = BitConverter.ToSingle(p.raw, p.raw.Length - 4); break; case "SynchPctPosition": e.SynchPctPosition = BitConverter.ToSingle(p.raw, p.raw.Length - 4); break; } AnimGroups.Add(e); } }