Esempio n. 1
0
 public ItemSlot findItem(RectangleSlot slot, Item item)
 {
     foreach(ItemSlot itemSlot in slot.Items)
         if(itemSlot.item==item)
             return itemSlot;
     return null;
 }
Esempio n. 2
0
        public void DrawCellsItem(RectangleSlot slot, float offsetX, float offsetY, ItemSlot item, Texture2D image)
        {
            Rect cellRect = new Rect();
            cellRect.x = offsetX + (item.getPosition().X-1) * CellSettings.cellWidth  + CellSettings.cellPaddingX + slot.position.OffsetX;
            cellRect.y = offsetY + (item.getPosition().Y-1) * CellSettings.cellHeight + CellSettings.cellPaddingY + slot.position.OffsetY;
            cellRect.width  = CellSettings.cellWidth * item.item.getSize().getWidth();
            cellRect.height = CellSettings.cellHeight * item.item.getSize().getHeight();

            GUI.color = Color.white;
            GUI.DrawTextureWithTexCoords(cellRect, image, textCoords);
        }
Esempio n. 3
0
        /// <summary>
        /// ���������� ������� � ������� ���������� item
        /// </summary>
        /// <param name="slot">����� � ������� ����������� ��������</param>
        /// <param name="posX">��������� ���������� �������� �� x</param>
        /// <param name="posY">��������� ���������� �������� �� y</param>
        /// <returns>���� ������������ ���, ���������� null</returns>
        public ItemSlot getCollisionItem(RectangleSlot slot, ItemSlot target, int posX, int posY)
        {
            foreach (ItemSlot item in slot.Items) {

                if (item!=target &&

                    (item.position.X<=posX &&
                    item.position.Y<=posY &&
                    item.position.X+item.item.getSize().getWidth()>=posX+target.item.getSize().getWidth() &&
                    item.position.Y+item.item.getSize().getHeight()>=posY+target.item.getSize().getHeight()
                    ||
                    item.position.X>=posX &&
                    item.position.Y>=posY &&
                    item.position.X+item.item.getSize().getWidth()<=posX+target.item.getSize().getWidth() &&
                    item.position.Y+item.item.getSize().getHeight()<=posY+target.item.getSize().getHeight()
                    )) // ��������� ��������

                    return item;

            }

            return null; // �������� �� ����������
        }
Esempio n. 4
0
 /// <summary>
 /// �������� �� ���� slot ������� item
 /// </summary>
 /// <param name="slot">����, ������� �����������</param>
 /// <param name="item">������� ������� ������ � ���� �����</param>
 /// <returns>���������� ���������� �������� ����������</returns>
 public bool slotContain(RectangleSlot slot, ItemSlot item)
 {
     return slot.Items.Contains(item);
 }
Esempio n. 5
0
        /// <summary>
        /// ���������� �������, ������� �������� ������ {cellX,cellY}
        /// </summary>
        /// <param name="cellX"></param>
        /// <param name="cellY"></param>
        /// <returns>���� ������� �� ������ ����� null</returns>
        public ItemSlot getItem(List<RectangleSlot> slots, RectangleSlot slot, int cellX, int cellY)
        {
            if (slots==null) return null;

            foreach (ItemSlot item in slot.Items) {

                if ((item.getPosition().X == cellX && item.getPosition().Y == cellY)) // ������� ����� � ���� ������
                    return item;

                if (cellX>=item.getPosition().X
                    && cellX<item.getPosition().X+item.item.getSize().getWidth()
                    && cellY>=item.getPosition().Y
                    && cellY<item.getPosition().Y+item.item.getSize().getHeight()) // ������� �������� ��� ������
                    return item;

            }

            return null; // �������� � ������ ���
        }
Esempio n. 6
0
 public void Clear()
 {
     slot = null;
     item = null;
 }
Esempio n. 7
0
 public DropItemData(RectangleSlot slot, ItemSlot item, int changeValue)
 {
     this.slot=slot;
     this.item=item;
     this.changeValue=changeValue;
 }