package aoiGrid type ( Grid struct { id int32 minX int32 minY int32 maxX int32 maxY int32 markers Objects watchers Objects } MapGrid map[int32]*Grid ) func (p *Grid) AddMarker(object *Object) { if !p.markers.Contains(object.ObjectID) { p.markers.Add(object) } } func (p *Grid) DelMarker(object *Object) { if p.markers.Contains(object.ObjectID) { p.markers.Remove(object.ObjectID) } } func (p *Grid) AddWatcher(object *Object) { if !p.watchers.Contains(object.ObjectID) { p.watchers.Add(object) } } func (p *Grid) DelWatcher(object *Object) { if p.watchers.Contains(object.ObjectID) { p.watchers.Remove(object.ObjectID) } } func (p MapGrid) Add(grid *Grid) { p[grid.id] = grid } func (p MapGrid) Contains(grid *Grid) bool { _, found := p[grid.id] return found }