
CURRENT_FILE = "j_engine.lua";

function dofile_( name )
	local cfl = CURRENT_FILE;
	CURRENT_FILE = name;
	dofilebackup( name );
	CURRENT_FILE = cfl;
end


if DOFILECHANGED == nil then
	dofilebackup = dofile;
	dofile = dofile_;
	DOFILECHANGED = true;
end


-- структура каталогов --------------------------
dofile( "j_func.lua" );
dofile( "j_node_func.lua" );
dofile( "j_gui_func.lua" );
dofile( "j_dir.lua" );
-------------------------------------------------

-- эта переменная нужна для редактора частиц ----
PS_DIR = "data\\ps\\";
-------------------------------------------------

-- режим экрана ---------------------------------
--screen	=	{};
--screen.SCREEN	=	{
--	is_windowed = 0;
--	bpp         = 16;
--	w           = 800;
--	h           = 600;
--}
-------------------------------------------------

-- создание таблиц для данных -------------------
FX		= {};
FONTS	= {};
COUNTER	= {};
NOISE 	= {};
PS		= {};
-------------------------------------------------

-- автоустановка origin - файла в котором объявлен FX. нужно для редктора.
function FXSet( t, name, value )
	value.origin = CURRENT_FILE;
	rawset( t, name, value );
end

setmetatable( FX, { __newindex = FXSet } );
setmetatable( PS, { __newindex = FXSet } );
-------------------------------------------------

-- подключем данные -----------------------------
dofile( lang_config_dir .. "texts.lua" );
dofile( lang_config_dir .. "texts_format.lua" );
dofile( shared_config_dir .. "textures.lua" );
dofile( shared_config_dir .. "textures_prt.lua" );
dofile( "vgr\\vgr_textures.lua" );
dofile( "counters_jaibo.lua" );
dofile( "counters_man.lua" );
dofile( "vgr\\counters_vgr.lua" );
dofile( shared_config_dir .. "sounds.lua" );

dofile( shared_config_dir .. "ps\\ps_a2_mainmenu.lua" );
dofile( shared_config_dir .. "ps\\ps_a3_map.lua" );
dofile( shared_config_dir .. "ps\\ps_a6_heroopen.lua" );
dofile( shared_config_dir .. "ps\\ps_a7_levelsummary.lua" );
dofile( shared_config_dir .. "ps\\ps_a18_extra.lua" );
dofile( shared_config_dir .. "ps\\ps_a19_heroes.lua" );
dofile( shared_config_dir .. "ps\\ps_a23_comics.lua" );
dofile( shared_config_dir .. "ps\\ps_a25_treasures.lua" );
dofile( shared_config_dir .. "ps\\ps_a25_vgr_treasures.lua" );
dofile( shared_config_dir .. "ps\\ps_a49_olive.lua" );
dofile( shared_config_dir .. "ps\\ps_common.lua" );
dofile( shared_config_dir .. "ps\\ps_g_back.lua" );
dofile( shared_config_dir .. "ps\\ps_g_back_stimf.lua" );
dofile( shared_config_dir .. "ps\\ps_g_back_cyclop.lua" );
dofile( shared_config_dir .. "ps\\ps_g_back_minotaur.lua" );
dofile( shared_config_dir .. "ps\\ps_g_game.lua" );
dofile( shared_config_dir .. "ps\\ps_m_city.lua" );
dofile( shared_config_dir .. "ps\\ps_m_crash.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_zeus.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_artemis.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_poseidon.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_boreas.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_ares.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_perseus.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_heracles.lua" );
dofile( shared_config_dir .. "ps\\ps_w_ispy_apollo.lua" );
dofile( shared_config_dir .. "ps\\ps_p_common.lua" );
dofile( "vgr\\ps\\ps_vgr_trans.lua" );
dofile( "vgr\\ps\\ps_vgr_g.lua" );
dofile( "vgr\\ps\\ps_vgr_w.lua" );

