Commit graph

853 commits

Author SHA1 Message Date
GriffinR
441db4274e
Merge branch 'master' into label-copy 2022-06-30 00:41:10 -04:00
garak
5f3653e7b0 remove unused city map code 2022-06-29 22:15:21 -04:00
garak
13603901e2 fix config update crash, add real swap & rename old swap to replace 2022-06-29 22:15:21 -04:00
garak
04ef5c5b7c expose config dialog to users after setup (File>Update Config) 2022-06-29 22:15:21 -04:00
garak
813845e0da address feedback, fix oversights 2022-06-29 22:15:21 -04:00
garak
c76f6a8049 code cleanup: finish rme update core 2022-06-29 22:15:21 -04:00
garak
aeb56e579c support ruby in rme 2022-06-29 22:15:21 -04:00
garak
80909734c2 fix build for Qt5 2022-06-29 22:15:21 -04:00
garak
f7a0e02f95 resize region map tilemaps 2022-06-29 22:15:21 -04:00
garak
cff77ad58e update swap section feature for rme 2022-06-29 22:15:21 -04:00
garak
4334e5b2e9 save / load from the config 2022-06-29 22:15:21 -04:00
garak
e82ff92b2b add/remove map section entry in region map editor 2022-06-29 22:15:21 -04:00
garak
fa01768962 add history for region map layout size and mapsec entry edits 2022-06-29 22:15:21 -04:00
garak
2b152ce64e create edit history for region map tilemap and layout 2022-06-29 22:15:21 -04:00
garak
43ebeb1662 region maps: save layouts, save tilemaps 2022-06-29 22:15:21 -04:00
garak
1334369906 begin overhaul of region map editor
- use a configurator to give users more options
- support firered (tilemaps, layout layers)
- add support for 4bpp and 8bpp tilemaps
- use new region map entries json format
- temporarily disabled city tilemap editor code
2022-06-29 22:15:21 -04:00
GriffinR
c1e3415417 Fix memory leak 2022-06-29 19:13:42 -04:00
GriffinR
73eabc92ca Prevent duplicate metatile pastes in the tileset editor 2022-06-29 19:13:42 -04:00
GriffinR
304b00b0f3 Add copy/paste to tileset editor 2022-06-29 19:13:42 -04:00
GriffinR
553da9a115 Fix missing music when importing from Advance Map 2022-06-28 13:22:34 -04:00
GriffinR
096a66067d Automatically disable encounters if JSON is missing 2022-06-28 13:20:02 -04:00
GriffinR
b20df82358 Assume objects with no type field are not clones 2022-06-24 23:47:43 -04:00
GriffinR
fc11e3d60b Add newline after appending to metatiles.inc 2022-04-22 16:18:01 -04:00
GriffinR
d1883720c9 Add metatile label copy button 2022-02-10 09:53:04 -05:00
GriffinR
af0abaa38d Add getIndexOffset, change expected event fields to QSet 2022-02-09 18:31:55 -06:00
GriffinR
b91914310e Allow warping by double-clicking clone objects 2022-02-09 18:31:55 -06:00
GriffinR
b01581dc4d Add clone objects 2022-02-09 18:31:55 -06:00
GriffinR
31f400e2c9 Add event group constants 2022-02-09 18:31:55 -06:00
GriffinR
9963e4c8aa Move map bounds checking to map.cpp 2022-02-08 17:10:07 -06:00
GriffinR
7d51c11a94 Fix tile rect leaving map grid on paint, cursor rects not updating state on collision tab 2022-02-08 17:10:07 -06:00
GriffinR
d531c9407c Separate byte reads for metatile tiles 2022-02-08 16:26:19 -06:00
GriffinR
f92950c46d Move tile value masks to tile.cpp 2022-02-08 16:26:19 -06:00
GriffinR
cf973710c8 Preserve unused metatile attributes 2022-02-08 16:26:19 -06:00
garak
cca762ba94 do nothing with extra encounter groups
(ie. remove unnecessary error checking code that broke sometimes for no apparent reason)
2022-02-08 16:43:10 -05:00
GriffinR
ddc0f01460 Stop repeated parsing of src/data/object_events 2022-01-29 12:26:39 -06:00
GriffinR
366fb5c8a8 Stop repeated parsing of event_objects.h and songs.h 2022-01-29 12:26:39 -06:00
GriffinR
b79ba466e0 Fix paint edit history 2022-01-14 14:01:10 -06:00
GriffinR
2f6de2a285 Fix selected collision space not updating during paint 2022-01-14 14:01:10 -06:00
GriffinR
611e787122 Fix cursor tile rect not updating for selections 2022-01-08 08:26:05 -06:00
GriffinR
1abdb301c1 Fix 'getBlock' functions use for tiles, add getTilePixels to API 2022-01-05 11:07:27 -06:00
GriffinR
7d5b92c349 Add missing signal blocker 2022-01-05 10:53:53 -06:00
GriffinR
b0dcadfd11 Fix checkboxes not receiving signals from script 2022-01-01 16:39:32 -06:00
GriffinR
7705806852 Write map header set functions in API 2022-01-01 16:39:32 -06:00
GriffinR
690e19e05a Add header API prototypes 2022-01-01 16:39:32 -06:00
GriffinR
fd88184b47 Add opacity to scripting overlay 2022-01-01 16:39:32 -06:00
GriffinR
98f4bae728 Only log completely absent script functions as an error 2021-12-31 15:19:23 -06:00
GriffinR
de0a5b526b Don't change frame for inanimate objects 2021-12-27 16:56:31 -06:00
Marcus Huderle
a143d2892e Allow getting the map view tab index even if a different main tab is currently opened 2021-12-26 12:17:47 -06:00
GriffinR
05fb6c03b7 Fix timing of onMapShifted 2021-12-26 11:23:45 -06:00
GriffinR
6be4f2c946 Fix timing of onTabChanged callbacks 2021-12-26 11:23:45 -06:00
GriffinR
704b5894d1 Fix timing of onMapResized 2021-12-26 11:23:45 -06:00
GriffinR
94b2c98308 Fix fallback dimensions in getColoredTileImage 2021-12-26 11:23:45 -06:00
GriffinR
5f79f15554 Add onBlockHoverChanged and onBlockHoverCleared 2021-12-26 11:23:45 -06:00
GriffinR
0944f9888c Remove addTilesImage, add overloaded addTileImage, add transparency to addMetatileImage 2021-12-26 11:23:45 -06:00
GriffinR
f4ba4091ad Change API game version to string 2021-12-26 11:23:45 -06:00
GriffinR
574151aebb Clean up API changes 2021-12-26 11:23:45 -06:00
GriffinR
36dc1c6649 Move map cursor UI and grid to foreground 2021-12-26 11:23:45 -06:00
GriffinR
39cd1d335b Add map view tab to API 2021-12-26 11:23:45 -06:00
GriffinR
b39906c03f Add onMapShifted to API 2021-12-26 11:23:45 -06:00
GriffinR
8ed891d501 Add option to bypass the API image cache 2021-12-26 11:23:45 -06:00
GriffinR
fee9ffcd44 Add main tab to API 2021-12-26 11:23:45 -06:00
GriffinR
8f62268d00 Trigger onBlockChanged for blocks changed by undo/redo 2021-12-26 11:23:45 -06:00
GriffinR
d00cba3382 Call onMapResized for script changes to map size 2021-12-26 11:23:45 -06:00
GriffinR
a6395eefbb Add overlay x/y, split singular/plural overlay functions 2021-12-26 11:23:45 -06:00
GriffinR
206a1d12b3 Add onMapResized to scripting API callbacks 2021-12-26 11:23:45 -06:00
GriffinR
b16c971f00 Add some config settings to scripting API 2021-12-26 11:23:45 -06:00
GriffinR
05d04a5e2e Ignore undefined properties in script error messages 2021-12-26 11:23:45 -06:00
GriffinR
6518ba36b3 Fix crash switching between projects 2021-12-26 11:23:45 -06:00
GriffinR
03949d45a4 Add paletteId to createImage 2021-12-26 11:23:45 -06:00
GriffinR
eca84beae0 Add basic image cache to scripting API 2021-12-26 11:23:45 -06:00
GriffinR
1adc489bc0 Add transparency to addTileImage 2021-12-26 11:23:45 -06:00
GriffinR
ac988968b3 Add warn and error to script API 2021-12-26 11:23:45 -06:00
GriffinR
6c1e5b516d Add getMaxTilesetMetatiles to API 2021-12-26 11:23:45 -06:00
GriffinR
b5bdac8d36 Add tile/metatile to image functions to API, more tile->tileId/metatileId 2021-12-26 11:23:45 -06:00
GriffinR
6a5e4fe247 Split createImage from addImage 2021-12-26 11:23:45 -06:00
GriffinR
83a7ccac8b Add getNumTilesetMetatiles, getNumTilesInMetatile, and isPrimary/SecondaryTileset to API 2021-12-26 11:23:45 -06:00
GriffinR
6bae415fc1 Add onTilesetUpdated to scripting callbacks 2021-12-26 11:23:45 -06:00
GriffinR
5a5d16bdc6 Add overlay visibility toggle 2021-12-26 11:23:45 -06:00
GriffinR
af4c99537f Add layering to scripting overlay 2021-12-26 11:23:45 -06:00
GriffinR
630febff54 Expand addImage to allow image subsets, transformations, and transparency 2021-12-26 11:23:45 -06:00
GriffinR
ebd7af8846 Add get/setMetatileTiles array functions to API 2021-12-26 11:23:45 -06:00
GriffinR
6613318900 Disambiguate tile field names to tileId or metatileId 2021-12-26 11:23:45 -06:00
GriffinR
ce12a1e017 Add setMetatile functions to API (layerType, encounterType, terrainType, Behavior, Tile) 2021-12-26 11:23:45 -06:00
GriffinR
26f0042ff4 Add getMetatile functions to API (layerType, encounterType, terrainType, Behavior, Tile) 2021-12-26 11:23:45 -06:00
GriffinR
702497c4d8 Add function prototypes for metatile editing API functions 2021-12-26 11:23:45 -06:00
GriffinR
67af7e52da Add get/setMetatileLabel to API 2021-12-26 11:23:45 -06:00
GriffinR
9cf0575914 Log error when addImage API function fails 2021-12-26 11:23:45 -06:00
GriffinR
beb1f6ef27 Log more script errors 2021-12-26 11:23:45 -06:00
GriffinR
c6cec5f848 Preserve invalid metatile selections 2021-12-26 10:18:25 -06:00
GriffinR
a6fb7eaeca Process mod in defines 2021-12-26 10:13:06 -06:00
GriffinR
7368f443f0 Add config options for showing border/grid 2021-11-08 13:11:16 -05:00
garak
f64b03d684
Merge pull request #306 from ultima-soul/import_amap_map
Add Import Map from Advance Map 1.92 feature.
2021-11-08 13:10:44 -05:00
garak
795336f42c fix potential segfault on moveEvent 2021-11-05 15:39:19 -04:00
GriffinR
3197cda157 Fix macOS crash parsing wild encounters 2021-11-01 15:40:03 -04:00
GriffinR
c372d7a01b Sync map group label comment format 2021-10-17 10:58:05 -04:00
garak
7bf07e72c2 better unsaved changes code, only block whitespace in combos 2021-09-08 17:39:38 -04:00
garak
0b63c438dd mark unsaved changes to map for heaeder and event edits
closes #305
closes #337
closes #347
2021-09-08 17:39:38 -04:00
garak
ef78b7957c validate combos to disallow junk characters
closes #362
2021-09-08 17:39:38 -04:00
garak
735a095ced fix pasted event id issue 2021-09-07 13:16:54 -05:00
garak
056b2164a8 draw event frame for pasted events 2021-09-07 13:16:54 -05:00
garak
6c3ee3c46d order wild encounter json reading 2021-08-12 20:24:46 -04:00
ultima-soul
2d87a6222a Merge branch 'master' of github.com:huderlem/porymap into import_amap_map 2021-07-23 23:35:56 -07:00
ultima-soul
cdcf535894 Address review comments. 2021-07-23 16:20:41 -07:00
garak
2ee5676925 fix metatile selector filter draw 2021-07-23 12:11:35 -04:00
garak
fc0c404836 remove some commented old code 2021-07-22 12:23:21 -04:00
garak
df724a4682 find unused tiles 2021-07-22 12:23:21 -04:00
garak
601e671fc8 add options to count metatiles to tileset editor
- count the total number of usages across all maps of specific metatiles
- display the count and/or display unused metatiles
- this does not account for metatiles used in code (most of these are labeled)
2021-07-22 12:23:21 -04:00
garak
353a0b017f silence bad macOS warning 2021-07-07 18:11:35 -05:00
garak
4c4e6dbcbf fix rebase error 2021-07-07 18:11:35 -05:00
Marcus Huderle
28eebbed0a Fix Move tool rendering artifacts by enabling full viewport update during the Move tool 2021-07-07 18:11:35 -05:00
Marcus Huderle
b35e1d9af9 Use more sensible zoom levels, which eliminates zoom rendering artifacts 2021-07-07 18:11:35 -05:00
BigBahss
a7f12f1993 Fix DPI scaling of pixmaps 2021-07-07 18:11:35 -05:00
Marcus Huderle
6f394ce39c Code fixes for Qt 6 2021-07-07 18:11:35 -05:00
garak
39648eed41 add copy paste to edit menu 2021-05-03 15:48:21 -04:00
garak
47887aca4d add edit command for event pastes 2021-05-03 15:48:21 -04:00
garak
296d697df0 add copy paste to some aspects of porymap
- can copy currently selected metatiles
  - can copy currently selected events
  - can copy an image of the current map
  - what is copied depends on the currently focused widget
  - copied objects can be pasted into other instances of porymap
  - copied images live on in the clipboard, cannot be pasted into porymap

