hotfix: d2cof encoder: changed way of pushing weapon class
This commit is contained in:
parent
1010353071
commit
7d0eeb0fd3
|
@ -30,10 +30,6 @@ const (
|
|||
layerWeaponClass
|
||||
)
|
||||
|
||||
const (
|
||||
layerWeaponClassLength = 4
|
||||
)
|
||||
|
||||
const (
|
||||
badCharacter = string(byte(0))
|
||||
)
|
||||
|
@ -196,15 +192,22 @@ func (c *COF) Marshal() []byte {
|
|||
|
||||
sw.PushBytes(byte(c.CofLayers[i].DrawEffect))
|
||||
|
||||
weaponClassString := c.CofLayers[i].WeaponClass.String()
|
||||
const (
|
||||
maxCodeLength = 3 // we assume item codes to look like 'hax' or 'kit'
|
||||
terminator = 0
|
||||
)
|
||||
|
||||
for letter := 0; letter < layerWeaponClassLength; letter++ {
|
||||
if letter < len(weaponClassString) {
|
||||
sw.PushBytes(weaponClassString[letter])
|
||||
} else {
|
||||
sw.PushBytes(0)
|
||||
weaponCode := c.CofLayers[i].WeaponClass.String()
|
||||
|
||||
for idx, letter := range weaponCode {
|
||||
if idx > maxCodeLength {
|
||||
break
|
||||
}
|
||||
|
||||
sw.PushBytes(byte(letter))
|
||||
}
|
||||
|
||||
sw.PushBytes(terminator)
|
||||
}
|
||||
|
||||
for _, i := range c.AnimationFrames {
|
||||
|
|
Loading…
Reference in New Issue