/// <summary> /// 查找指定位置的精灵对象 /// </summary> /// /// <param name="x"></param> /// <param name="y"></param> /// <returns></returns> public ISprite Find(int x, int y) { ISprite[] snapshot = sprites; for (int i = snapshot.Length - 1; i >= 0; i--) { ISprite child = snapshot[i]; RectBox rect = child.GetCollisionBox(); if (rect != null && rect.Contains(x, y)) { return(child); } } return(null); }
public virtual bool OnClick(ISprite sprite) { if (sprite == null) { return false; } if (sprite.IsVisible()) { RectBox rect = sprite.GetCollisionBox(); if (rect.Contains(touchX, touchY) || rect.Intersects(touchX, touchY)) { return true; } } return false; }