public void set(int k) { if (BlockConnected == null) { num = k; } else { num = k; main.BInit nb = main._m.Blocks[num]; BlockConnected.img.sprite = nb.SpBase; BlockConnected.l.sprite = nb.SpLeft; BlockConnected.r.sprite = nb.SpRight; BlockConnected.u.sprite = nb.SpUp; BlockConnected.d.sprite = nb.SpDown; BasicLight = nb.BasicLight; LightPenetr = nb.LightPenetr; } }
public void createInstance() { if (BaseBlock != null) { GameObject g = null; Block b = null; if (main._m.Pool.Count == 0) { g = Instantiate(BaseBlock); b = g.GetComponent <Block>(); } else { b = main._m.Pool.Pop(); g = b.gameObject; g.SetActive(true); } b.Params = this; g.transform.parent = Parent.transform; g.name = ObjectName.ToString(); BlockConnected = b; g.transform.position = pos; main.BInit nb = main._m.Blocks[num]; b.img.sprite = nb.SpBase; b.l.sprite = nb.SpLeft; b.r.sprite = nb.SpRight; b.u.sprite = nb.SpUp; b.d.sprite = nb.SpDown; BasicLight = nb.BasicLight; LightPenetr = nb.LightPenetr; b.Shade.color = new Color(b.Shade.color.r, b.Shade.color.g, b.Shade.color.b, Mathf.Max(1 - Lightness, 0)); b.img.transform.rotation = Quaternion.identity; b.Shade.transform.rotation = Quaternion.identity; if (FlippedY) { b.img.flipX = true; b.l.flipY = true; b.r.flipY = true; b.u.flipY = true; b.d.flipY = true; b.img.transform.rotation *= Quaternion.AngleAxis(180, Vector3.forward); b.Shade.transform.rotation *= Quaternion.AngleAxis(180, Vector3.forward); } else { b.img.flipX = false; b.l.flipY = false; b.r.flipY = false; b.u.flipY = false; b.d.flipY = false; } if (Active) { b.activate(); } else { b.unActivate(); } } }