170 lines
4.1 KiB
Go
170 lines
4.1 KiB
Go
package json
|
|
|
|
import "gitea.local.lab/Lbenedar/foundry_helper_service/internal/foundry/temp_models/db"
|
|
|
|
type Token struct {
|
|
DisplayName int `json:"displayName"`
|
|
DisplayBars int `json:"displayBars"`
|
|
Disposition int `json:"disposition"`
|
|
Sight TokenSight `json:"sight"`
|
|
Name string `json:"name"`
|
|
ActorLink bool `json:"actorLink"`
|
|
AppendNumber bool `json:"appendNumber"`
|
|
PrependAdjective bool `json:"prependAdjective"`
|
|
Texture TokenTexture `json:"texture"`
|
|
Width float64 `json:"width"`
|
|
Height float64 `json:"height"`
|
|
LockRotation bool `json:"lockRotation"`
|
|
Rotation int `json:"rotation"`
|
|
Alpha int `json:"alpha"`
|
|
Bar1 TokenBar `json:"bar1"`
|
|
Bar2 TokenBar `json:"bar2"`
|
|
Light Light `json:"light"`
|
|
RandomImg bool `json:"randomImg"`
|
|
Occludable TokenOccludable `json:"occludable"`
|
|
Ring Ring `json:"ring"`
|
|
TurnMarker TokenTurnMarker `json:"turnMarker"`
|
|
MovementAction any `json:"movementAction"`
|
|
// Flags any `json:"flags"`
|
|
// DetectionModes []any `json:"detectionModes"`
|
|
}
|
|
|
|
func (t *Token) ToDB(dest *db.Token) bool {
|
|
if dest == nil {
|
|
return false
|
|
}
|
|
|
|
dest.DisplayName = t.DisplayName
|
|
dest.DisplayBars = t.DisplayBars
|
|
dest.Disposition = t.Disposition
|
|
dest.Name = t.Name
|
|
dest.ActorLink = t.ActorLink
|
|
dest.AppendNumber = t.AppendNumber
|
|
dest.PrependAdjective = t.PrependAdjective
|
|
dest.Width = t.Width
|
|
dest.Height = t.Height
|
|
dest.LockRotation = t.LockRotation
|
|
dest.Rotation = t.Rotation
|
|
dest.Alpha = t.Alpha
|
|
dest.RandomImg = t.RandomImg
|
|
|
|
t.Ring.ToDB(&dest.Ring)
|
|
t.Sight.ToDB(&dest.Sight)
|
|
t.Texture.ToDB(&dest.Texture)
|
|
t.Bar1.ToDB(&dest.Bar1)
|
|
t.Bar2.ToDB(&dest.Bar2)
|
|
t.Light.ToDB(&dest.Light)
|
|
t.Occludable.ToDB(&dest.Occludable)
|
|
t.TurnMarker.ToDB(&dest.TurnMarker)
|
|
|
|
return true
|
|
}
|
|
|
|
type TokenTexture struct {
|
|
Src string `json:"src"`
|
|
ScaleX float64 `json:"scaleX"`
|
|
ScaleY float64 `json:"scaleY"`
|
|
OffsetX float64 `json:"offsetX"`
|
|
OffsetY float64 `json:"offsetY"`
|
|
Rotation float64 `json:"rotation"`
|
|
AnchorX float64 `json:"anchorX"`
|
|
AnchorY float64 `json:"anchorY"`
|
|
Fit string `json:"fit"`
|
|
Tint string `json:"tint"`
|
|
AlphaThreshold float64 `json:"alphaThreshold"`
|
|
}
|
|
|
|
func (t *TokenTexture) ToDB(dest *db.TokenTexture) bool {
|
|
if dest == nil {
|
|
return false
|
|
}
|
|
|
|
dest.Src = t.Src
|
|
dest.ScaleX = t.ScaleX
|
|
dest.ScaleY = t.ScaleY
|
|
dest.OffsetX = t.OffsetX
|
|
dest.OffsetY = t.OffsetY
|
|
dest.Rotation = t.Rotation
|
|
dest.AnchorX = t.AnchorX
|
|
dest.AnchorY = t.AnchorY
|
|
dest.Fit = t.Fit
|
|
dest.Tint = t.Tint
|
|
dest.AlphaThreshold = t.AlphaThreshold
|
|
|
|
return true
|
|
}
|
|
|
|
type TokenSight struct {
|
|
Color string
|
|
Enabled bool
|
|
Range int
|
|
Angle int
|
|
VisionMode string
|
|
Attenuation float64
|
|
Brightness float64
|
|
}
|
|
|
|
func (t *TokenSight) ToDB(dest *db.TokenSight) bool {
|
|
if dest == nil {
|
|
return false
|
|
}
|
|
|
|
dest.Color = t.Color
|
|
dest.Enabled = t.Enabled
|
|
dest.Range = t.Range
|
|
dest.Angle = t.Angle
|
|
dest.VisionMode = t.VisionMode
|
|
dest.Attenuation = t.Attenuation
|
|
dest.Brightness = t.Brightness
|
|
|
|
return true
|
|
}
|
|
|
|
type TokenBar struct {
|
|
Attribute string `json:"attribute"`
|
|
}
|
|
|
|
func (t *TokenBar) ToDB(dest *db.TokenBar) bool {
|
|
if dest == nil {
|
|
return false
|
|
}
|
|
|
|
dest.Attribute = t.Attribute
|
|
|
|
return true
|
|
}
|
|
|
|
type TokenOccludable struct {
|
|
Radius int `json:"radius"`
|
|
}
|
|
|
|
func (t *TokenOccludable) ToDB(dest *db.TokenOccludable) bool {
|
|
if dest == nil {
|
|
return false
|
|
}
|
|
|
|
dest.Radius = t.Radius
|
|
|
|
return true
|
|
}
|
|
|
|
type TokenTurnMarker struct {
|
|
Mode int `json:"mode"`
|
|
Animation string `json:"animation"`
|
|
Src string `json:"src"`
|
|
Disposition bool `json:"disposition"`
|
|
}
|
|
|
|
func (t *TokenTurnMarker) ToDB(dest *db.TokenTurnMarker) bool {
|
|
if dest == nil {
|
|
return false
|
|
}
|
|
|
|
dest.Mode = t.Mode
|
|
dest.Animation = t.Animation
|
|
dest.Src = t.Src
|
|
dest.Disposition = t.Disposition
|
|
|
|
return true
|
|
}
|