The element ERAY

### ERAY  

*The Element Property Ray (PRAY)*

The Element that turns Children into Adults
The Element that turns DUST into exploding SING
The Element that turns your bomb into a feeble nothing
The Element that makes your self-replicator work
Powered by bit strings and a hundred-long Particle array in Simulation.cpp.

#### How to use

1. Either: use the **default values of copying type, life and ctype**, or write the fancy bit string for the element ( Add up the #define codes you want from src/simulation/elements/ERAY.h, or run `bit.bor(elem.ERAY_TYPE_BIT, ...)` in the lua console) and set that as TMP. Arguably the hardest part of using the element. Existing ERAY can be used to apply tmp-strings though. In some _farther_ future an UI could be created...

2.  Select one of the 100 available slots (0 to 99) for your copied element and set the pixel's TMP2 to the slot number. This is a simple way to have two ERAYs using the same particle data as well as making the implementation not modify existing structures _too_ much.

3. Spark it with PSCN to fire a beam to copy all properties of anything hit. This is a kind of intuitive way of saving the properties of an element - create one first, then set values to it.

4. Spark it with any other metal (like METL) to fire a beam, hitting some other particle and setting its properties as desired.

* Unknown behavior when sparked with 'any other metal' before cloning. Alternatively, deleting behavior, depending on how the particles[] ends up being initialized.
* If the tmp2 upon firing a beam is 0, the element will set its tmp to `ERAY_TYPE_BIT | ERAY_LIFE_BIT | ERAY_CTYPE_BIT`