Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7,516 changes: 7,516 additions & 0 deletions Assets/Scenes/Card.unity

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions Assets/Scripts/To_Refactoring/Card/Card1.asset.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

215 changes: 215 additions & 0 deletions Assets/Scripts/To_Refactoring/Card/CardItemManager.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,215 @@

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEditor;
using UnityEngine;
using UnityEngine.UI;


public class CardItemManager : MonoBehaviour
{
/// <summary>
/// класс логики объекта карта Отрисовка в слоте , создания слота добовления карты в него
/// </summary>

public Favouriteone favouriteone;
public static CardItemManager Instance;
public static CardItemManager instanceInventory;
// [HideInInspector]
public List<Item> item;
public List<Item> Card;
public List<Item> Ert;
public List<Item> CardItems;

public Sprite[] CardItemSprites;
[SerializeField]
public string nameCardItem;
[SerializeField]
public Sprite pathSprite;
public KeyCode showInventory;

[SerializeField]
public string CardItemBadhar;
[SerializeField]
public string CardTextGoodhar;
[SerializeField]
public Sprite CardImage;
[SerializeField]
public Sprite CardBossImage;
public Item[] _InitialcardItems;
public Favourite favourite;

[SerializeField]
public GameObject cellContainer;

[SerializeField]
public KeyCode takeButton;
public GameObject SlotContainer;
public GameObject dragPrefab;
public GameObject database;
public GameObject CardContainer;
[SerializeField]
public GameObject CardContainer1;
[SerializeField]
public GameObject CardContainer2;
[SerializeField]
public GameObject currentIcon;


public void Start()
{
item = new List<Item>();
Card = new List<Item>();
// cellContainer.SetActive(false);

for (int i = 0; i < SlotContainer.transform.childCount; i++) // Создания ячейки
{

SlotContainer.transform.GetChild(i).GetComponent<CurrentItem>().index=i;

}
for (int i = 0; i < SlotContainer.transform.childCount; i++) // Создания ячейки
{
item.Add(new Item());
}
}

private void Awake()
{
instanceInventory = this;
if (!Instance)
Instance = this;

else
{
Destroy(gameObject);
return;
}
}
void Update()
{



// Transform ItemA = CardContainer2.transform;
Transform ItemB = CardContainer1.transform; //оброщения к обекту карта
Transform ItemD = CardContainer.transform;
var CardItemD = ItemD.GetComponent<Item>();
var CardItemB = ItemB.GetComponent<Item>();
//var CardItemA = ItemA.GetComponent<Item>();
//Debug.Log("tdu");

// вызов метода
CardItemAdd(CardItemD); //методы реалезацию можно разнести по объектом к примеру другой персонаж
CardItemAdd(CardItemB);
//CardItemAdd(CardItemA);
}

//метод добовления карты
public void CardItemAdd(Item Add)
{

Ert = new List<Item>();
Ert.Add(Add);
//Debug.Log("typ");


if (Input.GetKeyDown(takeButton)) //механика добовления карты может быть не кнопка встреча двух колорайдеров(пример)
{
for (int i = 0; i < item.Count; i++)
{

if (item[i].id == 0)
{
Debug.Log("t4u");

foreach (var ui in Ert)
{

item[i] = ui.GetComponent<Item>();
break;
}

//Debug.Log("tyu");
DisplayItems(); //метод отрисвки на экране
break;

}

}
}
}
//отображения в слоте
public void DisplayItems()
{

for (int i = 0; i < item.Count; i++)
{

if (item[i].id != 0)
{
Transform cell = SlotContainer.transform.GetChild(i);

Transform Icon = cell.GetChild(0);
Image img = Icon.GetComponent<Image>();


img.enabled = true;
img.sprite = item[i].Icon;

}
else
{
Transform cell = SlotContainer.transform.GetChild(i);
Transform Icon = cell.GetChild(0);
Image img = Icon.GetComponent<Image>();
img.enabled = false;
img.sprite = null;
Debug.Log("q1");
}
}

}

public Item EmptySlot()
{
return new Item();
}


}

































11 changes: 11 additions & 0 deletions Assets/Scripts/To_Refactoring/Card/CardItemManager.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

