public static AiRule ReadFrom(PrimitiveReader reader) { AiRule rule = new AiRule(); rule.Unknown = reader.ReadBytes(8); rule.FactsCount = reader.ReadUInt8(); rule.FactsCountAction = reader.ReadUInt8(); rule.Unknown2 = reader.ReadUInt16(); AiRuleData[] rulesData = new AiRuleData[8]; for (int i = 0; i < rulesData.Length; i++) { rulesData[i] = AiRuleData.ReadFrom(reader); } return(rule); }
public static AiData ReadFrom(PrimitiveReader reader) { AiData data = new AiData(); data.Unknown = reader.ReadUInt32(); data.Unknown2 = reader.ReadUInt32(); data.MaximumRules = reader.ReadUInt16(); ushort rulesCount = reader.ReadUInt16(); data.Unknown3 = reader.ReadUInt32(); List <AiRule> rules = new List <AiRule>(rulesCount); for (int i = 0; i < rulesCount; i++) { rules.Add(AiRule.ReadFrom(reader)); } data.Rules = rules; return(data); }