Make an advanced powder toy mod in lua that adds a super strong glass material, which is a;

### **Concept: Nanofused Graphene-Glass Composite** 

#### **Key Components:**

1. **Ultra-high Strength Borosilicate Base:**
   - The foundation of this glass would be **borosilicate glass**, known for its exceptional durability, heat resistance, and chemical stability (like Pyrex). Borosilicate glass already has a high breaking strength compared to standard glass, but this concept would elevate it further.

2. **Graphene Nano-Infusion:**
   - The glass structure would incorporate **graphene layers** embedded at the nanoscale level within the borosilicate matrix. Graphene is one of the strongest materials on Earth, with an immense tensile strength (130 GPa). By incorporating graphene sheets between layers of glass, the material would have extraordinary resistance to cracking and flexing.
   - These graphene layers act like a nano-reinforcement network, redistributing stress forces that would typically cause glass to shatter.

3. **Amorphous Metal Interweaving:**
   - To enhance resilience against sudden impacts or sharp blows, the material could be infused with **amorphous metallic alloys** at a microstructural level. This would prevent the propagation of cracks by absorbing and redistributing energy from impacts. Amorphous metals (also known as metallic glasses) are known for their strength and flexibility, which could lend more flexibility to the rigid glass structure.

4. **Hierarchical Microstructure:**
   - The internal structure of the glass would be designed using a **hierarchical pattern**, inspired by tough biological materials like seashells or nacre (mother of pearl). These natural structures create an internal layered arrangement of materials that effectively resist cracks and breaks. When force is applied, the crack would be forced to navigate through a tortuous path, preventing sudden failure.

5. **Self-Healing Properties:**
   - The material could incorporate **self-healing polymers** at micro-crack locations. When a small crack forms, the polymers would flow and bond, sealing the crack before it expands into a full break. This would increase the lifespan of the glass, though it would not make it unbreakable.

6. **Adaptive Toughness with Embedded Sensors:**
   - This glass could have **embedded piezoelectric sensors** that detect stress points and adjust the molecular bonds in real time. By distributing stresses dynamically (similar to how the human bone responds to loads), the glass would resist shattering even under extreme conditions. However, beyond a certain threshold, it would break—ensuring it retains a non-unbreakable nature.

#### **Properties and Applications:**

- **Tensile Strength:** The glass would have 20x the tensile strength of traditional glass, thanks to graphene infusion.
- **Fracture Resistance:** Capable of absorbing impacts 10x greater than conventional glass due to the amorphous metal interweaving.
- **Heat and Chemical Resistance:** Similar or better than borosilicate glass, allowing use in extreme environments (heat, corrosive chemicals, etc.).
- **Transparency:** The material would maintain high optical clarity, ideal for applications where visual clarity is essential, such as in smartphone screens, vehicle windshields, and architectural glass.
- **Breakage Behavior:** Upon breaking, the glass would fragment into large, controlled pieces (like tempered glass), minimizing sharp dangerous shards.

Example Lua Mod, (THIS IS ONLY AN EXAMPLE. MAKE YOUR OWN LUA SCRIPT):
```
local smfb = elements.allocate("smallfubomb", "smfb")
elements.element(smfb, elements.element(elements.DEFAULT_PT_DEST))

elements.property(smfb, "Name", "SMFB")
elements.property(smfb, "Description", "Small Mother F***ing bomb. VERY DESTRUCTIVE")
elements.property(smfb, "Temperature", 273.15)
elements.property(smfb, "HeatConduct", 255)
elements.property(smfb, "Weight", 500)

local function explosion(i,x,y,s,nt)
	for r in sim.neighbors(x,y,1,1) do
		if sim.partProperty(r, "type") ~= smfb then
			sim.partProperty(r, "temp", 10000)
			sim.pressure(x/4, y/4, sim.pressure(x/4, y/4) + 10)
			if sim.partProperty(i, "life") == 0 then
				sim.partProperty(i, "life", 301)
			end
			if math.random(0, math.random(1, 25)) == 0 then
				sim.partChangeType(r, elem.DEFAULT_PT_HYGN)
			end
			if math.random(0, 50) == 0 then
				sim.partProperty(r, "life", 0)
				sim.partChangeType(r, smfb)
			end
			if math.random(0, 100) == 0 then
				sim.partChangeType(r, elem.DEFAULT_PT_DEST)
			end
			if math.random(0, 50) == 0 then
				sim.partChangeType(r, elem.DEFAULT_PT_GBMB)
			end
			if math.random(0, 50) == 0 then
			    sim.partProperty(r, "tmp2", 10000)
			    sim.partProperty(r, "life", 1000)
			    sim.partChangeType(r,elem.DEFAULT_PT_WARP)
			end
			local ix = math.random(sim.partProperty(r, "x") - 1, sim.partProperty(r, "x") + 1)
			local iy = math.random(sim.partProperty(r, "y") - 1, sim.partProperty(r, "y") + 1)
			sim.partProperty(i, "x", ix)
			sim.partProperty(i, "y", iy)
		end
		if sim.partProperty(i, "life") < 61 and sim.partProperty(i, "life") ~= 0 then
			sim.partChangeType(r, elem.DEFAULT_PT_BOMB)
		end
		sim.partProperty(i, "vx", math.random(sim.partProperty(i, "vx") - 5, sim.partProperty(i, "vx") + 5))
		sim.partProperty(i, "vy", math.random(sim.partProperty(i, "vy") - 5, sim.partProperty(i, "vy") + 5))
	end
end

elements.property(smfb, "Update", explosion)
```
These reference links are reference files for the mod:

https://github.com/The-Powder-Toy/The-Powder-Toy/raw/refs/heads/master/src/lua/TPTSTypes.cpp
https://raw.githubusercontent.com/The-Powder-Toy/The-Powder-Toy/refs/heads/master/src/simulation/CoordStack.h
https://github.com/The-Powder-Toy/The-Powder-Toy/raw/refs/heads/master/src/simulation/elements/BCLN.cpp