public void CardDescriptionButtonPressed() { switch (Game.game.state) { case GameState.ViewingNormalCard: case GameState.ViewingSpecialCard: HideCardViewer(); break; default: int cardMask = 0; if (game.state == GameState.SelectingSpecialCard) { cardMask = CursorControl.cursor.specialCardMask; } else { cardMask = CursorControl.cursor.cardMask; } CustomMouse customMouse = CursorControl.cursor.GetTargetUnderCursor(cardMask); if (customMouse != null && customMouse is Card) { Card card = (Card)customMouse; if (card.isFacingUp) { ShowCardViewer(customMouse as Card); } } break; } }
public CustomMouse GetTargetUnderCursor(int layerMask) { GameObject obj; CustomMouse target = null; for (int i = 0; i < cams.Count; i++) { Vector2 pixelPos = new Vector2(transform.position.x * Screen.width, transform.position.y * Screen.height); if (RaycastFromMouse(out obj, pixelPos, layerMask)) { if (obj != null) { target = obj.GetComponent <CustomMouse>(); } } } return(target); }