private void OnTriggerEnter(Collider collider) { if (collider.gameObject.tag == "Player") // TODO have to check the layers { if (player_item_manager_1 == null && slot_1 == PlayerItemManager.Items.None) { if (gameObject.layer == 0 || gameObject.layer == collider.gameObject.layer) { player_item_manager_1 = collider.GetComponent <PlayerItemManager>(); if (player_item_manager_1.GetItem() != PlayerItemManager.Items.None) { adding_slot_1 = true; } } } else if (player_item_manager_2 == null && slot_2 == PlayerItemManager.Items.None) { if (gameObject.layer == 0 || gameObject.layer == collider.gameObject.layer) { player_item_manager_2 = collider.GetComponent <PlayerItemManager>(); if (player_item_manager_2.GetItem() != PlayerItemManager.Items.None) { adding_slot_2 = true; } } } } }
// Update is called once per frame void Update() { if (slot_1 != PlayerItemManager.Items.None && slot_2 != PlayerItemManager.Items.None && crafting_item == false) { StartCoroutine(CraftingItem()); crafting_item = true; } if (slot_1 == PlayerItemManager.Items.None) { if (adding_slot_1) { timer_1 += Time.deltaTime; crafting_slot_1_image.fillAmount = timer_1; if (timer_1 >= material_insert_duration) { slot_1 = player_item_manager_1.GetItem(); player_item_manager_1.RemoveItem(); if (gameObject.layer == 0) { gameObject.layer = player_item_manager_1.gameObject.layer; } switch (slot_1) { case PlayerItemManager.Items.Tier1_Fuchsia: { crafting_slot_1_image.color = fuchsia; break; } case PlayerItemManager.Items.Tier1_Lime: { crafting_slot_1_image.color = lime; break; } case PlayerItemManager.Items.Tier1_Orange: { crafting_slot_1_image.color = orange; break; } case PlayerItemManager.Items.Tier1_Turquoise: { crafting_slot_1_image.color = turquoise; break; } } } } else { crafting_slot_1_image.fillAmount = 0; timer_1 = 0; } } if (slot_2 == PlayerItemManager.Items.None) { if (adding_slot_2) { if (player_item_manager_2.GetItem() != slot_1 || slot_1 == PlayerItemManager.Items.None) { timer_2 += Time.deltaTime; crafting_slot_2_image.fillAmount = timer_2; if (timer_2 >= material_insert_duration) { slot_2 = player_item_manager_2.GetItem(); player_item_manager_2.RemoveItem(); if (gameObject.layer == 0) { gameObject.layer = player_item_manager_2.gameObject.layer; } switch (slot_2) { case PlayerItemManager.Items.Tier1_Fuchsia: { crafting_slot_2_image.color = fuchsia; break; } case PlayerItemManager.Items.Tier1_Lime: { crafting_slot_2_image.color = lime; break; } case PlayerItemManager.Items.Tier1_Orange: { crafting_slot_2_image.color = orange; break; } case PlayerItemManager.Items.Tier1_Turquoise: { crafting_slot_2_image.color = turquoise; break; } } } } } else { crafting_slot_2_image.fillAmount = 0; timer_2 = 0; } } }