1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-06-24 13:50:04 +02:00
Commit graph

502 commits

Author SHA1 Message Date
Ell
48b96a10a4 Added InputHandler mouse and touch position querying that preserves the game's viewport and fixed the graphics device's viewport being ignored for mouse and touch queries
Closes #1
2022-02-06 22:07:33 +01:00
Ell
ab76ea5ba8 organized InputHandler properties and fields 2022-02-06 21:12:57 +01:00
Ell
f7cf9460d6 Renamed GenericFont.OneEmSpace to Emsp (and marked OneEmSpace as obsolete) 2022-01-24 11:16:23 +01:00
Ell
3edd593886 Added TextureRegion.OffsetCopy 2022-01-22 16:51:42 +01:00
Ell
2699d0e1c2 Fixed StaticSpriteBatch handling rotated sprites incorrectly 2022-01-02 22:58:01 +01:00
Ell
29bbd61f8b reformat and cleanup 2021-12-28 14:56:11 +01:00
Ell
b4f79f0753 Added SoundEffectInstanceHandler.Stop 2021-12-28 14:45:20 +01:00
Ell
7e49eaef10 Allow for checkboxes and radio buttons to be disabled 2021-12-24 12:10:04 +01:00
Ell
5d9cccc9fd Added ColorExtensions.Multiply 2021-12-22 14:24:37 +01:00
Ell
c060d78010 put StringBuilder overloads to use 2021-12-22 13:03:40 +01:00
Ell
f5adf50823 Added StringBuilder overloads to GenericFont 2021-12-22 13:00:41 +01:00
Ell
17ed82fc3c Generify GenericFont's string drawing 2021-12-22 12:46:17 +01:00
Ell
b5bee0facb improved SpriteAnimationGroup performance 2021-12-21 21:17:45 +01:00
Ell
c31e196071 Made AnimationFrame a generic data holder 2021-12-21 20:52:05 +01:00
Ell
14526d24d3 cleaned up the sprite animation changes 2021-12-21 20:17:02 +01:00
Ell
c76357a9e3 Allow storing multiple texture regions per SpriteAnimation frame 2021-12-21 20:12:15 +01:00
Ell
c0ce5a07ad Implemented IEquatable on a lot of classes that were missing it 2021-12-21 11:39:29 +01:00
Ell
103d7c7503 Added a SquishingGroup element to MLEM.Ui 2021-12-11 17:26:55 +01:00
Ell
18517c75bd removed unnecessary Math.Abs from Color.Invert 2021-12-11 01:02:20 +01:00
Ell
f24ad5025c use TextureRegion for AutoTiling 2021-12-03 21:10:19 +01:00
Ell
1ed6b019bb separate background and overlay regions in DrawExtendedAutoTile 2021-12-03 20:59:56 +01:00
Ell
f34d4e3b68 return added items for all methods that use StaticSpriteBatch 2021-12-03 19:57:26 +01:00
Ell
6541c6d797 fixed extended auto tiling only drawing parts of the texture 2021-12-03 19:10:10 +01:00
Ell
052c9e738c Removed unused rotation parameter in AddAutoTile 2021-12-03 18:42:18 +01:00
Ell
36abc3d1fe allow specifying a depth offset for extended auto tiles 2021-12-03 18:34:33 +01:00
Ell
831da36bcc allow drawing the background of extended auto tiles in a separate color 2021-12-03 18:04:03 +01:00
Ell
636522bc3e resolved some documentation warnings 2021-11-30 11:46:06 +01:00
Ell
376a068864 Moved AutoTiling to Graphics namespace and removed deprecated Misc versions of SoundEffectInfo and SoundEffectInstanceHandler 2021-11-29 21:24:08 +01:00
Ell
252d06888f consistently use the default font's line height 2021-11-28 11:30:57 +01:00
Ell
a11a63c067 some GenericFont code style improvements 2021-11-28 00:28:17 +01:00
Ell
f445aba45c improved Token memory allocations 2021-11-27 23:35:37 +01:00
Ell
293602269b prevent unnecessary allocations in GenericFont 2021-11-27 23:04:06 +01:00
Ell
53b93a34f8 Made TextFormatter string size based on the currently active font and added a formatting code to allow for inline font changes 2021-11-27 22:45:37 +01:00
Ell
ad1d6a864e Added DrawExtendedAutoTile to the AutoTiling class 2021-11-27 15:03:30 +01:00
Ell
5cb77be410 Allow using StaticSpriteBatch for AutoTiling 2021-11-27 14:27:56 +01:00
Ell
f37179486c added some pathfinding tests, as well as some minor code improvements 2021-11-23 21:42:18 +01:00
Ell
444b5c6afb copy base documentation for a lot of docfx unresolvable sources 2021-11-22 19:25:18 +01:00
Ell
84a6e5a29a Fixed some end-of-line inconsistencies when using the Right text alignment 2021-11-22 18:52:52 +01:00
Ell
c9c9e566b1 Throw an exception when text formatter macros resolve recursively too many times 2021-11-22 17:50:17 +01:00
Ell
5c8ef3d254 Added RotationVector extension methods for Matrix and Quaternion 2021-11-22 14:48:38 +01:00
Ell
b30ec9408b Added Padding.Empty 2021-11-18 10:58:50 +01:00
Ell
a59f1eb8af Added missing easing functions Quart and Quint to Easings 2021-11-16 15:08:35 +01:00
Ell
6702efd7fa added depth sorting to StaticSpriteBatch 2021-11-13 16:42:50 +01:00
Ell
dd295aca1b clarify StaticSpriteBatch depth documentation 2021-11-12 20:31:47 +01:00
Ell
d8517a7492 StaticSpriteBatch refactor that speeds up removal.
Items will now be drawn in an arbitrary order.
2021-11-12 20:21:08 +01:00
Ell
eb323bea01 only allow clearing a static sprite batch when batching 2021-11-12 18:35:10 +01:00
Ell
4a8a55fde3 allow removing items from a static sprite batch 2021-11-12 18:12:57 +01:00
Ell
b22d2d4d22 slight GenericDataHolder (and extensions) improvements and reversions 2021-11-07 00:46:35 +01:00
Ell
39138446ea added some more utility to JsonTypeSafeWrapper and revert SetData changes 2021-11-07 00:23:48 +01:00
Ell
ae559adf26 remove "see href" from xml docs since some IDEs can't display that 2021-11-06 23:42:23 +01:00
Ell
8e83cc06a6 Added JsonTypeSafeWrapper and JsonTypeSafeGenericDataHolder 2021-11-06 23:38:21 +01:00
Ell
ca89d03ca4 Some more ui style improvements 2021-10-30 15:33:38 +02:00
Ell
1c48a69371 dispose static sprite batch buffers properly 2021-10-30 13:48:52 +02:00
Ell
2be39a740e improve handling of arbitrary Epsilon values 2021-10-28 23:26:42 +02:00
Ell
9a480d391b some MlemPlatform doc clarifications and improvements 2021-10-23 22:05:32 +02:00
Ell
e5593f2132 copy vertex data more efficiently 2021-10-20 15:34:21 +02:00
Ell
04dc2bf2d0 don't recreate the VertexPositionColorTexture array every time 2021-10-19 23:12:56 +02:00
Ell
b271518956 Exposed Camera's RoundPosition 2021-10-19 22:06:49 +02:00
Ell
08bd443c36 don't draw empty vertex buffers 2021-10-19 17:20:00 +02:00
Ell
6f04b30591 use vertex and index buffers for StaticSpriteBatch 2021-10-18 01:22:22 +02:00
Ell
758281c845 sloppy rename 2021-10-17 23:21:11 +02:00
Ell
d89d8571c7 added StaticSpriteBatch 2021-10-17 23:20:05 +02:00
Ell
9aef994c51 Added GenericFont SplitStringSeparate which differentiates between existing newline characters and splits due to maximum width 2021-10-12 03:23:35 +02:00
Ell
11dd939009 Added a multiline editing mode to TextField 2021-10-12 02:16:09 +02:00
Ell
fd5b83eaa0 added a strikethrough formatting code 2021-10-10 20:30:40 +02:00
Ell
9743c05e1a Cache TokenizedString inner offsets for non-Left text alignments 2021-10-04 23:57:58 +02:00
Ell
a140e85300 fixed Docs casing in readme path 2021-09-24 04:50:42 +02:00
Ell
a53939837f added package readmes 2021-09-24 04:47:39 +02:00
Ell
6537ff00c1 Improved KeysExtensions memory usage 2021-08-27 20:36:04 +02:00
Ell
ff510c54c5 Fixed tiled NinePatches missing pixels with some scales 2021-08-06 22:40:32 +02:00
Ell
db7ee04d30 allow enumerating SoundEffectInstanceHandler entries 2021-08-02 20:34:13 +02:00
Ell
516265bf5b Fixed GenericFont's SplitString using incorrect width for special characters and improved documentation 2021-07-28 17:22:47 +02:00
Ell
1067055bb5 code cleanup 2021-07-19 23:49:16 +02:00
Ell
abac738123 Removed LINQ Any and All usage in various methods to improve memory usage 2021-07-18 22:18:46 +02:00
Ell
374d936be2 specify the MLEM version that Invert will be moved 2021-07-13 22:35:48 +02:00
Ell
a52b46dce9 Added ColorExtensions.Invert and made ColorHelper.Invert obsolete 2021-07-13 22:34:32 +02:00
Ell
6aa9ec03d4 Added customizable overloads for Keybind, Combination and GenericInput ToString methods 2021-07-13 15:41:42 +02:00
Ell
ee2b0b82fe allow for RotateBy, RotateCw and RotateCcw to accept invalid directions again 2021-07-10 06:16:33 +02:00
Ell
8d92131630 improved Direction2 code style 2021-07-05 19:49:18 +02:00
Ell
f352e6b437 added Direction2Helper.RotateBy 2021-07-05 19:46:39 +02:00
Ell
d1b229b589 moved sound classes into /Sound 2021-07-05 16:36:48 +02:00
Ell
f71eb6eddb improved NinePatch memory performance 2021-07-03 01:44:39 +02:00
Ell
00d9ee99d8 Merge branch 'release' into main
# Conflicts:
#	CHANGELOG.md
2021-07-01 05:06:39 +02:00
Ell
19893855dc added the changelog to the website 2021-07-01 05:00:59 +02:00
Ell
58bd076e2a Set default values for InputHandler held and pressed keys to avoid an exception if buttons are held in the very first frame 2021-06-30 19:40:43 +02:00
Ell
fe9b3830f8 (finally) added a changelog 2021-06-28 15:38:30 +02:00
Ell
705758090b fixed image tokens drawing themselves too many times for split strings 2021-06-25 16:40:09 +02:00
Ell
14940d39c5 added text alignment options to tokenized strings and paragraphs 2021-06-25 15:23:30 +02:00
Ell
dca013e551 fixed GetModifier being.. recursive 2021-06-21 01:03:24 +02:00
Ell
91730b1f27 improved GenericInput ToString 2021-06-21 00:57:56 +02:00
Ell
2f16bbdc44 the None input type should always be considered up 2021-06-21 00:51:21 +02:00
Ell
ce920b5219 added an element helper method to create a keybind button 2021-06-21 00:49:09 +02:00
Ell
a5a73af01c improved Keybind constructors 2021-06-20 23:48:02 +02:00
Ell
2118837062 added generic input equality checking 2021-06-20 23:17:39 +02:00
Ell
60c9236cbd added InputsDown and InputsPressed to InputHandler 2021-06-20 23:05:02 +02:00
Ell
664a2a9f11 added a way to access a keybind's combinations 2021-06-20 22:33:24 +02:00
Ell
d1fbcb9559 added a sprite batch extension to generate a gradient 2021-06-03 21:33:09 +02:00
Ell
d146e80cf6 updated some outdated dependencies 2021-05-29 18:06:20 +02:00
Ell
3da97fcc83 fixed UnderlineCode being a font code, making it end in the wrong places 2021-05-24 17:12:02 +02:00
Ell
ef45c324f9 fixed a crash with truncated string tokenization 2021-05-20 19:59:37 +02:00
Ell
d385581c25 added formatted string truncation to tokenized strings and ui paragraphs 2021-05-18 16:47:38 +02:00
Ell
e916ddb7a8 allow for underline and shadow codes to be mixed with font codes 2021-05-18 16:19:40 +02:00
Ell
f71f998508 clarify OpenLinkOrFile usage documentation 2021-04-23 14:34:59 +02:00
Ell
b48ed479a0 streamlined TextInputWrapper into MlemPlatform and included link opening 2021-04-23 00:17:46 +02:00
Ell
1123b815b3 updated some package declarations to clean up warnings 2021-04-22 19:59:35 +02:00
Ell
338cf383f4 removed RequiresOnScreenKeyboard 2021-04-22 19:40:14 +02:00
Ell
cf9bcc7ae4 updated to MonoGame 8 and added support for opening the on-screen keyboard to TextInputWrapper 2021-04-22 19:26:07 +02:00
Ell
f3b3feec9b updated non-netstandard projects to net5.0 2021-04-22 02:21:36 +02:00
Ell
1759f0ef5b improve performance of TextFormatter tokenization 2021-04-22 01:21:44 +02:00
Ell
455ab59f09 improved performance of TokenizedString splitting massively 2021-04-22 01:14:48 +02:00
Ell
8078d41724 simplified GenericFont implementation 2021-04-19 14:02:28 +02:00
Ell
e7ab8fefe8 improved performance of SplitString and re-added Zwsp compatibility 2021-04-14 23:13:19 +02:00
Ell
538fd08d8a improved TokenizedString splitting efficiency 2021-04-14 02:47:41 +02:00
Ell
55477c6341 removed Zwsp functionality, which was incomplete and did not work 2021-04-14 00:49:33 +02:00
Ell
2055c3a6ef convert tests to use graphics 2021-04-02 17:12:27 +02:00
Ell
e7fd026a33 added some UI tests 2021-04-01 19:36:56 +02:00
Ell
35af9eee25 fixed some number parsing not using invariant culture 2021-03-28 06:20:27 +02:00
Ell
602f19a2a8 some minor code style and format improvements 2021-03-24 22:44:39 +01:00
Ell
702bf94f49 added some tests 2021-03-18 17:28:08 +01:00
Ell
e24c871ecd added SoundExtensions 2021-03-17 22:47:23 +01:00
Ell
014b8f90df added repeat-ignoring versions of IsKeyPressed and IsGamepadButtonPressed to InputHandler 2021-03-14 17:09:45 +01:00
Ell
1e485a103c drop .NET Framework support for TextInputWrapper.DesktopGl 2021-03-13 17:09:16 +01:00
Ell
e0263dc943 Removed obsolete ColorExtensions methods 2021-03-13 16:25:08 +01:00
Ell
37609ade76 fixed DrawString in generic font ignoring text scale for alignment 2021-03-12 20:47:57 +01:00
Ell
0411add4d1 added a newline macro to the default text formatter 2021-03-09 17:45:49 +01:00
Ell
b594c271ac expose the viewport of a camera 2021-03-09 02:29:06 +01:00
Ell
0b39928334 minor general cleanup 2021-03-08 15:12:13 +01:00
Ell
053aaaf17c removed the array-based GetRandomEntry method as it made lists have to be typecast 2021-03-04 22:53:39 +01:00
Ell
1c8b738555 added some collection extensions, namely Combinations 2021-03-04 22:52:28 +01:00
Ell
80f2b55687 combine attributes 2021-02-28 16:44:29 +01:00
Ell
5b4757d3bf made Padding and Direction2 DataContracts 2021-02-28 16:42:51 +01:00
Ell
468bee9ca8 Turned Direction2 into a flags enum 2021-02-28 14:37:02 +01:00
Ell
6900da9858 allow nine patches to be drawn tiled rather than stretched 2021-02-19 21:24:08 +01:00
Ell
eb3194a0c1 preserve position and scroll wheel value when the mouse is out of bounds 2021-02-19 02:47:32 +01:00
Ell
73eab1d41e only handle mouse input if the mouse is in the window 2021-02-19 02:31:38 +01:00
Ell
01b6168259 fixed the input handler querying input when the window is inactive 2021-02-18 18:36:29 +01:00
Ell
7619ac0dcf added an extension method for adding tooltip for elements 2021-02-18 04:16:17 +01:00
Ell
a75d04cffc added a utility method for getting the points contained in a rectangle 2021-02-04 12:24:23 +01:00
Ell
f3cf8dcc70 cast regardless of type in GenericDataHolder 2021-02-02 11:01:30 +01:00
Ell
3a0e2354b3 apply 3d after adding the sound 2021-01-30 22:26:44 +01:00
Ell
5d9a5ecf13 ensure the sound effect instance emitter is nonnull 2021-01-27 05:16:41 +01:00
Ell
182f8eff7a made listeners auto-update in SoundEffectInstanceHandler 2021-01-27 00:51:15 +01:00
Ell
c85666502c allow pausing, resuming and applying 3d to the sound effect instance handler and move it to its own file 2021-01-24 19:43:47 +01:00
Ell
05543dfea8 added SoundEffectInstanceHandler 2021-01-24 19:35:09 +01:00
Ell
d4bbe84ba1 allow looping a played 3d sound 2021-01-24 17:25:36 +01:00
Ell
05d80524e6 added a Play3D shorthand to SoundEffectInfo 2021-01-24 15:52:01 +01:00
Ell
3cd8c54e5c only store texture data if it changed 2021-01-20 05:22:30 +01:00
Ell
b6ef243cf4 GenericFont support for zero-width spaces 2020-12-31 17:22:51 +01:00
Ell
267cbc8d9c allow image codes to copy the text's color 2020-12-29 12:41:29 +01:00
Ell
9895be2250 made texture atlases have an underlying texture region as well 2020-12-19 14:34:30 +01:00