dofile( shared_config_dir .. "images\\z_core.lua" );
dofile( shared_config_dir .. "images\\images.lua" );
dofile( shared_config_dir .. "images\\images_prt.lua" );
dofile( shared_config_dir .. "images\\images_a23_comics.lua" );
dofile( shared_config_dir .. "images\\images_a25_treasures.lua" );
dofile( shared_config_dir .. "images\\images_a30_reel.lua" );
dofile( lang_config_dir .. "images_fonts.lua" );
dofile( shared_config_dir .. "images\\images_g_gamefield.lua" );
dofile( shared_config_dir .. "images\\images_g_crash.lua" );
dofile( shared_config_dir .. "images\\images_g_heroes.lua" );
dofile( shared_config_dir .. "images\\images_g_int.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_zeus.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_artemis.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_poseidon.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_boreas.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_ares.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_perseus.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_heracles.lua" );
dofile( shared_config_dir .. "images\\w_game\\images_w_apollo.lua" );
dofile( shared_config_dir .. "images\\p_mg\\images_p_common.lua" );
dofile( shared_config_dir .. "images\\p_mg\\images_p_c1.lua" );
dofile( shared_config_dir .. "images\\m_city\\images_m_back.lua" );
dofile( shared_config_dir .. "images\\m_city\\images_m_other.lua" );
dofile( shared_config_dir .. "images\\m_city\\images_m_man.lua" );
dofile( shared_config_dir .. "images\\m_city\\images_m_olive.lua" );
dofile( shared_config_dir .. "images\\m_city\\images_m_builds.lua" );
dofile( shared_config_dir .. "images\\m_city\\images_m_crash.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_serene.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_hydra.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_stimf.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_cyclop.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_minotaur.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_stix.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_vortex.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_octopus.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_olimp.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_ehidna.lua" );
dofile( shared_config_dir .. "images\\g_back\\images_g_back_favn.lua" );
dofile( "vgr\\images\\images_vgr_trans.lua" );
dofile( "vgr\\images\\images_vgr_g.lua" );
dofile( "vgr\\images\\images_vgr_w.lua" );


dofile( lang_config_dir .. "fonts\\font_title_big.lua" );
dofile( lang_config_dir .. "fonts\\font_button_cover.lua" );
dofile( lang_config_dir .. "fonts\\font_button_cover_2.lua" );
dofile( lang_config_dir .. "fonts\\font_button_normal.lua" );
dofile( lang_config_dir .. "fonts\\font_button_normal_2.lua" );
dofile( lang_config_dir .. "fonts\\font_text_bold.lua" );
dofile( lang_config_dir .. "fonts\\font_text_bold_2.lua" );
dofile( lang_config_dir .. "fonts\\font_text_gf.lua" );
dofile( lang_config_dir .. "fonts\\font_text_huge.lua" );
dofile( lang_config_dir .. "fonts\\font_text_normal.lua" );
dofile( lang_config_dir .. "fonts\\font_text_normal_2.lua" );
dofile( lang_config_dir .. "fonts\\font_text_tip.lua" );
dofile( lang_config_dir .. "fonts\\font_text_flood.lua" );
dofile( lang_config_dir .. "fonts\\font_map_normal.lua" );
dofile( lang_config_dir .. "fonts\\font_num_normal.lua" );
dofile( lang_config_dir .. "fonts\\font_num_gold.lua" );
dofile( lang_config_dir .. "fonts\\font_num_dark.lua" );
dofile( lang_config_dir .. "fonts\\font_num_darkred.lua" );
dofile( lang_config_dir .. "fonts\\font_num_puzzle.lua" );
dofile( lang_config_dir .. "fonts\\font_num_info.lua" );
dofile( lang_config_dir .. "fonts\\font_num_gfg.lua" );
dofile( lang_config_dir .. "fonts\\font_num_gfs.lua" );


