//-------------------------------------------------- int Texture::loadTexture(string name, bool png, bool nearest) { int ret = 0; bool newTexture = true; for (nameListIterator = nameList.begin();nameListIterator != nameList.end();nameListIterator++) //Search name in namelist { Texturename str = *nameListIterator; //Get current name if (!str.str.compare(name)) //Compare the currant name with the list { ret = str.i; //found the name in the list newTexture = false; break; } } if (newTexture) { Texturename *str = new Texturename(); //create new item if (!png) { ret = loadFile(name); //load the texture } if (png || ret == -1) { ret = loadPNGFile(name, nearest); if (ret == -1) { //report an error and return 0 ErrorLog *log = ErrorLog::getInstance(); stringstream logStream; logStream << "Couldn't Load Texture " << name << endl; log->reportError(logStream.str()); delete str; return 0; } } str->str = name; //save the name in the new item str->i = ret; //save the texturindex in the new itme nameList.push_back(*str); //save the new item in the list } return ret; //return the texurindex }
bool GraphicManager::loadEditorSprites() { // Unused graphics MIGHT be loaded here, but it's a neglectable loss sprite_space[EDITOR_SPRITE_SELECTION_MARKER] = newd EditorSprite( newd wxBitmap(selection_marker_xpm16x16), newd wxBitmap(selection_marker_xpm32x32) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_1x1] = newd EditorSprite( loadPNGFile(circular_1_small_png), loadPNGFile(circular_1_png) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_3x3] = newd EditorSprite( loadPNGFile(circular_2_small_png), loadPNGFile(circular_2_png) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_5x5] = newd EditorSprite( loadPNGFile(circular_3_small_png), loadPNGFile(circular_3_png) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_7x7] = newd EditorSprite( loadPNGFile(circular_4_small_png), loadPNGFile(circular_4_png) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_9x9] = newd EditorSprite( loadPNGFile(circular_5_small_png), loadPNGFile(circular_5_png) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_15x15] = newd EditorSprite( loadPNGFile(circular_6_small_png), loadPNGFile(circular_6_png) ); sprite_space[EDITOR_SPRITE_BRUSH_CD_19x19] = newd EditorSprite( loadPNGFile(circular_7_small_png), loadPNGFile(circular_7_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_1x1] = newd EditorSprite( loadPNGFile(rectangular_1_small_png), loadPNGFile(rectangular_1_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_3x3] = newd EditorSprite( loadPNGFile(rectangular_2_small_png), loadPNGFile(rectangular_2_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_5x5] = newd EditorSprite( loadPNGFile(rectangular_3_small_png), loadPNGFile(rectangular_3_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_7x7] = newd EditorSprite( loadPNGFile(rectangular_4_small_png), loadPNGFile(rectangular_4_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_9x9] = newd EditorSprite( loadPNGFile(rectangular_5_small_png), loadPNGFile(rectangular_5_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_15x15] = newd EditorSprite( loadPNGFile(rectangular_6_small_png), loadPNGFile(rectangular_6_png) ); sprite_space[EDITOR_SPRITE_BRUSH_SD_19x19] = newd EditorSprite( loadPNGFile(rectangular_7_small_png), loadPNGFile(rectangular_7_png) ); sprite_space[EDITOR_SPRITE_OPTIONAL_BORDER_TOOL] = newd EditorSprite( loadPNGFile(optional_border_small_png), loadPNGFile(optional_border_png) ); sprite_space[EDITOR_SPRITE_ERASER] = newd EditorSprite( loadPNGFile(eraser_small_png), loadPNGFile(eraser_png) ); sprite_space[EDITOR_SPRITE_PZ_TOOL] = newd EditorSprite( loadPNGFile(protection_zone_small_png), loadPNGFile(protection_zone_png) ); sprite_space[EDITOR_SPRITE_PVPZ_TOOL] = newd EditorSprite( loadPNGFile(pvp_zone_small_png), loadPNGFile(pvp_zone_png) ); sprite_space[EDITOR_SPRITE_NOLOG_TOOL] = newd EditorSprite( loadPNGFile(no_logout_small_png), loadPNGFile(no_logout_png) ); sprite_space[EDITOR_SPRITE_NOPVP_TOOL] = newd EditorSprite( loadPNGFile(no_pvp_small_png), loadPNGFile(no_pvp_png) ); sprite_space[EDITOR_SPRITE_DOOR_NORMAL] = newd EditorSprite( loadPNGFile(door_normal_small_png), loadPNGFile(door_normal_png) ); sprite_space[EDITOR_SPRITE_DOOR_LOCKED] = newd EditorSprite( loadPNGFile(door_locked_small_png), loadPNGFile(door_locked_png) ); sprite_space[EDITOR_SPRITE_DOOR_MAGIC] = newd EditorSprite( loadPNGFile(door_magic_small_png), loadPNGFile(door_magic_png) ); sprite_space[EDITOR_SPRITE_DOOR_QUEST] = newd EditorSprite( loadPNGFile(door_quest_small_png), loadPNGFile(door_quest_png) ); sprite_space[EDITOR_SPRITE_WINDOW_NORMAL] = newd EditorSprite( loadPNGFile(window_normal_small_png), loadPNGFile(window_normal_png) ); sprite_space[EDITOR_SPRITE_WINDOW_HATCH] = newd EditorSprite( loadPNGFile(window_hatch_small_png), loadPNGFile(window_hatch_png) ); sprite_space[EDITOR_SPRITE_SELECTION_GEM] = newd EditorSprite( loadPNGFile(gem_edit_png), nullptr ); sprite_space[EDITOR_SPRITE_DRAWING_GEM] = newd EditorSprite( loadPNGFile(gem_move_png), nullptr ); return true; }