123 changes: 123 additions & 0 deletions Assets/Scripts/To_Refactoring/Card/CurrentFavouriteItem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;

public class CurrentFavouriteItem : MonoBehaviour, IDropHandler
{
private int itemNum;

public Item currentFavouriteItem
{
get { return CardItemManager.instanceInventory.favourite.favouriteItem[ItemNum]; }
set { CardItemManager.instanceInventory.favourite.favouriteItem[ItemNum] = value; }
}

public int ItemNum
{
get { return itemNum; }
set { itemNum = value; }
}


void Update()
{

}

public void OnDrop(PointerEventData eventData)
{
GameObject dragedObject = Drag.isDragingObject;

if (dragedObject == null)
{
return;
}



CurrentFavouriteItem dragedFavouriteItem = dragedObject.GetComponent<CurrentFavouriteItem>();
CurrentFavouriteoneItem dragedFavouriteoneItem = dragedObject.GetComponent<CurrentFavouriteoneItem>();
CurrentItem dragedCurrentItem = dragedObject.GetComponent<CurrentItem>();

Drag drag = Drag.isDragingObject.GetComponent<Drag>();
if (eventData.button == PointerEventData.InputButton.Left)
{

if (dragedObject.GetComponent<CurrentItem>())
{
if (dragedCurrentItem.currentInventoryItem.id == GetComponent<CurrentFavouriteItem>().currentFavouriteItem.id)
{
if (dragedCurrentItem.currentInventoryItem.isStackable)
{
int count = dragedCurrentItem.currentInventoryItem.countItem;
GetComponent<CurrentFavouriteItem>().currentFavouriteItem.countItem += count;
// dragedCurrentItem.currentInventoryItem = CardItemManager.instanceInventory.EmptySlot();
}
}
else
{
Item currentFavouriteItem = GetComponent<CurrentFavouriteItem>().currentFavouriteItem;
GetComponent<CurrentFavouriteItem>().currentFavouriteItem = dragedCurrentItem.currentInventoryItem;
dragedCurrentItem.currentInventoryItem = currentFavouriteItem;
}
}

if (dragedObject.GetComponent<CurrentFavouriteItem>())
{
if (dragedFavouriteItem.currentFavouriteItem.id == GetComponent<CurrentItem>().currentInventoryItem.id)
{
if (dragedFavouriteItem.currentFavouriteItem.isStackable)
{
int count = dragedFavouriteItem.currentFavouriteItem.countItem;
GetComponent<CurrentItem>().currentInventoryItem.countItem += count;
//dragedFavouriteItem.currentFavouriteItem = CardItemManager.instanceInventory.EmptySlot();
}
}
else
{
Item currentItem = GetComponent<CurrentItem>().currentInventoryItem;
GetComponent<CurrentItem>().currentInventoryItem = dragedFavouriteItem.currentFavouriteItem;
dragedFavouriteItem.currentFavouriteItem = currentItem;
}
}

if (dragedObject.GetComponent<CurrentFavouriteoneItem>())
{
if (dragedFavouriteoneItem.currentFavouriteoneItem.id == GetComponent<CurrentFavouriteItem>().currentFavouriteItem.id)
{
if (dragedFavouriteoneItem.currentFavouriteoneItem.isStackable)
{
int count = dragedFavouriteoneItem.currentFavouriteoneItem.countItem;
GetComponent<CurrentFavouriteItem>().currentFavouriteItem.countItem += count;
// dragedCurrentItem.currentInventoryItem = CardItemManager.instanceInventory.EmptySlot();
}
}
else
{
Item currentFavouriteItem = GetComponent<CurrentFavouriteItem>().currentFavouriteItem;
GetComponent<CurrentFavouriteItem>().currentFavouriteItem = dragedFavouriteoneItem.currentFavouriteoneItem;
dragedFavouriteoneItem.currentFavouriteoneItem = currentFavouriteItem;
}
}






CardItemManager.instanceInventory.DisplayItems();

if (CardItemManager.instanceInventory)
CardItemManager.instanceInventory.favourite.DisplayItems();


}


}


}

11 changes: 11 additions & 0 deletions Assets/Scripts/To_Refactoring/Card/CurrentFavouriteItem.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading