package d2records import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2fileformats/d2txt" ) func skillCalcLoader(r *RecordManager, d *d2txt.DataDictionary) error { records, err := loadCalculations(r, d) if err != nil { return err } r.Logger.Infof("Loaded %d Skill Calculation records", len(records)) r.Calculation.Skills = records return nil } func missileCalcLoader(r *RecordManager, d *d2txt.DataDictionary) error { records, err := loadCalculations(r, d) if err != nil { return err } r.Logger.Infof("Loaded %d Missile Calculation records", len(records)) r.Calculation.Missiles = records return nil } func loadCalculations(r *RecordManager, d *d2txt.DataDictionary) (Calculations, error) { records := make(Calculations) for d.Next() { record := &CalculationRecord{ Code: d.String("code"), Description: d.String("*desc"), } records[record.Code] = record } if d.Err != nil { return nil, d.Err } r.Logger.Infof("Loaded %d Skill Calculation records", len(records)) return records, nil }