void OnTriggerEnter(Collider col) { if (etiqueta == "") { return; } else if (etiqueta.Substring(0, 1) == "#") { GbjID gbjid = col.GetComponent <GbjID>(); if (!gbjid || gbjid.id != etiqueta) { return; } } else { if (!col.CompareTag(etiqueta)) { return; } } Limpar(); GameObject col_gbj = col.gameObject; if (!EstaDentroDaLista(col_gbj)) { listaObjetos.Add(col_gbj); } }
void Update() { if (espacoBalcao.Vazio()) { return; } if (espacoBalcao.itemAbrigado.GetComponent <TipoItem>().tipo == TipoItem.Tipo.Prato) { return; } Item itemItem = espacoBalcao.Soltar(); // itemItem não pode ser nulo por conta da verificação do Vazio Assert.IsNotNull(itemItem); GbjID itemGID = itemItem.GetComponent <GbjID>(); // itemGID não deve ser nulo Assert.IsNotNull(itemGID); for (int i = 0; i < transacoes.Length; i++) { if (itemGID.id == transacoes[i].entrada) { var novoItemGbj = Instantiate <GameObject>( transacoes[i].saida, itemItem.transform.position, Quaternion.identity ); //novoItemGbj.transform.eulerAngles = Vector3.zero; var novoItemItem = novoItemGbj.GetComponent <Item>(); // novoItemItem não deverá ser nulo Assert.IsNotNull(novoItemItem); espacoBalcao.Abrigar(novoItemItem); break; } } Destroy(itemItem.gameObject); }