1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-06-11 02:10:43 +00:00
OpenDiablo2/d2core/d2records/monster_unique_modifiers_record.go
gravestench 271673851a
Added RecordManager implementation to remove d2datadict singletons (#736)
* Added RecordManager implementation to remove d2datadict singletons

* fix object lookup test
2020-09-19 14:33:40 -04:00

59 lines
1.5 KiB
Go

package d2records
// See [https://d2mods.info/forum/kb/viewarticle?a=161] for more info
// MonsterUniqueModifiers stores the MonsterUniqueModifierRecords
type MonsterUniqueModifiers map[string]*MonUModRecord
// MonsterUniqueModifierConstants contains constants from monumod.txt,
// can be accessed with indices from d2enum.MonUModConstIndex
type MonsterUniqueModifierConstants []int
// MonUModRecord represents a single line in monumod.txt
// Information gathered from [https://d2mods.info/forum/kb/viewarticle?a=161]
type MonUModRecord struct {
// Name of modifer, not used by other files
Name string
// ID of the modifier,
// the Mod fields of SuperUniqueRecord refer to these ID's
ID int
// Enabled boolean for whether this modifier can be applied
Enabled bool
// ExpansionOnly boolean for whether this modifier can only be applied in an expansion game.
// In the file, the value 100 represents expansion only
ExpansionOnly bool
// If true, "Minion" will be displayed below the life bar of minions of
// the monster with this modifier
Xfer bool
// Champion boolean, only usable by champion monsters
Champion bool
// FPick Unknown
FPick int
// Exclude1 monster type code that cannot have this modifier
Exclude1 string
// Exclude2 monster type code that cannot have this modifier
Exclude2 string
PickFrequencies struct {
Normal *PickFreq
Nightmare *PickFreq
Hell *PickFreq
}
}
type PickFreq struct {
// Champion pick frequency
Champion int
// Unique pick frequency
Unique int
}