package models import ( "pro2d/common" "pro2d/common/components" "pro2d/pb" ) type HeroModel struct { components.ISchema Hero *pb.Hero Equipments common.IMapString } func NewHero(hero *pb.Hero) *HeroModel { m := &HeroModel{ ISchema: NewSchema(hero.Id, hero), Hero: hero, Equipments: common.StringToMap(hero.Equipments, false), } return m } func (m *HeroModel) UpdateEquipment(key string, typ string) { if typ == "" { delete(m.Equipments, key) } else { m.Equipments[key] = typ } m.SetProperty("equipments", common.MapToString(m.Equipments)) }