mirror of
https://github.com/OpenDiablo2/OpenDiablo2
synced 2024-09-10 13:34:36 -04:00
* refactored logging in d2config, d2record, and d2asset * asset manager, record manager, and file loader now utilitize d2util.Logger * added colored logging to d2util.Logger (excluding windows platforms) * removed mpq file verification from d2config; d2loader handles this * record loaders now use the record manager's logger for printing info * added command line argument for setting log level (`--loglevel 4`, `-l4`, or `-l 4` * added `LogLevel` parameter to config file * default log level will show errors, warnings, and info log messages * specifying log level as an argument overrides setting from config file * fixed log level tests
52 lines
1.2 KiB
Go
52 lines
1.2 KiB
Go
package d2records
|
|
|
|
import (
|
|
"strconv"
|
|
|
|
"github.com/OpenDiablo2/OpenDiablo2/d2common/d2fileformats/d2txt"
|
|
)
|
|
|
|
func itemQualityLoader(r *RecordManager, d *d2txt.DataDictionary) error {
|
|
records := make(ItemQualities)
|
|
|
|
for d.Next() {
|
|
qual := &ItemQualityRecord{
|
|
NumMods: d.Number("nummods"),
|
|
Mod1Code: d.String("mod1code"),
|
|
Mod1Param: d.Number("mod1param"),
|
|
Mod1Min: d.Number("mod1min"),
|
|
Mod1Max: d.Number("mod1max"),
|
|
Mod2Code: d.String("mod2code"),
|
|
Mod2Param: d.Number("mod2param"),
|
|
Mod2Min: d.Number("mod2min"),
|
|
Mod2Max: d.Number("mod2max"),
|
|
Armor: d.Bool("armor"),
|
|
Weapon: d.Bool("weapon"),
|
|
Shield: d.Bool("shield"),
|
|
Thrown: d.Bool("thrown"),
|
|
Scepter: d.Bool("scepter"),
|
|
Wand: d.Bool("wand"),
|
|
Staff: d.Bool("staff"),
|
|
Bow: d.Bool("bow"),
|
|
Boots: d.Bool("boots"),
|
|
Gloves: d.Bool("gloves"),
|
|
Belt: d.Bool("belt"),
|
|
Level: d.Number("level"),
|
|
Multiply: d.Number("multiply"),
|
|
Add: d.Number("add"),
|
|
}
|
|
|
|
records[strconv.Itoa(len(records))] = qual
|
|
}
|
|
|
|
if d.Err != nil {
|
|
return d.Err
|
|
}
|
|
|
|
r.Item.Quality = records
|
|
|
|
r.Logger.Infof("Loaded %d ItemQualities records", len(records))
|
|
|
|
return nil
|
|
}
|