public Layer(PrismLayer copy, Dictionary <PrismTexture.Tile, TextureSet.Tile> tiles, Editor e) : base(copy, tiles, e) { history = new HistorySystem(this, e); foreach (PrismMesh mesh in copy.Meshes) { AddMesh(new EMesh(mesh, tiles, this, e)); } }
public void resetPrismLayerColor() { int currentLayer = GameManager.getInstance().getCurrentLayer(); int prismLayerLen = m_prismLayerData[currentLayer].getSegmentDataLength(); for (int i = 0; i < prismLayerLen; i++) { PrismLayer prismLayer = m_prismLayerData[currentLayer].getPrismLayer(i); prismLayer.resetPrismLayerColor(); } }
public void updatePrismLayerColors() { int currentLayer = GameManager.getInstance().getCurrentLayer(); for (int i = 0; i < m_prismLayerData.Length; i++) { PrismLayer prismLayer = m_prismLayerData[currentLayer].getPrismLayer(i); // Retrieving unit color using the real color UnitColor unitColor = GameManager.getInstance().getUnitColor(m_prismLayerColors[i]); prismLayer.setUnitColor(unitColor); } }
private void createPrismLayer(int p_prismLayerIdx) { int segmentDataLen = m_prismLayerData [p_prismLayerIdx].getSegmentDataLength(); // Collection of prism layers to be placed inside prism layer data PrismLayer[] prismLayers = new PrismLayer[segmentDataLen]; for (int i = 0; i < segmentDataLen; i++) { GameObject prismLayer = Instantiate(m_refPrismLayer) as GameObject; prismLayer.name = string.Format("line_layer_{0}", i); setPrismLayerTransform(prismLayer.transform, p_prismLayerIdx, i); PrismLayer prismLayerComponent = prismLayer.GetComponentInChildren <PrismLayer>(); prismLayers[i] = prismLayerComponent; } m_prismLayerData [p_prismLayerIdx].setPrismLayers(prismLayers); }
public void OnTriggerEnter2D(Collider2D p_collider2d) { PrismLayer prismLayer = p_collider2d.GetComponent <PrismLayer>(); if (prismLayer != null) { if (prismLayer.getUnitColor() == m_unitColor) { createScorePop(); ScoreHandler.getInstance().addScore(Constants.DEFAULT_SCORE); } else { PrismLayerHandler.getInstance().subtractDurability(); } createExplosion(); onDestroy(); } }
public override PrismLayerNode GetPrismNode(PrismLayerNode parent, Dictionary <TextureSet.Tile, PrismTexture.Tile> tiles) { PrismLayer node = new PrismLayer(Name, parent); foreach (EMesh m in Meshes) { Vector2[] pos = new Vector2[m.Vertices.Count]; ColorHSL[] col = new ColorHSL[m.Vertices.Count]; for (int i = 0; i < pos.Length; i++) { pos[i] = m.Vertices[i].Position; col[i] = m.Vertices[i].HSL; } PrismMesh mesh = new PrismMesh(pos, col, m.Tile != null ? tiles[m.Tile] : null); node.Meshes.Add(mesh); } return(node); }