Пример #1
0
 public Side.eSideType getSideType()
 {
     sideStatType = card.getSideType(dieValue - 1);
     return(sideStatType);
 }
Пример #2
0
    public bool isValidDrop(Zone dragDrop)
    {
        bool isValid = false;

        // know draggedObject
        //      know original zone/area
        //      if is a Die, know side
        // know current step

        if (!draggedObject)
        {
            return(false);
        }
        //Draggable drag = draggedObject.GetComponent<Draggable>();
        Draggable drag = draggedObject;

        if (!drag)
        {
            return(false);
        }
        Zone dragFrom = drag.getParentZone();

        // HARD: Assume Drag is Die
        Die d = draggedObject.GetComponent <Die>();

        //if (!d) return false;
        Side.eSideType dragType = d.getSideType();

        string cArea = "area" + (playerLogic.currentPlayer().getPlayerName()) + "/";
        string nArea = "area" + (playerLogic.nextPlayer().getPlayerName()) + "/";


        switch ((int)stepLogic.currentStep)
        {
        case 0:     // SCORE
            if (dragDrop == gameLayout.getZone(cArea + "zoneStored") &&
                dragFrom == gameLayout.getZone(cArea + "zoneSummoned"))
            {
                isValid = true;
            }
            break;

        case 1:     // SCRY
            isValid = false;
            break;

        case 2:     // SPIN
            isValid = false;
            break;

        case 3:     // SPEND
            if ((dragDrop == gameLayout.getZone(cArea + "zoneStored") &&
                 drag.getParentArea().name == "areaMarket") ||
                (dragFrom == gameLayout.getZone(cArea + "zoneServicable") &&
                 ((dragDrop == gameLayout.getZone(cArea + "zoneSummoned") && (dragType == Side.eSideType.SUMMONABLE) && playerLogic.affordEnergy(d.getSideValue(Side.eValueTypes.COST))) ||
                  (dragDrop == gameLayout.getZone(cArea + "zoneSpent") && (dragType == Side.eSideType.ENERGY)))))
            {
                isValid = true;
            }
            break;

        case 4:     // STRIKE
            if (dragFrom == gameLayout.getZone(nArea + "zoneSummoned") &&
                dragDrop == gameLayout.getZone(nArea + "zoneStored"))
            {
                isValid = true;
            }
            break;

        case 5:     // SECURE
            if (dragDrop == gameLayout.getZone(cArea + "zoneStored") &&
                (dragFrom == gameLayout.getZone(cArea + "zoneSpent") || dragFrom == gameLayout.getZone(cArea + "zoneServicable")))
            {
                isValid = true;
            }
            break;
        }

        // houseRules
        //isValid = true;



        if (dragFrom == dragDrop)
        {
            isValid = true;
        }
        return(isValid);
    }
Пример #3
0
 public Side.eSideType getSideType()
 {
     sideStatType = card.getSideType(dieValue - 1);
     return sideStatType;
 }