TODO:
  - shortcut in Edit menu
  - other things can be copied?
2021-05-03 15:48:21 -04:00
BigBahss
e310732169 Make eventScriptLabelModel and eventScriptLabelCompleter into values rather than pointers 2021-04-16 09:04:38 -04:00
BigBahss
f72d4bda50 Fix duplicate event script label completions 2021-04-16 08:22:05 -04:00
BigBahss
61ffcc3259 Merge branch 'master' into script-editing 2021-04-16 07:28:09 -04:00
BigBahss
a9c7691a2e Rename DraggablePixmapItem::move() overload as moveTo to avoid confusion 2021-03-24 19:11:49 -04:00
BigBahss
5f292ea3cc Place new events in the center of the map 2021-03-24 19:11:49 -04:00
Tyler Dennis
1c0001504d
Merge pull request #359 from hjk321:mus-new-map
Song Option in New Map Popup
2021-03-14 11:56:25 -04:00
GriffinR
29493f94da Add details to script api error messages 2021-03-09 19:54:10 -06:00
BigBahss
a68a9baf2e Fix Tileset copy construction/assignment 2021-03-07 19:17:17 -05:00
hjk321
0cebe438b6 Poryscript now generates with newline 2021-03-07 10:16:54 -05:00
hjk321
09cfde8280 Song Option in New Map Popup 2021-03-06 22:19:38 -05:00
BigBahss
f166652ccc Revert 80c5f74368 and validate map group 2021-02-21 08:47:03 -06:00
BigBahss
a4fc2bcb30 Fix crash when creating new map 2021-02-21 08:44:41 -06:00
BigBahss
b0e3b862e1 Remove unused addNewMapToGroup() overload 2021-02-21 08:44:41 -06:00
BigBahss
0d3e2d90e6 Fix memory leaks in addNewMapToGroup() 2021-02-21 08:44:41 -06:00
GriffinR
02af128913 Add setting to disable/enable map text file creation 2021-02-19 07:29:26 -06:00
BigBahss
d5270df3b6 Remove unnecessary QObject inheritance 2021-02-18 16:27:32 -06:00
huderlem
6ebf1b54a8
Merge pull request #352 from BigBahss/convert-to-namespace
Convert stateless classes into namespaces
2021-02-18 16:26:32 -06:00
BigBahss
3bcdb1d728 Fix memory leak when creating new tileset 2021-02-18 15:02:25 -05:00
BigBahss
c3718e28be Convert MetatileParser into a namespace 2021-02-18 03:38:34 -05:00
BigBahss
bc2cc7d089 Convert PaletteUtil into a namespace 2021-02-18 03:25:26 -05:00
Marcus Huderle
c351f069ff Merge remote-tracking branch 'origin/master' into metatile-leaks 2021-02-17 16:56:15 -06:00
BigBahss
fdd12cde25 Refactor ParseUtil to stop using pointers and output-parameters 2021-02-17 16:34:46 -06:00
BigBahss
fa8b387120 Fix some more memory leaks related to parseAsm() 2021-02-17 16:34:46 -06:00
BigBahss
f65b6a047e Fix a memory leak in parseAsm() 2021-02-17 16:34:46 -06:00
BigBahss
d9340d3b73 Add parentWidget() to Project to avoid name-shadowing the parent member 2021-02-17 16:34:46 -06:00
BigBahss
9a9143500f Convert remaing pointers in Project to values 2021-02-17 16:34:46 -06:00
BigBahss
820b514f26 Change many pointer members in Project to values 2021-02-17 16:34:46 -06:00
BigBahss
cc7a5f5819 Fix memory leaks in Tileset 2021-02-16 21:45:54 -05:00
BigBahss
c1303d98c3 Scriptapi: fix segfault in shift(), add missing flag to the caller of shift() 2021-02-16 16:51:00 -06:00
BigBahss
107ef528e2 Fix map resizing (broke from Blockdata refactoring) 2021-02-16 16:51:00 -06:00
BigBahss
a3326a764b Simplify some usages of Blockdata 2021-02-16 16:51:00 -06:00
BigBahss
f09e28f06c Convert usages of Blockdata pointers 2021-02-16 16:51:00 -06:00
BigBahss
42b56edc9d Begin refactoring Blockdata to simply inherit QVector<Block> 2021-02-16 16:51:00 -06:00
BigBahss
6a825d0b39 Use implicit copy constructor/assignment for Metatile 2021-02-16 13:22:41 -05:00
BigBahss
8187b2d4bb Plug leaks in Metatile 2021-02-16 12:14:27 -05:00
BigBahss
8e2388cf62 Correct UB in Event constructors; use member initializer lists 2021-02-16 10:49:14 -05:00
BigBahss
fe5d4982f7 Use QPointer when we need to set a nullptr on destruction 2021-02-16 08:26:09 -05:00
BigBahss
c103142c65 Silence deprecated-copy warning 2021-02-14 12:39:14 -05:00
BigBahss
7937c3fe98 Upgrade signal/slot connections in all other files 2021-02-14 11:09:39 -06:00
BigBahss
51dccf7773 Upgrade signal/slot connections in Editor 2021-02-14 11:09:39 -06:00
BigBahss
ef449f6f8d Upgrade signal/slot connections in MainWindow 2021-02-14 11:09:39 -06:00
Marcus Huderle
e9c4d5b73f Fix getBlock() memory leak 2021-02-13 15:16:52 -06:00
Marcus Huderle
3c2aa5d2e9 Fix out-of-bounds array access in bucket fill 2021-02-12 17:23:45 -06:00
BigBahss
36a6212af6 Store recent map in ProjectConfig instead of PorymapConfig 2021-02-03 16:13:36 -06:00
BigBahss
3d394bc4bb Add option to open config folder 2021-02-03 16:01:54 -06:00
BigBahss
2c065ae5b6 Dont disable option to open log when project open fails 2021-02-03 16:01:54 -06:00
BigBahss
6335151c39 Add option to open log file 2021-02-03 16:01:54 -06:00
BigBahss
3ccf433d1e Add completion suggestions for global event scripts 2021-01-29 22:05:40 -05:00
BigBahss
d2386fac9b Add functions to parse all global event scripts labels in the project 2021-01-29 22:05:08 -05:00
GriffinR
e3edb503ed Exclude non-item constants in items.h 2021-01-25 11:15:16 -05:00
Marcus Huderle
9439dc76d2 Only include relevant frames in the timelapse animation 2021-01-20 19:27:50 -06:00
Marcus Huderle
c354142f1b Add ability to export map timelapse GIFs 2021-01-20 19:27:50 -06:00
garak
3bf4aaf964 fix palette editor crash 2021-01-16 10:34:09 -06:00
BigBahss
a924938b9b Fix text editor commands for file-paths containing spaces 2020-12-30 18:13:12 -06:00
GriffinR
b819f82943 Add auto-generated file warning to map_groups.h write 2020-12-30 18:12:51 -06:00
BigBahss
5ca30c70dd Fix merge of #302 2020-12-14 18:53:46 -06:00
Marcus Huderle
9c0876e4c0 Fix disabling of UI when failing to open project 2020-12-14 18:06:38 -06:00
Marcus Huderle
d63bebee69 Merge remote-tracking branch 'origin/master' into fix827
# Conflicts:
#	src/mainwindow.cpp
2020-12-14 17:57:30 -06:00
huderlem
e16ec480e6
Merge pull request #325 from BigBahss/script-editing
Open map scripts directly to the script of the selected event
2020-12-13 17:22:47 -06:00
Marcus Huderle
583ee23a15 Fix regex in readNamedIndexCArray() that disallowed 0 in the name 2020-12-13 17:05:28 -06:00
BigBahss
3a04f59cb0 Fix QProcess::splitCommand() dependency on Qt 5.15.
Fix shortcut for Open Map Scripts (Due to merge).
2020-12-13 04:00:00 -05:00
BigBahss
1d29a53237 Merge remote-tracking branch 'origin/master' into script-editing 2020-12-13 00:30:22 -05:00
BigBahss
520bd7e6c8 Fix external processes on Windows 2020-12-13 00:06:50 -05:00
GriffinR
6b6ad558b6 Remove unnecessary assignment 2020-12-11 16:24:18 -06:00
GriffinR
8261ad5bea Strip leading digits from new map names 2020-12-11 16:24:18 -06:00
BigBahss
c0eb0503e2 Update CHANGELOG and docs.
Merge remote-tracking branch 'origin/master' into shortcuts-editor
2020-12-05 20:33:45 -05:00
BigBahss
7a4de9f3d9 Add support for finding and opening any event script 2020-12-04 09:29:38 -05:00
BigBahss
afc0c0c501 Add button next to script combo-box to open file to that script.
Revert the behavior of Open Map Scripts button.
2020-12-02 03:39:08 -05:00
BigBahss
789fe7d00c Merge remote-tracking branch 'origin/master' into script-editing 2020-12-01 16:43:53 -05:00
BigBahss
62f73bee04 Populate scripts comboboxes with scripts found in map.json 2020-12-01 16:32:08 -05:00
BigBahss
e97b50a249 Refine regexes for script parsing 2020-12-01 12:02:02 -05:00
BigBahss
e704793350 Disable actionOpen_Project_in_Text_Editor when no command is set 2020-12-01 10:13:56 -05:00
BigBahss
dbafb99fd4 Add action to open the project root in a text editor 2020-12-01 07:12:32 -05:00
BigBahss
a4528fb0d9 Add support for opening .pory scripts to the selected event script 2020-11-26 06:09:58 -05:00
Ashley Coleman
7ea3dd6468 Fix formatting variables 2020-11-22 16:34:30 -06:00
Ashley Coleman
8567d161b5 Add defensive checks on index and iterators 2020-11-22 16:34:30 -06:00
Ashley Coleman
49737d16cc Implement delete for wild encounter table 2020-11-22 16:34:30 -06:00
BigBahss
b9aaef24c6 MapRuler: Fix artifacting, fix centering for other thickness values 2020-11-22 08:37:16 -06:00
BigBahss
6ca4802948 Use QGraphicsObject's signalling to enable/disable MapRuler 2020-11-22 08:37:16 -06:00
BigBahss
bc0127430b Fix MapRuler dimensions tooltip and refactor 2020-11-22 08:37:16 -06:00
BigBahss
4aaae1a264 Add support for opening .inc scripts to the selected event script 2020-11-22 01:04:46 -05:00
BigBahss
3478846b60 Add Project::getMapScriptsFilePath() and rename text editor config members 2020-11-21 17:33:16 -05:00
BigBahss
662fb2a367 Move themes to PreferenceEditor 2020-11-16 09:35:55 -05:00
BigBahss
ea9cfa47e5 Add basic prefences window with text editor command field 2020-11-16 07:39:42 -05:00