dofile( shared_config_dir .. "fx\\z_core.lua" );
dofile( shared_config_dir .. "fx\\a0_common.lua" );
dofile( shared_config_dir .. "fx\\a0_trans.lua" );
dofile( shared_config_dir .. "fx\\a0_windows.lua" );
dofile( shared_config_dir .. "fx\\a2_mainmenu.lua" );
dofile( shared_config_dir .. "fx\\a3_map.lua" );
dofile( shared_config_dir .. "fx\\a6_heroopen.lua" );
dofile( shared_config_dir .. "fx\\a7_levelsummary.lua" );
dofile( shared_config_dir .. "fx\\a8_tips.lua" );
dofile( shared_config_dir .. "fx\\a12_credits.lua" );
dofile( shared_config_dir .. "fx\\a13_intro.lua" );
dofile( shared_config_dir .. "fx\\a18_extra.lua" );
dofile( shared_config_dir .. "fx\\a19_heroes.lua" );
dofile( shared_config_dir .. "fx\\a23_comics.lua" );
dofile( shared_config_dir .. "fx\\a25_treasures.lua" );
dofile( shared_config_dir .. "fx\\a25_vgr_treasures.lua" );
dofile( shared_config_dir .. "fx\\a26_castle.lua" );
dofile( shared_config_dir .. "fx\\a30_reel.lua" );
dofile( shared_config_dir .. "fx\\a31_view.lua" );
dofile( shared_config_dir .. "fx\\a35_startlevel.lua" );
dofile( shared_config_dir .. "fx\\a43_maphelp.lua" );
dofile( shared_config_dir .. "fx\\a44_gamehelp.lua" );
dofile( shared_config_dir .. "fx\\a49_olive.lua" );
dofile( shared_config_dir .. "fx\\fx_g_gamefield.lua" );
dofile( shared_config_dir .. "fx\\fx_g_heroes.lua" );
dofile( shared_config_dir .. "fx\\fx_g_int.lua" );
dofile( shared_config_dir .. "fx\\fx_g_vgr.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_common.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_zeus.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_artemis.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_poseidon.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_boreas.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_ares.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_perseus.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_heracles.lua" );
dofile( shared_config_dir .. "fx\\w_game\\fx_w_apollo.lua" );
dofile( shared_config_dir .. "fx\\p_mg\\fx_p_common.lua" );
dofile( shared_config_dir .. "fx\\fx_m_back.lua" );
dofile( shared_config_dir .. "fx\\fx_m_common.lua" );
dofile( shared_config_dir .. "fx\\fx_m_olive.lua" );
dofile( shared_config_dir .. "fx\\fx_m_builds.lua" );
dofile( shared_config_dir .. "fx\\fx_m_crash.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_common.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_edip_all.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_bam_all.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_house1_all.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_yard_all.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_crash_all.lua" );
dofile( shared_config_dir .. "fx\\m_man\\fx_m_war_all.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_sea_boats.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_sea_boats_blue.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_atlant.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_zeus_night.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_zeus_day.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_pompeii.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_meadow.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_cave.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_coast.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_lab.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_poseidon.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_ship.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_bonus.lua" );
dofile( shared_config_dir .. "fx\\g_back\\fx_g_back_common.lua" );
dofile( "vgr\\fx\\vgr_trans.lua" );
dofile( "vgr\\fx\\vgr_g.lua" );
dofile( "vgr\\fx\\vgr_w.lua" );


