public void SetHex(HexScript newHex)
    {
        HexScript oldHex = Hex;

        if (newHex != null)
        {
            newHex.RemoveUnit(this);
        }

        Hex = newHex;

        newHex.AddUnit(this);

        if (OnUnitMoved != null)
        {
            OnUnitMoved(oldHex, newHex);
        }
    }