예제 #1
0
        public void PixelPerfect(bool pixelPerfect)
        {
            IArea area = PixelPerfectHitTestArea;

            if (!pixelPerfect)
            {
                if (area == null)
                {
                    return;
                }
                area.Enabled = false;
                return;
            }
            if (area != null)
            {
                area.Enabled = true;
                return;
            }

            string areaId = string.Format("Sprite_PixelPerfect_{0}", Image.ID);

            PixelPerfectHitTestArea = new AGSArea(areaId, _resolver)
            {
                Mask = _maskLoader.Load(_hasImage.Image.OriginalBitmap)
            };
        }
예제 #2
0
        public IObject GetHotspot(string maskPath, string hotspot, string[] sayWhenLook = null,
                                  string[] sayWhenInteract = null, string id = null)
        {
            _maskLoader = _maskLoader ?? _resolver.Container.Resolve <IMaskLoader>();
            IMask mask = _maskLoader.Load(maskPath, debugDrawColor:  Colors.White, id: id ?? hotspot);

            if (mask == null)
            {
                return(new AGSObject(id ?? hotspot, _resolver));
            }
            setMask(mask, hotspot, sayWhenLook, sayWhenInteract);
            return(mask.DebugDraw);
        }