dofile( lang_config_dir .. "texts_nodes.lua" );
dofile( shared_config_dir .. "nodes\\z_core.lua" );
dofile( shared_config_dir .. "nodes\\nodes_custom.lua" );
dofile( shared_config_dir .. "nodes\\a0_common.lua" );
dofile( shared_config_dir .. "nodes\\a0_trans.lua" );
dofile( shared_config_dir .. "nodes\\t_windows.lua" );
dofile( shared_config_dir .. "nodes\\a0_windows.lua" );
dofile( shared_config_dir .. "nodes\\a2_mainmenu.lua" );
dofile( shared_config_dir .. "nodes\\a3_map.lua" );
dofile( shared_config_dir .. "nodes\\a6_heroopen.lua" );
dofile( shared_config_dir .. "nodes\\a7_levelsummary.lua" );
dofile( shared_config_dir .. "nodes\\a8_tips.lua" );
dofile( shared_config_dir .. "nodes\\a9_player.lua" );
dofile( shared_config_dir .. "nodes\\a10_exit.lua" );
dofile( shared_config_dir .. "nodes\\a12_credits.lua" );
dofile( shared_config_dir .. "nodes\\a13_intro.lua" );
dofile( shared_config_dir .. "nodes\\a18_extra.lua" );
dofile( shared_config_dir .. "nodes\\a19_heroes.lua" );
dofile( shared_config_dir .. "nodes\\a23_comics.lua" );
dofile( shared_config_dir .. "nodes\\a25_treasures.lua" );
dofile( shared_config_dir .. "nodes\\a26_castle.lua" );
dofile( shared_config_dir .. "nodes\\a27_upgrade.lua" );
dofile( shared_config_dir .. "nodes\\a30_reel.lua" );
dofile( shared_config_dir .. "nodes\\a31_view.lua" );
dofile( shared_config_dir .. "nodes\\a35_startlevel.lua" );
dofile( shared_config_dir .. "nodes\\a43_maphelp.lua" );
dofile( shared_config_dir .. "nodes\\a44_gamehelp.lua" );
dofile( shared_config_dir .. "nodes\\a49_olive.lua" );
dofile( shared_config_dir .. "nodes\\g_game\\nodes_g_gamefield.lua" );
dofile( shared_config_dir .. "nodes\\g_game\\nodes_g_gems.lua" );
dofile( shared_config_dir .. "nodes\\g_game\\nodes_g_crash.lua" );
dofile( shared_config_dir .. "nodes\\g_game\\nodes_g_int.lua" );
dofile( shared_config_dir .. "nodes\\g_game\\nodes_g_heroes.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_int.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_zeus.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_artemis.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_poseidon.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_boreas.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_ares.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_perseus.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_heracles.lua" );
dofile( shared_config_dir .. "nodes\\w_game\\nodes_w_apollo.lua" );
dofile( shared_config_dir .. "nodes\\p_mg\\nodes_p_common.lua" );
dofile( shared_config_dir .. "nodes\\p_mg\\nodes_p_c1.lua" );
dofile( shared_config_dir .. "nodes\\m_city\\nodes_m_back.lua" );
dofile( shared_config_dir .. "nodes\\m_city\\nodes_m_other.lua" );
dofile( shared_config_dir .. "nodes\\m_city\\nodes_m_man.lua" );
dofile( shared_config_dir .. "nodes\\m_city\\nodes_m_olive.lua" );
dofile( shared_config_dir .. "nodes\\m_city\\nodes_m_builds.lua" );
dofile( shared_config_dir .. "nodes\\m_city\\nodes_m_crash.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_serene.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_hydra.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_stimf.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_cyclop.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_minotaur.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_stix.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_vortex.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_octopus.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_olimp.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_ehidna.lua" );
dofile( shared_config_dir .. "nodes\\g_back\\nodes_g_back_favn.lua" );
dofile( "vgr\\nodes\\vgr_trans.lua" );
dofile( "vgr\\nodes\\vgr_g.lua" );
dofile( "vgr\\nodes\\vgr_w.lua" );

dofile( shared_config_dir .. "nodes\\nodes_vgr_a25.lua" );




dofile( shared_config_dir .. "cursors.lua" );


dofile( lang_config_dir .. "gui\\t_buttons.lua" );
dofile( lang_config_dir .. "gui\\t_buttons_ex.lua" );
dofile( lang_config_dir .. "gui\\t_checkboxes.lua" );
dofile( lang_config_dir .. "gui\\t_edits.lua" );
dofile( lang_config_dir .. "gui\\t_lists.lua" );
dofile( lang_config_dir .. "gui\\t_sliders.lua" );
dofile( lang_config_dir .. "gui\\gui_buttons.lua" );
dofile( lang_config_dir .. "gui\\gui_checkboxes.lua" );
dofile( lang_config_dir .. "gui\\gui_edits.lua" );
dofile( lang_config_dir .. "gui\\gui_lists.lua" );
dofile( lang_config_dir .. "gui\\gui_menus.lua" );
dofile( lang_config_dir .. "gui\\gui_sliders.lua" );





-------------------------------------------------



-- после объявления нод, проверяем на корректность
DataCheck();



