diff --git a/assets.go b/assets.go new file mode 100644 index 0000000..96c71f8 --- /dev/null +++ b/assets.go @@ -0,0 +1,238 @@ +package main + +import ( + "encoding/base64" + _ "embed" + "github.com/diamondburned/gotk4/pkg/gdkpixbuf/v2" + "github.com/diamondburned/gotk4/pkg/gdk/v4" +) + +//go:embed debug.png +var defaultAvatarBytes []byte +var defaultAvatarB64 string = base64.StdEncoding.EncodeToString(defaultAvatarBytes) + +//go:embed assets/owner.png +var ownerMedalBytes []byte +var ownerMedalB64 string = base64.StdEncoding.EncodeToString(ownerMedalBytes) + +//go:embed assets/admin.png +var adminMedalBytes []byte +var adminMedalB64 string = base64.StdEncoding.EncodeToString(adminMedalBytes) + +//go:embed assets/member.png +var memberMedalBytes []byte +var memberMedalB64 string = base64.StdEncoding.EncodeToString(memberMedalBytes) + +//go:embed assets/noaffiliation.png +var noneMedalBytes []byte +var noneMedalB64 string = base64.StdEncoding.EncodeToString(noneMedalBytes) + +//go:embed assets/outcast.png +var outcastMedalBytes []byte +var outcastMedalB64 string = base64.StdEncoding.EncodeToString(outcastMedalBytes) + +//go:embed assets/cancel.png +var cancelBytes []byte +var cancelB64 string = base64.StdEncoding.EncodeToString(cancelBytes) + +//go:embed assets/tag.png +var tagBytes []byte +var tagB64 string = base64.StdEncoding.EncodeToString(tagBytes) + +//go:embed assets/lambda-disabled.png +var logoDisabledBytes []byte +var logoDisabledB64 string = base64.StdEncoding.EncodeToString(logoDisabledBytes) + +//go:embed assets/group.png +var groupBytes []byte +var groupB64 string = base64.StdEncoding.EncodeToString(groupBytes) + +//go:embed assets/door_in.png +var doorInBytes []byte +var doorInB64 string = base64.StdEncoding.EncodeToString(doorInBytes) + +//go:embed assets/door_out.png +var doorOutBytes []byte +var doorOutB64 string = base64.StdEncoding.EncodeToString(doorOutBytes) + +//go:embed assets/large_group.png +var largeGroupBytes []byte +var largeGroupB64 string = base64.StdEncoding.EncodeToString(largeGroupBytes) + +//go:embed assets/world.png +var worldBytes []byte +var worldB64 string = base64.StdEncoding.EncodeToString(worldBytes) + +//go:embed assets/disconnect.png +var disconnectBytes []byte +var disconnectB64 string = base64.StdEncoding.EncodeToString(disconnectBytes) + +//go:embed assets/chart_bar.png +var barBytes []byte +var barB64 string = base64.StdEncoding.EncodeToString(barBytes) + +//go:embed assets/ok.png +var okBytes []byte +var okB64 string = base64.StdEncoding.EncodeToString(okBytes) + +//go:embed assets/hourglass.png +var hourglassBytes []byte +var hourglassB64 string = base64.StdEncoding.EncodeToString(hourglassBytes) + +//go:embed assets/connect.png +var connectBytes []byte +var connectB64 string = base64.StdEncoding.EncodeToString(connectBytes) + +func init() { + + loader := gdkpixbuf.NewPixbufLoader() + + defaultAvatarData, _ := base64.StdEncoding.DecodeString(defaultAvatarB64) + loader.Write(defaultAvatarData) + loader.Close() + clientAssets["DefaultAvatar"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + ownerMedalData, _ := base64.StdEncoding.DecodeString(ownerMedalB64) + loader.Write(ownerMedalData) + loader.Close() + + clientAssets["owner"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + cancelData, _ := base64.StdEncoding.DecodeString(cancelB64) + loader.Write(cancelData) + loader.Close() + + clientAssets["cancel"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + tagData, _ := base64.StdEncoding.DecodeString(tagB64) + loader.Write(tagData) + loader.Close() + + clientAssets["tag"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + adminMedalData, _ := base64.StdEncoding.DecodeString(adminMedalB64) + loader.Write(adminMedalData) + loader.Close() + + clientAssets["admin"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + memberMedalData, _ := base64.StdEncoding.DecodeString(memberMedalB64) + loader.Write(memberMedalData) + loader.Close() + + clientAssets["member"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + noneMedalData, _ := base64.StdEncoding.DecodeString(noneMedalB64) + loader.Write(noneMedalData) + loader.Close() + + clientAssets["none"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + outcastMedalData, _ := base64.StdEncoding.DecodeString(outcastMedalB64) + loader.Write(outcastMedalData) + loader.Close() + + clientAssets["outcast"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + disabledLogoData, _ := base64.StdEncoding.DecodeString(logoDisabledB64) + loader.Write(disabledLogoData) + loader.Close() + + clientAssets["disabled_logo"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + groupData, _ := base64.StdEncoding.DecodeString(groupB64) + loader.Write(groupData) + loader.Close() + + clientAssets["group"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + doorInData, _ := base64.StdEncoding.DecodeString(doorInB64) + loader.Write(doorInData) + loader.Close() + + clientAssets["door_in"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + doorOutData, _ := base64.StdEncoding.DecodeString(doorOutB64) + loader.Write(doorOutData) + loader.Close() + + clientAssets["door_out"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + largeGroupData, _ := base64.StdEncoding.DecodeString(largeGroupB64) + loader.Write(largeGroupData) + loader.Close() + + clientAssets["large_group"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + worldData, _ := base64.StdEncoding.DecodeString(worldB64) + loader.Write(worldData) + loader.Close() + + clientAssets["world"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + disconnectData, _ := base64.StdEncoding.DecodeString(disconnectB64) + loader.Write(disconnectData) + loader.Close() + + clientAssets["disconnect"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + barData, _ := base64.StdEncoding.DecodeString(barB64) + loader.Write(barData) + loader.Close() + + clientAssets["chart_bar"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + okData, _ := base64.StdEncoding.DecodeString(okB64) + loader.Write(okData) + loader.Close() + + clientAssets["ok"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + hourglassData, _ := base64.StdEncoding.DecodeString(hourglassB64) + loader.Write(hourglassData) + loader.Close() + + clientAssets["hourglass"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) + + loader = gdkpixbuf.NewPixbufLoader() + + connectData, _ := base64.StdEncoding.DecodeString(connectB64) + loader.Write(connectData) + loader.Close() + + clientAssets["connect"] = gdk.NewTextureForPixbuf(loader.Pixbuf()) +}