Search the Community
Showing results for tags 'tile'.
What's new section: Snowman_Sky is game using MapIt engine. MapIt will evolve here for a little bit. Download: [ http://songersoft.com/programming/Snowman_Sky.zip ] Video demonstrating new sprite_sheet class and weather effect. Working on the Class section of the Character Sheet. Which is what makes multiclassing possible. Changing the value of Class will load the stored value for XP. Lvl will be updated to the XP tier. Hit points are then rolled for each level of all learned classes. Hit dice are specific to each class and a Constitution modifier is added to each roll of hit die.
NOTE: TOPIC HAS BEEN MERGED TO HERE: MapIt Quest Special thanks: AdmiralAlkex, Melba23, MrCrearoR, Dragon Warrior 3, SDL MapIt is a tile world editor. MapIt was built around the concept of reversing Dragon Warrior map images. MapIt can take image input and produce a tile and world array. Changing and replacing tile / world data is easy. B/c tile world editor. CTRL+R in image above to signal replace tile action and I use "G" to Get the tile under mouse. A full list of hotkeys can be assigned in the: Help Menu\Hotkeys MapParser is a C++ project that scans images for unique tiles. MapIt can be downloaded without MapParser. MapParser can be toggled off in the Scan_Image dialog. Without MapParser, MapIt will use the Scan_Tiles() function written in AutoIt ; which is 100 * slower Idk. If MapParser.exe will not run for you: Installing Visual C++ Redistributable for Visual Studio 2015 should fix it: https://www.microsoft.com/en-us/download/details.aspx?id=48145 You can start with example world and tiles. Example world was made following these steps: Started with a tile map image of DragonWarrior3 town of: Reeve From MapIt World Menu \ New \ Scan_Image dialog, I set the area to exclude the key legend to the far right of image. After scanning the map image to world and tile array. I removed a few of the map artifacts. More work could be done on this world; removing unwanted tiles, but it is fine for now. I saved my world to disk. This creates folder: Worldname: Containing folder of Tiles and a Worldname.txt. Using The Gimp, I edited some tiles to have a transparent color: Stairs, Trees, Desk Tables, Chest-of-drawers, Chairs, Signs, Doors, Beds. I changed the world layers to 2: World Menu \ Properties. F9 Finds all selected tile on current layer and changes to a new selected tile on new layer. I used F9 to change all Trees on layer: 0 to Trees on layer: 1. Then I used F9 to change all Trees on layer: 0 to Grass on layer: 0 In this video you can see how I used the Tile Menu \ Replace From Disk option to remap tile images to my custom tiles. Conveniently my tiles already have a transparent pixel. See video for how that was done: To use the example world: First unzip the world save file: http://songersoft.com/programming/mapit/worlds/Reeve_Swapped.zip From the World Menu: choose \Load Navigate to the Reeve_Swapped.txt located in the extracted zip. Or you can scan any image. The map images I used are here: http://www.realmofdarkness.net/dq/games/nes/dw3/maps/world For download, videos, and example of created world file data; please visit the MapIt webpage: http://songersoft.com/programming/mapit/mapit_about.phtml
HiHo Forum, I've been playing around with Listview in Tile mode. Populating and switching style works fine, but (at least on the XP machine tested on) the tiles still seem to overlap. Row1 and Row2 look fine, but when you click Row3 you'll see that it overlaps with Row1. Anyone ? Maybe as a bonus question, how do I change to amount of tiles per row (I've not started to look into that)? #include <GUIConstantsEx.au3> #include <GuiListView.au3> #include <GuiImageList.au3> #include <WindowsConstants.au3> #include <SendMessage.au3> $GUI = GUICreate("ListView Example - Tile View", 400, 300) $hListView = _GUICtrlListView_Create($GUI, "", 2, 2, 394, 268) _GUICtrlListView_SetExtendedListViewStyle($hListView, BitOR($LVS_EX_DOUBLEBUFFER, $LVS_EX_FULLROWSELECT)) _GUICtrlListView_InsertColumn($hListView, 0, "Column 1", 100) _GUICtrlListView_InsertColumn($hListView, 1, "Column 2", 100) _GUICtrlListView_InsertColumn($hListView, 2, "Column 3", 100) For $i = 0 To 2 _GUICtrlListView_AddItem($hListView, "Row " & $i + 1 & ": Col 1") _GUICtrlListView_AddSubItem($hListView, $i, "Row " & $i + 1 & ": Col 2", 1) _GUICtrlListView_AddSubItem($hListView, $i, "Row " & $i + 1 & ": Col 3", 2) Next _GUICtrlListView_SetView($hListView, 4) ; [url="http://msdn.microsoft.com/en-us/library/windows/desktop/bb774768(v=vs.85).aspx"]http://msdn.microsoft.com/en-us/library/windows/desktop/bb774768(v=vs.85).aspx[/url] Global $tag_LVTILEVIEWINFO = "UINT cbSize;DWORD dwMask;DWORD dwFlags;STRUCT;LONG Size_cx;LONG Size_cy;ENDSTRUCT;INT cLines;STRUCT;LONG RECT_left;LONG RECT_top;LONG RECT_right;LONG RECT_bottom;ENDSTRUCT;" $t_Struct2 = DllStructCreate($tag_LVTILEVIEWINFO) DllStructSetData($t_Struct2, "cbSize", DllStructGetSize($t_Struct2)) #cs Const LVTVIM_TILESIZE = &H00000001 Const LVTVIM_COLUMNS = &H00000002 Const LVTVIM_LABELMARGIN = &H00000004 #ce DllStructSetData($t_Struct2, "dwMask", BitOR(0x2, 0x4)) #cs public const int LVTVIF_AUTOSIZE = 0; public const int LVTVIF_FIXEDWIDTH = 1; public const int LVTVIF_FIXEDHEIGHT = 2; public const int LVTVIF_FIXEDSIZE = 3; #endregion #ce DllStructSetData($t_Struct2, "dwFlags", 0) DllStructSetData($t_Struct2, "Size_cx", 160) ; Width DllStructSetData($t_Struct2, "Size_cy", 50) ; Height DllStructSetData($t_Struct2, "cLines", 2) ; cLines DllStructSetData($t_Struct2, "RECT_left", 1) ; Margin Left DllStructSetData($t_Struct2, "RECT_top", 10) ; Margin Top DllStructSetData($t_Struct2, "RECT_right", 1) ; Margin Right DllStructSetData($t_Struct2, "RECT_bottom", 10) ; Margin Bottom $p_Struct2 = DllStructGetPtr($t_Struct2) ; [url="http://msdn.microsoft.com/en-us/library/windows/desktop/bb761212(v=vs.85).aspx"]http://msdn.microsoft.com/en-us/library/windows/desktop/bb761212(v=vs.85).aspx[/url] ConsoleWrite(_SendMessage($hListView, $LVM_SETTILEVIEWINFO, 0, $p_Struct2) & @CRLF) For $iItem = 0 To 2 ; [url="http://msdn.microsoft.com/en-us/library/windows/desktop/bb774766(v=vs.85).aspx"]http://msdn.microsoft.com/en-us/library/windows/desktop/bb774766(v=vs.85).aspx[/url] Global $tag_LVTILEINFO = "UINT cbSize;INT iItem;UINT cColumns;PTR puColumns;" ;PTR piColFmt;" $t_Struct = DllStructCreate($tag_LVTILEINFO) DllStructSetData($t_Struct, "cbSize", DllStructGetSize($t_Struct)) ; cbSize DllStructSetData($t_Struct, "iItem", $iItem) ; 0-based DllStructSetData($t_Struct, "cColumns", 2) ; cColumns $t_Struct_Cols = DllStructCreate("int;int") DllStructSetData($t_Struct_Cols, 1, 2) ; show third column first DllStructSetData($t_Struct_Cols, 2, 1) ; show second column last DllStructSetData($t_Struct, "puColumns", DllStructGetPtr($t_Struct_Cols)) $p_Struct = DllStructGetPtr($t_Struct) ; [url="http://msdn.microsoft.com/en-us/library/windows/desktop/bb761210(v=vs.85).aspx"]http://msdn.microsoft.com/en-us/library/windows/desktop/bb761210(v=vs.85).aspx[/url] ConsoleWrite(_SendMessage($hListView, $LVM_SETTILEINFO, 0, $p_Struct) & @CRLF) Next GUISetState() Do Until GUIGetMsg() = $GUI_EVENT_CLOSE GUIDelete() Regards