]> git.localhorst.tv Git - l2e.git/blobdiff - src/main.cpp
moved menu resources to data files
[l2e.git] / src / main.cpp
index 0e12f5b92ca0bce784a0daf5940eec610a020c1d..31724d5b22acd42f67b0222f8a954234c77981ad 100644 (file)
@@ -114,6 +114,7 @@ int main(int argc, char **argv) {
                graphics::MenuProperties::CreateTypeDescription();
                graphics::SimpleAnimation::CreateTypeDescription();
                graphics::Sprite::CreateTypeDescription();
+               graphics::Texture::CreateTypeDescription();
 
                map::Area::CreateTypeDescription();
                map::Entity::CreateTypeDescription();
@@ -121,6 +122,8 @@ int main(int argc, char **argv) {
                map::Tile::CreateTypeDescription();
                map::Trigger::CreateTypeDescription();
 
+               menu::Resources::CreateTypeDescription();
+
                Arguments args;
                args.Read(argc, argv);
 
@@ -191,6 +194,7 @@ int main(int argc, char **argv) {
                gameConfig.state = &gameState;
                gameConfig.heroesLayout = caster.GetPartyLayout("heroesLayout");
                gameConfig.battleResources = caster.GetBattleResources("battleResources");
+               gameConfig.menuResources = caster.GetMenuResources("menuResources");
 
                // temporary test data
                SDL_Surface *bg(IMG_Load("test-data/battle-bg.png"));
@@ -273,200 +277,6 @@ int main(int argc, char **argv) {
                gameState.heroes[3].MapEntity().SetFlags(Entity::FLAG_NONBLOCKING);
                gameState.heroes[2].MapEntity().AddFollower(&gameState.heroes[3].MapEntity());
 
-               menu::Resources menuResources;
-               gameConfig.menuResources = &menuResources;
-
-               Texture menubg;
-               menubg.SetSurface(IMG_Load("test-data/menubg.png"));
-               menubg.SetSize(Vector<int>(64, 64));
-               menuResources.menubg = &menubg;
-
-               menuResources.statusFont = gameConfig.battleResources->normalFont;
-
-               graphics::Sprite statusLabels(IMG_Load("test-data/status-labels.png"), 32, 16);
-               menuResources.statusLabels = &statusLabels;
-
-               graphics::Frame statusFrame(IMG_Load("test-data/status-frame.png"), 32, 32, 32, 32);
-               menuResources.statusFrame = &statusFrame;
-
-               graphics::Sprite menuFontSprite(IMG_Load("test-data/menu-font.png"), 16, 16);
-               graphics::Font menuFont(&menuFontSprite, 0, -2);
-               graphics::Sprite menuInactiveFontSprite(IMG_Load("test-data/menu-font-inactive.png"), 16, 16);
-               graphics::Font menuInactiveFont(&menuInactiveFontSprite, 0, -2);
-
-               menuResources.normalFont = &menuFont;
-               menuResources.inactiveFont = &menuInactiveFont;
-
-               graphics::Sprite menuCursor(IMG_Load("test-data/menu-cursor.png"), 32, 16);
-               menuResources.menuCursor = &menuCursor;
-               graphics::Sprite menuActiveCursor(IMG_Load("test-data/menu-cursor-active.png"), 32, 18);
-               menuResources.menuActiveCursor = &menuActiveCursor;
-
-               graphics::MenuProperties mainMenuProperties;
-               mainMenuProperties.cols = 2;
-               mainMenuProperties.rows = 4;
-               mainMenuProperties.charsPerEntry = 8;
-               mainMenuProperties.rowGap = 8;
-               mainMenuProperties.colGap = 32;
-               mainMenuProperties.cursor = &menuCursor;
-               mainMenuProperties.font = &menuFont;
-               mainMenuProperties.wrapX = true;
-               mainMenuProperties.wrapY = true;
-               menuResources.mainMenuProperties = &mainMenuProperties;
-
-               menuResources.mainMenuItemText = "ITEM";
-               menuResources.mainMenuSpellText = "SPELL";
-               menuResources.mainMenuCapsuleText = "CAPSULE";
-               menuResources.mainMenuEquipmentText = "EQUIP";
-               menuResources.mainMenuStatusText = "STATUS";
-               menuResources.mainMenuChangeText = "CHANGE";
-               menuResources.mainMenuConfigText = "CONFIG";
-               menuResources.mainMenuScenarioText = "SCENARIO";
-
-               menuResources.mainMenuTimeText = "TIME";
-               menuResources.mainMenuGoldText = "GOLD";
-
-               graphics::Sprite heroCursor(IMG_Load("test-data/hero-cursor.png"), 64, 16);
-               menuResources.heroCursor = &heroCursor;
-               menuResources.heroCursorBlinkTime = 532;
-
-               menuResources.noEquipmentText = "No equip";
-
-               graphics::Sprite shoulderNav(IMG_Load("test-data/shoulder-nav.png"), 160, 16);
-               menuResources.shoulderNav = &shoulderNav;
-
-               menuResources.atpLabel = "ATP";
-               menuResources.dfpLabel = "DFP";
-               menuResources.strLabel = "STR";
-               menuResources.aglLabel = "AGL";
-               menuResources.intLabel = "INT";
-               menuResources.gutLabel = "GUT";
-               menuResources.mgrLabel = "MGR";
-
-               menuResources.ipLabel = "IP";
-               menuResources.experienceLabel = "NOW EXP";
-               menuResources.nextLevelLabel = "NEXT LEVEL";
-
-               graphics::MenuProperties statusMenuProperties;
-               statusMenuProperties.cols = 2;
-               statusMenuProperties.rows = 1;
-               statusMenuProperties.charsPerEntry = 6;
-               statusMenuProperties.rowGap = 0;
-               statusMenuProperties.colGap = 16;
-               statusMenuProperties.cursor = &menuCursor;
-               statusMenuProperties.font = &menuFont;
-               statusMenuProperties.wrapX = true;
-               menuResources.statusMenuProperties = &statusMenuProperties;
-
-               menuResources.nextLabel = "NEXT";
-               menuResources.returnLabel = "RETURN";
-
-               graphics::MenuProperties itemMenuProperties;
-               itemMenuProperties.cols = 3;
-               itemMenuProperties.rows = 1;
-               itemMenuProperties.charsPerEntry = 5;
-               itemMenuProperties.rowGap = 8;
-               itemMenuProperties.colGap = 16;
-               itemMenuProperties.cursor = &menuCursor;
-               itemMenuProperties.selectedCursor = &menuActiveCursor;
-               itemMenuProperties.font = &menuFont;
-               itemMenuProperties.wrapX = true;
-               itemMenuProperties.wrapY = true;
-               menuResources.itemMenuProperties = &itemMenuProperties;
-               menuResources.itemMenuUseText = "USE";
-               menuResources.itemMenuSortText = "SORT";
-               menuResources.itemMenuDropText = "DROP";
-
-               graphics::MenuProperties inventoryMenuProperties;
-               inventoryMenuProperties.cols = 1;
-               inventoryMenuProperties.rows = 6;
-               inventoryMenuProperties.charsPerEntry = 13;
-               inventoryMenuProperties.rowGap = 8;
-               inventoryMenuProperties.cursor = &menuCursor;
-               inventoryMenuProperties.selectedCursor = &menuActiveCursor;
-               inventoryMenuProperties.font = &menuFont;
-               inventoryMenuProperties.disabledFont = &menuInactiveFont;
-               inventoryMenuProperties.iconSpace = 16;
-               inventoryMenuProperties.charsPerNumber = 2;
-               inventoryMenuProperties.delimiter = ':';
-               menuResources.inventoryMenuProperties = &inventoryMenuProperties;
-
-               graphics::MenuProperties spellMenuProperties;
-               spellMenuProperties.cols = 2;
-               spellMenuProperties.rows = 6;
-               spellMenuProperties.charsPerEntry = 8;
-               spellMenuProperties.rowGap = 8;
-               spellMenuProperties.colGap = 48;
-               spellMenuProperties.cursor = &menuCursor;
-               spellMenuProperties.selectedCursor = &menuActiveCursor;
-               spellMenuProperties.font = &menuFont;
-               spellMenuProperties.disabledFont = &menuInactiveFont;
-               spellMenuProperties.iconSpace = 0;
-               spellMenuProperties.charsPerNumber = 2;
-               spellMenuProperties.delimiter = ':';
-               menuResources.spellMenuProperties = &spellMenuProperties;
-
-               graphics::MenuProperties equipmentActionMenuProperties;
-               equipmentActionMenuProperties.cols = 1;
-               equipmentActionMenuProperties.rows = 5;
-               equipmentActionMenuProperties.charsPerEntry = 10;
-               equipmentActionMenuProperties.rowGap = 8;
-               equipmentActionMenuProperties.cursor = &menuCursor;
-               equipmentActionMenuProperties.selectedCursor = &menuActiveCursor;
-               equipmentActionMenuProperties.font = &menuFont;
-               equipmentActionMenuProperties.iconSpace = 0;
-               menuResources.equipmentActionMenuProperties = &equipmentActionMenuProperties;
-
-               graphics::MenuProperties equipmentMenuProperties;
-               equipmentMenuProperties.cols = 1;
-               equipmentMenuProperties.rows = 6;
-               equipmentMenuProperties.charsPerEntry = 12;
-               equipmentMenuProperties.rowGap = 16;
-               equipmentMenuProperties.cursor = &menuCursor;
-               equipmentMenuProperties.selectedCursor = &menuActiveCursor;
-               equipmentMenuProperties.font = menuResources.statusFont;
-               equipmentMenuProperties.iconSpace = 16;
-               equipmentMenuProperties.wrapY = true;
-               menuResources.equipmentMenuProperties = &equipmentMenuProperties;
-
-               menuResources.equipMenuEquipLabel = "EQUIP";
-               menuResources.equipMenuStrongestLabel = "STRONGEST";
-               menuResources.equipMenuRemoveLabel = "REMOVE";
-               menuResources.equipMenuRemoveAllLabel = "REMOVE ALL";
-               menuResources.equipMenuDropLabel = "DROP";
-
-               graphics::MenuProperties configMenuProperties;
-               configMenuProperties.cols = 1;
-               configMenuProperties.rows = 4;
-               configMenuProperties.charsPerEntry = 8;
-               configMenuProperties.rowGap = 32;
-               configMenuProperties.cursor = &menuCursor;
-               configMenuProperties.font = &menuFont;
-               configMenuProperties.wrapY = true;
-               menuResources.configMenuProperties = &configMenuProperties;
-
-               menuResources.configMessageSpeedLabel = "MESSAGE\n   SPEED";
-               menuResources.configMessageSpeedFast = "FAST";
-               menuResources.configMessageSpeedNormal = "NORMAL";
-               menuResources.configMessageSpeedSlow = "SLOW";
-               menuResources.configBattleCursorLabel = "BATTLE\n  CURSOR";
-               menuResources.configStatusCursorLabel = "STATUS\n  CURSOR";
-               menuResources.configCursorClear = "CLEAR";
-               menuResources.configCursorMemory = "MEMORY";
-               menuResources.configMusicLabel = "MUSIC";
-               menuResources.configMusicStereo = "STEREO";
-               menuResources.configMusicMono = "MONO";
-
-               graphics::MenuProperties scenarioMenuProperties;
-               scenarioMenuProperties.cols = 1;
-               scenarioMenuProperties.rows = 6;
-               scenarioMenuProperties.charsPerEntry = 14;
-               scenarioMenuProperties.rowGap = 8;
-               scenarioMenuProperties.cursor = &menuCursor;
-               scenarioMenuProperties.font = &menuFont;
-               menuResources.scenarioMenuProperties = &scenarioMenuProperties;
-               menuResources.scenarioMenuHeadline = "SCENARIO ITEM";
-
                InitScreen screen(width, height);
 
                app::State *state(0);