package schema import ( "entgo.io/ent" "entgo.io/ent/schema/edge" "entgo.io/ent/schema/field" ) // Stats holds the schema definition for the Stats entity. type Stats struct { ent.Schema } // Fields of the Stats. func (Stats) Fields() []ent.Field { return []ent.Field{ field.Int("team_id"), field.Int("kills"), field.Int("deaths"), field.Int("assists"), field.Int("headshot"), field.Int("mvp"), field.Int("score"), field.JSON("extended", struct { MultiKills struct { Duo int `json:"duo,omitempty"` Triple int `json:"triple,omitempty"` Quad int `json:"quad,omitempty"` Pent int `json:"pent,omitempty"` } `json:"multi_kills,omitempty"` Dmg struct { Enemy int `json:"enemy,omitempty"` Team int `json:"team,omitempty"` UD struct { HE int `json:"he,omitempty"` Flames int `json:"flames,omitempty"` Flash int `json:"flash,omitempty"` Decoy int `json:"decoy,omitempty"` Smoke int `json:"smoke,omitempty"` } `json:"ud,omitempty"` HitGroup struct { Head int `json:"head,omitempty"` Chest int `json:"chest,omitempty"` Stomach int `json:"stomach,omitempty"` LeftArm int `json:"left_arm,omitempty"` RightArm int `json:"right_arm,omitempty"` LeftLeg int `json:"left_leg,omitempty"` RightLeg int `json:"right_leg,omitempty"` Gear int `json:"gear,omitempty"` } `json:"hit_group,omitempty"` } `json:"dmg,omitempty"` Crosshair string `json:"crosshair,omitempty"` Color int `json:"color,omitempty"` KAST int `json:"kast,omitempty"` Rank struct { Old int `json:"old,omitempty"` New int `json:"new,omitempty"` } `json:"rank,omitempty"` Flash struct { Duration struct { Self float32 `json:"self,omitempty"` Team float32 `json:"team,omitempty"` Enemy float32 `json:"enemy,omitempty"` } `json:"duration,omitempty"` Total struct { Team int `json:"team,omitempty"` Enemy int `json:"enemy,omitempty"` Self int `json:"self,omitempty"` } `json:"total,omitempty"` } `json:"flash,omitempty"` }{}).Optional(), } } // Edges of the Stats. func (Stats) Edges() []ent.Edge { return []ent.Edge{ edge.From("matches", Match.Type).Ref("stats").Unique(), edge.From("players", Player.Type).Ref("stats").Unique(), } }