def initWithPalette(self, image_file, tilePalette): self.tileset = {} self.boxsize = 32 bxsz = self.boxsize self.tilePalette = tilePalette v = self.tilePalette if(self.fakefolder): self.imageFile = img_util.open(getdata.path('tile.png')) else: self.imageFile = img_util.open(image_file) if self.imageFile.size[0] % self.boxsize == 0 and self.imageFile.size[1] % self.boxsize == 0: if isinstance(self.tilePalette, dict): # remember: crop uses (( and )) because it is converting the # elements inside in coordinates self.tileset[0]=emptyTile sorted_keys = sorted(self.tilePalette, key=int) for k in sorted_keys: #print("P Type= ", k, " X= " ,v[k][0], " Y= " , v[k][1]) #self.tileset.append( self.imageFile.crop((bxsz*v[k][0],bxsz*v[k][1],bxsz*v[k][0] + bxsz, bxsz*v[k][1] + bxsz)) ) imageTemp = self.imageFile.crop( (bxsz * v[k][0], bxsz * v[k][1], bxsz * v[k][0] + bxsz, bxsz * v[k][1] + bxsz)) self.tileset[int(k)]=(imageTemp, imageTemp.resize((bxsz * 2, bxsz * 2), Image.NEAREST), imageTemp.resize((int(bxsz * 0.5), int(bxsz * 0.5)), Image.NEAREST))
def initWithPalette(self, image_file, tilePalette): self.tileset = {} self.boxsize = 32 bxsz = self.boxsize self.tilePalette = tilePalette v = self.tilePalette if(self.fakefolder): self.imageFile = img_util.open(getdata.path('tile.png')) else: self.imageFile = img_util.open(image_file) if self.imageFile.size[0] % self.boxsize == 0 and self.imageFile.size[1] % self.boxsize == 0: if isinstance(self.tilePalette, dict): # remember: crop uses (( and )) because it is converting the # elements inside in coordinates self.tileset[0]=emptyTile sorted_keys = sorted(self.tilePalette, key=int) for k in sorted_keys: #print("P Type= ", k, " X= " ,v[k][0], " Y= " , v[k][1]) #self.tileset.append( self.imageFile.crop((bxsz*v[k][0],bxsz*v[k][1],bxsz*v[k][0] + bxsz, bxsz*v[k][1] + bxsz)) ) imageTemp = self.imageFile.crop( (bxsz * v[k][0], bxsz * v[k][1], bxsz * v[k][0] + bxsz, bxsz * v[k][1] + bxsz)) self.tileset[int(k)]=(imageTemp, imageTemp.resize((bxsz * 2, bxsz * 2), Image.NEAREST), imageTemp.resize((int(bxsz * 0.5), int(bxsz * 0.5)), Image.NEAREST))
def __init__(self, actionAndParameter): #super().__init__(str(actionAndParameter)) QtWidgets.QListWidgetItem.__init__(self, '') self.setText('["' + actionAndParameter[0] + '","' + actionAndParameter[1] + '"]') self.setData(QtCore.Qt.UserRole, actionAndParameter) self.setIcon( QtGui.QIcon( getdata.path('actions/' + actionAndParameter[0] + '.png')))
def __init__ (self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.engine = QtHelp.QHelpEngine(getdata.path('fgmk.qhc'), self) self.engine.setupData() self.engine.registerDocumentation(getdata.path('fgmk.qch')) self.engine.searchEngine().reindexDocumentation() self.querySearch = self.engine.searchEngine().queryWidget() self.resultSearch = self.engine.searchEngine().resultWidget() splitter = QtWidgets.QSplitter(orientation=QtCore.Qt.Horizontal) self.browser = HelpBrowser(self.engine, self) tWidget = QtWidgets.QTabWidget(self); searcWidget = QtWidgets.QWidget(self) VBox = QtWidgets.QVBoxLayout(searcWidget) VBox.addWidget(self.querySearch) VBox.addWidget(self.resultSearch) tWidget.setMaximumWidth(200); self.hcontent = self.engine.contentWidget() self.hindex = self.engine.indexWidget() tWidget.addTab(self.hcontent, "Contents") #tWidget.addTab(self.hindex, "Index"); tWidget.addTab(searcWidget, "Search") self.hcontent.expandToDepth(2) self.hcontent.setExpandsOnDoubleClick(False) self.hcontent.linkActivated.connect(self.browser.setSource) self.hindex.linkActivated.connect(self.browser.setSource) self.resultSearch.requestShowLink.connect(self.browser.setSource) self.querySearch.search.connect(self.search) splitter.addWidget(tWidget) splitter.addWidget(self.browser) splitter.setSizes((160,440)) hlayout = QtWidgets.QHBoxLayout(self) hlayout.addWidget(splitter) self.browser.setSource(QtCore.QUrl('qthelp://org.sphinx.fgmk.'+ __version__ +'/doc/index.html')) #self.setLayout(hlayout) self.resize(800, 600) self.setWindowTitle(u'%s help' % __title__)
def __init__(self, parent=None, **kwargs): #super().__init__(parent, **kwargs) QtWidgets.QWidget.__init__(self, parent, **kwargs) self.menuTileset = tile_set.TileSet( getdata.path('map_explorer_icons.png')) self.scale = 0.5 iconGrid = QtWidgets.QGridLayout() iconHBoxL = QtWidgets.QHBoxLayout() iconHBoxL.setAlignment(QtCore.Qt.AlignLeft) iconGrid.addLayout(iconHBoxL, 0, 0, QtCore.Qt.AlignLeft) iconHBoxR = QtWidgets.QHBoxLayout() iconHBoxR.setAlignment(QtCore.Qt.AlignRight) iconGrid.addLayout(iconHBoxR, 0, 1, QtCore.Qt.AlignRight) #the last element will be left at the right corner #I want the trash to be always the last element iconName = ["new", "open", "trash"] iconHelp = [ "creates a new map file", "opens a map file. Same as double clicking.", "deletes a map file." ] self.menuIcons = [] for i in range(len(iconName)): self.menuIcons.append(base_tile.QTile(self)) self.menuIcons[-1].initTile(self.menuTileset.tileset, 0, 0, self.menuTileset.boxsize, [0, 0, i + 1, 0, 0], self.scale) self.menuIcons[-1].setObjectName(iconName[i]) self.menuIcons[-1].setToolTip(iconName[i] + "\nWhen clicked, " + iconHelp[i]) self.menuIcons[-1].clicked.connect(self.clickedOnIcon) if (i < len(iconName) - 1): iconHBoxL.addWidget(self.menuIcons[-1]) else: iconHBoxR.addWidget(self.menuIcons[-1]) self.parent = parent self.LvlLWidget = QtWidgets.QListWidget(self) self.VBox = QtWidgets.QVBoxLayout(self) self.VBox.setAlignment(QtCore.Qt.AlignTop) self.VBox.addLayout(iconGrid) self.VBox.addWidget(self.LvlLWidget) self.levelList = [] self.mapForOpen = '' self.LvlLWidget.itemDoubleClicked.connect(self.openMapItem) #self.LvlLWidget.itemClicked.connect(self.doubleClickedForOpen) self.show()
def __init__(self, parent=None, **kwargs): #super().__init__(parent, **kwargs) QtWidgets.QWidget.__init__(self, parent, **kwargs) self.menuTileset = tile_set.TileSet(getdata.path('map_explorer_icons.png')) self.scale = 0.5 iconGrid = QtWidgets.QGridLayout() iconHBoxL = QtWidgets.QHBoxLayout() iconHBoxL.setAlignment(QtCore.Qt.AlignLeft) iconGrid.addLayout(iconHBoxL, 0,0, QtCore.Qt.AlignLeft) iconHBoxR = QtWidgets.QHBoxLayout() iconHBoxR.setAlignment(QtCore.Qt.AlignRight) iconGrid.addLayout(iconHBoxR, 0,1, QtCore.Qt.AlignRight) #the last element will be left at the right corner #I want the trash to be always the last element iconName = ["new","open","trash"] iconHelp = ["creates a new map file", "opens a map file. Same as double clicking.", "deletes a map file."] self.menuIcons = [] for i in range(len(iconName)): self.menuIcons.append(base_tile.QTile(self)) self.menuIcons[-1].initTile(self.menuTileset.tileset, 0, 0, self.menuTileset.boxsize, [0, 0, i+1, 0, 0], self.scale) self.menuIcons[-1].setObjectName(iconName[i]) self.menuIcons[-1].setToolTip(iconName[i] + "\nWhen clicked, " + iconHelp[i]) self.menuIcons[-1].clicked.connect(self.clickedOnIcon) if(i<len(iconName)-1): iconHBoxL.addWidget(self.menuIcons[-1]) else: iconHBoxR.addWidget(self.menuIcons[-1]) self.parent = parent self.LvlLWidget = QtWidgets.QListWidget(self) self.VBox = QtWidgets.QVBoxLayout(self) self.VBox.setAlignment(QtCore.Qt.AlignTop) self.VBox.addLayout(iconGrid) self.VBox.addWidget(self.LvlLWidget) self.levelList = [] self.mapForOpen = '' self.LvlLWidget.itemDoubleClicked.connect(self.openMapItem) #self.LvlLWidget.itemClicked.connect(self.doubleClickedForOpen) self.show()
def __newProject(self, returnedNFD): current_projectectPath = os.path.join( str(returnedNFD["baseFolder"]), str(returnedNFD["name"])) current_project.settings["basefolder"] = str(returnedNFD["baseFolder"]) current_project.settings["gamefolder"] = current_projectectPath current_project.settings["gamename"] = str(returnedNFD["name"]) os.mkdir(current_projectectPath) tar = tarfile.open(getdata.path("basegame.tar.gz")) tar.extractall(current_projectectPath) tar.close() initfile = game_init.openInitFile(current_project.settings["gamefolder"]) levellist = initfile["LevelsList"] startlevel = initfile['World']['initLevel'] levelfile = levellist[startlevel] self.openFileByName(os.path.join(current_project.settings["gamefolder"],fifl.LEVELS,levelfile))
def load_example(): exampleProject = {"name": "example", "baseFolder": temp.mkdtemp()} current_projectectPath = os.path.join(str(exampleProject["baseFolder"]), str(exampleProject["name"])) current_project.settings["basefolder"] = str(exampleProject["baseFolder"]) current_project.settings["gamefolder"] = current_projectectPath current_project.settings["gamename"] = str(exampleProject["name"]) os.mkdir(current_projectectPath) tar = tarfile.open(getdata.path("example.tar.gz")) tar.extractall(current_projectectPath) tar.close() initfile = game_init.openInitFile(current_project.settings["gamefolder"]) levellist = initfile["LevelsList"] startlevel = initfile['World']['initLevel'] levelfile = levellist[startlevel] return levelfile
def load_example(): exampleProject = {'name': 'example', 'baseFolder': temp.mkdtemp()} current_projectectPath = os.path.join( str(exampleProject['baseFolder']), str(exampleProject['name'])) current_project.settings['basefolder'] = str(exampleProject['baseFolder']) current_project.settings['gamefolder'] = current_projectectPath current_project.settings['gamename'] = str(exampleProject['name']) os.mkdir(current_projectectPath) tar = tarfile.open(getdata.path('example.tar.gz')) tar.extractall(current_projectectPath) tar.close() initfile = game_init.openInitFile(current_project.settings['gamefolder']) levellist = initfile['LevelsList'] startlevel = initfile['World']['initLevel'] levelfile = levellist[startlevel] return levelfile
def __init__(self, parent=None, **kwargs): #super().__init__(parent, **kwargs) QtWidgets.QWidget.__init__(self, parent, **kwargs) self.parent = parent self.scale = 2 self.toolTileset = tile_set.TileSet(getdata.path('tools.png')) self.FBox = FlowLayout(self) TOOLSTARTINGTILE = 6 ToolsName = [ "pen", "dropper", "bucket", "line", "rectangle", "charaplacer", "pan" ] ToolsHelp = [ "click to change tile to selected tile", "click to get tile type and set to selected tile", "click to fill area with selected tile", "click once to set starting point and again to set ending point", "click once to set first corner and again to set opposing corner", "places a chara on a selected spot", "click and hold to pan the map" ] self.MaxTools = len(ToolsName) self.ToolTile = [] self.lastLeftClickTool = 0 self.lastLeftClickTool = 1 for i in range(self.MaxTools): self.ToolTile.append(base_tile.QTile(self)) self.ToolTile[-1].initTile(self.toolTileset.tileset, 0, 0, self.toolTileset.boxsize, [0, 0, TOOLSTARTINGTILE + i, 0, 0], self.scale) self.ToolTile[-1].setObjectName(ToolsName[i]) self.ToolTile[-1].setToolTip(ToolsName[i] + "\nWhen selected, " + ToolsHelp[i]) self.ToolTile[-1].clicked.connect(self.toolLeftClicked) self.ToolTile[-1].rightClicked.connect(self.toolRightClicked) self.FBox.addWidget(self.ToolTile[-1]) self.updateToolTiles() self.show()
def new(self, tlevelName, levelWidth, levelHeight, palettepath=None): if palettepath is None: f = open(getdata.path('default.pal.json'), 'r') levelPalette = json.load(f) f.close() else: f = open(os.path.join(palettepath), 'r') levelPalette = json.load(f) f.close() self.listOfEvents = [] self.listOfCharas = [] self.listOfEventsTypes = dict() self.listOfActions = dict() self.jsonTree = { "Level": { "levelName": tlevelName, LayersName[0]: tMat.mnZeros(levelWidth, levelHeight), LayersName[1]: tMat.mnZeros(levelWidth, levelHeight), LayersName[2]: tMat.mnZeros(levelWidth, levelHeight), LayersName[3]: tMat.mnZeros(levelWidth, levelHeight), LayersName[4]: tMat.mnZeros(levelWidth, levelHeight), "tiles": levelPalette['tiles'], "tileImage": levelPalette['tileImage'], "tilesAnimated": levelPalette['tilesAnimated'], "eventsType": self.listOfEventsTypes, "eventsActions": self.listOfActions, "charas": self.listOfCharas } } self.LayersMapTiles = np.array((self.jsonTree['Level'][LayersName[0]], self.jsonTree['Level'][LayersName[1]], self.jsonTree['Level'][LayersName[2]], self.jsonTree['Level'][LayersName[3]], self.jsonTree['Level'][LayersName[4]])) self.palette = self.jsonTree['Level']['tiles'] self.tileImage = self.jsonTree['Level']['tileImage'] self.tilesAnimated = self.jsonTree['Level']['tilesAnimated'] self.levelName = self.jsonTree['Level']['levelName']
def new(self, tlevelName, levelWidth, levelHeight, palettepath=None): if palettepath is None: f = open(getdata.path('default.pal.json'), 'r') levelPalette = json.load(f) f.close() else: f = open(os.path.join(palettepath), 'r') levelPalette = json.load(f) f.close() self.listOfEvents = [] self.listOfCharas = [] self.listOfEventsTypes = dict() self.listOfActions = dict() self.jsonTree = {"Level": { "levelName": tlevelName, LayersName[0]: tMat.mnZeros(levelWidth, levelHeight), LayersName[1]: tMat.mnZeros(levelWidth, levelHeight), LayersName[2]: tMat.mnZeros(levelWidth, levelHeight), LayersName[3]: tMat.mnZeros(levelWidth, levelHeight), LayersName[4]: tMat.mnZeros(levelWidth, levelHeight), "tiles": levelPalette['tiles'], "tileImage": levelPalette['tileImage'], "tilesAnimated": levelPalette['tilesAnimated'], "eventsType": self.listOfEventsTypes, "eventsActions": self.listOfActions, "charas": self.listOfCharas } } self.LayersMapTiles = np.array((self.jsonTree['Level'][LayersName[0]], self.jsonTree['Level'][LayersName[1]], self.jsonTree['Level'][LayersName[2]], self.jsonTree['Level'][LayersName[3]], self.jsonTree['Level'][LayersName[4]])) self.palette = self.jsonTree['Level']['tiles'] self.tileImage = self.jsonTree['Level']['tileImage'] self.tilesAnimated = self.jsonTree['Level']['tilesAnimated'] self.levelName = self.jsonTree['Level']['levelName']
def __init__(self, parent=None, **kwargs): #super().__init__(parent, **kwargs) QtWidgets.QWidget.__init__(self, parent, **kwargs) self.parent = parent self.scale = 2 self.toolTileset = tile_set.TileSet(getdata.path('tools.png')) self.FBox = FlowLayout(self) TOOLSTARTINGTILE = 6 ToolsName = ["pen", "dropper", "bucket", "line", "rectangle", "charaplacer","pan"] ToolsHelp = ["click to change tile to selected tile", "click to get tile type and set to selected tile", "click to fill area with selected tile", "click once to set starting point and again to set ending point", "click once to set first corner and again to set opposing corner", "places a chara on a selected spot", "click and hold to pan the map"] self.MaxTools = len(ToolsName) self.ToolTile = [] self.lastLeftClickTool = 0 self.lastLeftClickTool = 1 for i in range(self.MaxTools): self.ToolTile.append(base_tile.QTile(self)) self.ToolTile[-1].initTile(self.toolTileset.tileset, 0, 0, self.toolTileset.boxsize, [ 0, 0, TOOLSTARTINGTILE + i, 0, 0], self.scale) self.ToolTile[-1].setObjectName(ToolsName[i]) self.ToolTile[-1].setToolTip(ToolsName[i] + "\nWhen selected, " + ToolsHelp[i]) self.ToolTile[-1].clicked.connect(self.toolLeftClicked) self.ToolTile[-1].rightClicked.connect(self.toolRightClicked) self.FBox.addWidget(self.ToolTile[-1]) self.updateToolTiles() self.show()
def __init__(self, psSettings, parent=None, nothis=False, **kwargs): #super().__init__(parent, **kwargs) QtWidgets.QDialog.__init__(self, parent, **kwargs) self.psSettings = psSettings self.nothis = nothis self.mainVBox = QtWidgets.QVBoxLayout(self) self.mainVBox.setAlignment(QtCore.Qt.AlignTop) self.scrollArea = QtWidgets.QScrollArea() self.scrollArea.setWidgetResizable(True) self.mainVBox.addWidget(self.scrollArea) self.insideScrollArea = QtWidgets.QWidget(self.scrollArea) self.scrollArea.setWidget(self.insideScrollArea) self.VBox = QtWidgets.QVBoxLayout(self.insideScrollArea) self.VBox.setAlignment(QtCore.Qt.AlignTop) self.insideScrollArea.setLayout(self.VBox) filepath = getdata.path('actionsList.json') f = open(filepath, "r") e = json.load(f) f.close() self.parent = parent self.actionButton = [] for action in e["actionOrder"]: self.actionButton.append(ActionButton(action=action, parent=self)) self.VBox.addWidget(self.actionButton[-1]) self.actionButton[-1].clicked.connect(self.getAction) self.setGeometry(300, 40, 350, 650) self.setLayout(self.mainVBox) self.setWindowTitle('Select Action to add...') self.show()
def __init__(self,mappalette=None, parent=None, ssettings={}, palettefiles=None, **kwargs): QtWidgets.QDialog.__init__(self, parent, **kwargs) #this will create a undo stack self.undostack = QtWidgets.QUndoStack(self) #this block creates the outer scroll area self.mainVBox = QtWidgets.QVBoxLayout(self) self.mainVBox.setAlignment(QtCore.Qt.AlignTop) scrollArea = QtWidgets.QScrollArea() scrollArea.setWidgetResizable(True) self.mainVBox.addWidget(scrollArea) insideScrollArea = QtWidgets.QWidget(scrollArea) scrollArea.setWidget(insideScrollArea) VBox = QtWidgets.QVBoxLayout(insideScrollArea) VBox.setAlignment(QtCore.Qt.AlignTop) insideScrollArea.setLayout(VBox) #this will create the basic palette editor widget self.myPalWidget = PaletteCfgWidget(parent=self) self.PalscrollArea = QtWidgets.QScrollArea(self) self.PalscrollArea.setWidget(self.myPalWidget) #adding a toolbar self.toolbar = QtWidgets.QToolBar(self) self.toolbar.addAction("new\npalette",self.myPalWidget.new) self.toolbar.addAction("open\npalette",self.openPalette) self.toolbar.addAction("save\npalette",self.savePalette) self.toolbar.addAction("save\npalette as..",self.savePaletteAs) self.toolbar.addAction("open\nimage",self.openImage) if(current_project.settings['gamefolder'] == ''): self.toolbar.addAction("open\ngame project",self.openProject) #this will add id and anim control undoaction = self.undostack.createUndoAction(self, self.tr("&Undo")) redoaction = self.undostack.createRedoAction(self, self.tr("&Redo")) self.toolbar.addAction(undoaction) self.toolbar.addAction(redoaction) maxpixmap = QtGui.QPixmap(getdata.path('icon_max.png')) maxp1pixmap = QtGui.QPixmap(getdata.path('icon_max_p1.png')) zeropixmap = QtGui.QPixmap(getdata.path('icon_zero.png')) maxicon = QtGui.QIcon(maxpixmap) maxp1icon = QtGui.QIcon(maxp1pixmap) zeroicon = QtGui.QIcon(zeropixmap) labelIdCurrent = QtWidgets.QLabel("Tile Nº") self.tileSpinbox = QtWidgets.QSpinBox(self) self.tileSpinbox.setToolTip("Tile 0 means not selected.") self.tileSpinbox.setMinimum(0) self.tileSpinbox.setMaximum(299) self.tileSpinbox.setSingleStep(1) self.tileSpinbox.valueChanged.connect(self.myPalWidget.changeTileIdCurrent) tileMaxP1 = QtWidgets.QPushButton() tileMaxP1.setIcon(maxp1icon) tileMaxP1.setIconSize(maxp1pixmap.rect().size()) tileMaxP1.clicked.connect(self.maxTileSpinboxP1) tileMaxP1.show() tileMax = QtWidgets.QPushButton() tileMax.setIcon(maxicon) tileMax.setIconSize(maxpixmap.rect().size()) tileMax.clicked.connect(self.maxTileSpinbox) tileMax.show() tileZero = QtWidgets.QPushButton() tileZero.setIcon(zeroicon) tileZero.setIconSize(zeropixmap.rect().size()) tileZero.clicked.connect(self.zeroTileSpinbox) tileZero.show() labelAnimCurrent = QtWidgets.QLabel("Tile Animated") self.animSpinbox = QtWidgets.QSpinBox(self) self.animSpinbox.setToolTip("0 means not animated.") self.animSpinbox.setMinimum(0) self.animSpinbox.setMaximum(4) self.animSpinbox.setSingleStep(1) self.animSpinbox.valueChanged.connect(self.myPalWidget.changeAnimIdCurrent) animMax = QtWidgets.QPushButton() animMax.setIcon(maxicon) animMax.setIconSize(maxpixmap.rect().size()) animMax.clicked.connect(self.maxAnimSpinbox) animMax.show() animZero = QtWidgets.QPushButton() animZero.setIcon(zeroicon) animZero.setIconSize(zeropixmap.rect().size()) animZero.clicked.connect(self.zeroAnimSpinbox) animZero.show() SpinHBox=QtWidgets.QHBoxLayout() SpinHBox.setAlignment(QtCore.Qt.AlignLeft) SpinHBox.addWidget(labelIdCurrent) SpinHBox.addWidget(self.tileSpinbox) SpinHBox.addWidget(tileMaxP1) SpinHBox.addWidget(tileMax) SpinHBox.addWidget(tileZero) SpinHBox.addWidget(labelAnimCurrent) SpinHBox.addWidget(self.animSpinbox) SpinHBox.addWidget(animMax) SpinHBox.addWidget(animZero) VBox.addWidget(self.toolbar) VBox.addLayout(SpinHBox) VBox.addWidget(self.PalscrollArea) if(mappalette!=None): self.openMapPalette(mappalette) elif(palettefiles!=None): if os.path.isfile(os.path.join(palettefiles[0])): # if path is absolute self.myPalWidget.LoadPal(os.path.join(palettefiles[0])) elif os.path.isfile(os.path.join(os.getcwd(),palettefiles[0])): # if path is relative self.myPalWidget.LoadPal(os.path.join(os.getcwd(),palettefiles[0]))
def __init__(self, action='noEffect', parent=None): icon = QtGui.QIcon(getdata.path('actions/'+action+'.png')) QtWidgets.QPushButton.__init__(self,icon, action, parent) self.setMaximumWidth(330) self.setMinimumWidth(80) self.setMinimumHeight(24)
# -*- coding: utf-8 -*- from PIL import Image from PIL.ImageQt import ImageQt from fgmk import tMat, getdata, current_project from fgmk.util import img_util emptyTile = img_util.open(getdata.path('emptyTile.png')) class TileSet: """ A TileSet has the property tileset which contains the image_file broken in boxsized (32px) square images. You can specify how to treat the image_file by passing a tilePalette along """ def __init__(self, image_file, tilePalette=None): self.fakefolder = False if(current_project.settings['gamefolder'] == ''): self.fakefolder = True if tilePalette is None: self.initWithoutPalette(image_file) else: self.initWithPalette(image_file, tilePalette) def initWithoutPalette(self, image_file): self.tileset = {} self.boxsize = 32 self.imageFile = img_util.open(image_file) if self.imageFile.size[0] % self.boxsize == 0 and self.imageFile.size[1] % self.boxsize == 0: currentx = 0
def Icon(): return QtGui.QPixmap(getdata.path('icon.png'))
# -*- coding: utf-8 -*- from PIL import Image from PIL.ImageQt import ImageQt from fgmk import tMat, getdata, current_project from fgmk.util import img_util emptyTile = img_util.open(getdata.path('emptyTile.png')) class TileSet: """ A TileSet has the property tileset which contains the image_file broken in boxsized (32px) square images. You can specify how to treat the image_file by passing a tilePalette along """ def __init__(self, image_file, tilePalette=None): self.fakefolder = False if(current_project.settings['gamefolder'] == ''): self.fakefolder = True if tilePalette is None: self.initWithoutPalette(image_file) else: self.initWithPalette(image_file, tilePalette) def initWithoutPalette(self, image_file): self.tileset = {} self.boxsize = 32 self.imageFile = img_util.open(image_file) if self.imageFile.size[0] % self.boxsize == 0 and self.imageFile.size[1] % self.boxsize == 0: currentx = 0