-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtypes.go
126 lines (101 loc) · 2.36 KB
/
types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
package main
import (
"database/sql"
"io/fs"
"net/http"
"github.com/gorilla/mux"
)
type FileSystem interface {
Open(name string) (fs.File, error)
ReadDir(name string) ([]fs.DirEntry, error)
ReadFile(name string) ([]byte, error)
}
type OSPkg struct{}
type FileLoader struct {
http.Handler
Router *mux.Router
}
type ImageData struct {
fileName string
spriteType SpriteType
Hue int `json:"hue"`
Saturation float64 `json:"saturation"`
}
type ImageDataStorage struct {
DriverName string
DataSourceName string
Client *sql.DB
}
type InfoXml struct {
Name string
Version string
Description string
Author string
Weblink string
}
type ServerError struct {
Error string `json:"error"`
}
type Sprite struct {
ID string `json:"id"`
Url string `json:"url"`
SpriteType SpriteType `json:"spriteType"`
FileName string `json:"fileName"`
ImageData ImageData `json:"imageData"`
}
type SpritesMap map[SpriteType][]Sprite
type SpriteData struct {
Data SpritesMap `json:"data"`
}
type SpriteGroup struct {
ID string `json:"id"`
Sprites []Sprite `json:"sprites"`
}
type SpriteGroupMap map[SpriteType][]SpriteGroup
type SpriteGroupData struct {
Data SpriteGroupMap `json:"data"`
}
const (
ContentTypeApplicationJSON string = "application/json"
)
const (
DirNameData string = "data"
DirNameDist string = "dist"
DirNameFrontend string = "frontend"
DirNameMod string = "mod"
DirNameModdedSprites string = "modded-sprites"
DirNamePublic string = "public"
DirNameSprites string = "sprites"
)
const (
FileExtGif string = "gif"
FileExtPng string = "png"
FileExtXml string = "xml"
FileExtTxt string = "txt"
)
const (
FileNameGitignore string = ".gitignore"
FileNameModZip string = "pokemmo-sprite-editor.zip"
)
const (
HTTPHeaderContentType string = "Content-Type"
)
const (
PathSegmentApi string = "api"
)
type SpriteType string
const (
SpriteTypeBattlesprites SpriteType = "battlesprites"
SpriteTypeFollowSprites SpriteType = "followersprites"
SpriteTypeItemIcons SpriteType = "itemicons"
SpriteTypeMonsterIcons SpriteType = "monstericons"
)
var spriteTypes = []SpriteType{
SpriteTypeBattlesprites,
SpriteTypeFollowSprites,
SpriteTypeItemIcons,
SpriteTypeMonsterIcons,
}
func (st SpriteType) String() string {
return string(st)
}