Commit Graph

  • cf485ef327 Refactoring UISprite to play well with Python API and match existing code styles. Default constructor will have to go, which complicates the Python class slightly for mcrfpy.Sprite John McCardle 2023-09-11 20:26:00 -0400
  • 3a1432212f UICollection.remove John McCardle 2023-09-09 10:14:11 -0400
  • 38b6a3cade UICollection.append, tests are good for Caption and Frame objects created by Python to be drawn by the UITestScene John McCardle 2023-09-09 08:49:02 -0400
  • 1bbb0aa5b8 Caption object seems to be instantiable with a Font object now. Can't test actual rendering without a way to add objects to a collection. John McCardle 2023-09-07 23:10:21 -0400
  • bec2b3294d Added PyFont/mcrfpy.Font object John McCardle 2023-09-07 22:25:19 -0400
  • 9486104377 Converted py_instance to a macro (don't ask me why it doesn't work as a function) and first pass at UICaption functionality. UISprite C++ tests. John McCardle 2023-09-03 20:40:52 -0400
  • 5267287b05 checkpoint: found that py_instance causes segfaults when called separately, but the same exact code inside of the _getitem method works fine. I can't explain that. I guess I'll turn it into a macro so the actions are inline and I can move on to finishing the other UI classes. John McCardle 2023-09-03 12:46:23 -0400
  • b8af8bc870 UIDrawable to Python object (untested, but compiling) John McCardle 2023-09-02 19:52:11 -0400
  • 0ef0a5d506 Switched UIFrame and Scene to store their UIDrawables in shared_ptr to vector, instead of directly to vector. Every object that can be exposed to Python has to be safely shareable so it doesn't become a segfault, and that includes the UIDrawable collections AND the UIDrawable members. So we get the terrifying type for collections of child elements: 'std::shared_ptr<std::vector<std::shared_ptr<UIDrawable>>>'. May I be forgiven for my sins John McCardle 2023-09-02 14:00:48 -0400
  • a41d3d4a54 Iterator class fleshed out. Several implementations left to do, but it compiles, and I think every function definition for the PyUICollectionType and PyUICollectionIterType is now in place John McCardle 2023-09-02 09:22:34 -0400
  • 6d4bc2989c UICollection work: fixed compilation, still quite a bit of stubs John McCardle 2023-09-02 04:40:05 -0400
  • d5a7cbca85 In progress: UICollection. mcrfpydef::PyUICollection_sqmethods needs to be made static or moved somewhere it won't be multiply defined John McCardle 2023-09-01 23:31:31 -0400
  • 5d8510747c Color and Frame classes pretty well integrated from the Python perspective now John McCardle 2023-09-01 18:28:59 -0400
  • 06052c81c9 PyUIFrame looking not half bad. There seems to be a glitch with the color values. John McCardle 2023-09-01 12:14:24 -0400
  • 6fe7b842ef Successful use of a copy-modify-paste template of Python type (UIFrame -> PyUIFrameObject) John McCardle 2023-08-31 22:32:58 -0400
  • 50d926fe37 Aug 30/31 updates. Tinkering with shared_ptr. Working towards exposing UI objects to Python UI. Color object updated for shared_ptr structure that will be repeated for the rest of the UI objects. Still a lot of open questions, but committing here to get back on track after a few hours wasted trying to solve this problem too generally via templates. John McCardle 2023-08-31 13:51:56 -0400
  • 795701c986 Cleanup: less curly braces in destructor John McCardle 2023-08-30 14:50:27 -0400
  • 884a49a63a Switching UIFrame to sf::Color* for outline and fill members. Haven't tested with Python integration, but I wrote the methods to take a crack at it John McCardle 2023-08-30 14:38:49 -0400
  • c4d5a497d4 Color container type for Python working. I still need to implement UIFrame using it. John McCardle 2023-08-28 05:44:26 -0400
  • ba97aebf3e Showing FPS on title bar (GameEngine) John McCardle 2023-08-27 19:58:15 -0400
  • ac0ec4bb71 In-work: Python segfaults when adding new objects to module engjam_ui_overhaul John McCardle 2023-08-25 21:57:42 -0400
  • a455c44b34 Debugging & build with debug symbols scripts John McCardle 2023-08-25 21:56:27 -0400
  • 96e78e6150 Prepwork: marked the spot for adding more types to the Python module John McCardle 2023-08-21 20:27:47 -0400
  • 0dd86056a8 Cleanup: remove python embedding test file John McCardle 2023-08-12 20:06:16 -0400
  • 26cb410b8e Cleanup: Remove UITestScene. I believe test functionality will be better expressed as Python scripts John McCardle 2023-08-12 19:48:29 -0400
  • d09fc87499 Cleanup: remove Item class/component. This may be added back later, but it's not in the EngJam 2023 plan and is being removed as a noisy, underdeveloped concept. John McCardle 2023-08-12 15:37:46 -0400
  • b022dfa6e8 Cleanup: remove VectorShape class (it'll return, someday...) John McCardle 2023-08-12 15:07:48 -0400
  • 232ce34d54 Cleanup: remove references to DrawSprite API method (debug method to draw on SFML window for a single frame) John McCardle 2023-08-12 10:57:53 -0400
  • c1c17bab69 Basic, buggy movement purely from Python API John McCardle 2023-07-17 22:08:06 -0400
  • e85861cbb2 I've worked keybinding functionality into Python, but there are some workarounds and notes (See the Jankfile) John McCardle 2023-07-16 23:30:00 -0400
  • d6446e18ea Tinkering with input John McCardle 2023-07-13 23:01:09 -0400
  • d3826804a0 (Minor) It's CO*M*P4300 John McCardle 2023-07-08 20:00:30 -0400
  • b4c49c4619 Giving myself credit for LGJ2023 tech demo features John McCardle 2023-07-08 19:47:06 -0400
  • 76ac236be3 Linux Game Jam 2023 mini-contribution John McCardle 2023-07-08 19:42:47 -0400
  • 97793fb26b Clean up console output for 7DRL submission John McCardle 2023-03-12 00:32:27 -0500
  • b3134f0890 Basic hallways John McCardle 2023-03-11 23:34:34 -0500
  • dfcc39dd43 toggleable camera following that allows for pan action John McCardle 2023-03-11 21:54:54 -0500
  • 29ac89b489 bugfix: use float instead of int for modMenu/listMenus API calls, as this was corrupting the coordinates of sprites on uimenus John McCardle 2023-03-11 17:15:06 -0500
  • b4daac6e0c Camera following functionality, first pass John McCardle 2023-03-11 16:11:10 -0500
  • 3fd60d76ea Making empty space transparent to fix FOV, more generous FOV algorithm John McCardle 2023-03-10 21:42:50 -0500
  • 99fa92f8ba Field of view, discovered tiles, opaque fog of war rendering John McCardle 2023-03-10 19:39:44 -0500
  • 9441f357df 'entity only' grid update, saves lots of throughput on larger grids John McCardle 2023-03-10 12:50:49 -0500
  • 34feb226e4 collision John McCardle 2023-03-10 11:35:46 -0500
  • 486a1cd17c Keyboard control John McCardle 2023-03-10 09:21:56 -0500
  • 8d9148b88d Music tester & animation work John McCardle 2023-03-09 20:40:47 -0500
  • f1798189f0 Animation testing w/ Miniworld sprites John McCardle 2023-03-09 14:29:37 -0500
  • 5b168737ce License update and bug list. Final Github release during 7DRL 2023. John McCardle 2023-03-09 08:50:11 -0500
  • 6875cb5fe1 Spawning & drawing entities from Python API John McCardle 2023-03-08 23:30:00 -0500
  • 87483cc8ad Sound APIs for Python John McCardle 2023-03-08 12:34:03 -0500
  • 620def19f1 Fixed animations, jank-noted some issues & workarounds with the Animation python API John McCardle 2023-03-08 09:20:57 -0500
  • c9b97b9b35 TestScene script for animation testing John McCardle 2023-03-07 20:11:11 -0500
  • 8e59152a8f Windows fixes John McCardle 2023-03-07 17:09:54 -0800
  • fedfcd46a3 Test animation now moves the entire UIMenu object (and children) John McCardle 2023-03-07 20:03:09 -0500
  • c551c721ce Animation work: removing pointers from the entire class in favor of std::function/lambdas to write values. This actually works with SFML classes, because I can wrap the setter class John McCardle 2023-03-07 07:39:41 -0500
  • d74635ee4e Check in... animations are roughly half built John McCardle 2023-03-06 20:54:23 -0500
  • 47e823d5b9 Animation class (not tested) John McCardle 2023-03-05 22:44:39 -0500
  • 6dbf8a5119 Pan/Zoom grids, Python basic generation template provided John McCardle 2023-03-05 19:58:20 -0500
  • a53ae29467 Python object models John McCardle 2023-03-04 23:18:21 -0500
  • 257aa3c3d2 Fully python-driven scene. Lots of interaction needs testing but the broad strokes are there for mouse pan/zoom on multiple grids and any number of UIs John McCardle 2023-03-04 23:04:16 -0500
  • a4b6c2c428 Pan, zoom, and mouse-to-gridsquare translation that I can be proud of. Cleanup required, though John McCardle 2023-03-04 19:04:05 -0500
  • b0ef1d2303 Tweak point conversion to prevent off-grid (negative) points from registering as on the grid John McCardle 2023-03-04 00:18:19 -0500
  • b3f946ecb2 API endpoints: Create and retrieve grid/gridpoint objects John McCardle 2023-03-03 23:57:42 -0500
  • 6a4150ec05 Screen to Grid is working pretty reliably, even if switching to float coordinates did make zoom at high values a bit wobbly. John McCardle 2023-03-03 22:26:38 -0500
  • e295bfb742 python callbacks, working on grid John McCardle 2023-03-03 22:16:47 -0500
  • 2ec97dfb1c Full modification of UI items seems to be working John McCardle 2023-03-02 22:07:23 -0500
  • f89896176c Modify UI objects by calling mcrfpy.modMenu(m) John McCardle 2023-03-02 20:41:43 -0500
  • de753713d5 UI from Python now working fairly comprehensively John McCardle 2023-03-02 18:57:09 -0500
  • c8124e84dc Updated UIMenu to a map on the C++ side, Python gets the title property so changes can be properly, jankily, looked up John McCardle 2023-03-02 06:35:13 -0500
  • a1e9129923 Send Menu color to Python John McCardle 2023-03-02 05:53:17 -0500
  • f23dfbe4ba Another checkpoint. Compiling/building/running - Python API tests from in-engine REPL are not passing, though John McCardle 2023-03-01 21:37:42 -0500
  • 1e9fd77a13 JANK MODE: Messy / broken commit - in progress John McCardle 2023-02-28 23:19:43 -0500
  • 2c1946c29b Grid - widget for holding multi-layer map data John McCardle 2023-02-27 07:02:34 -0500
  • 6d05f8bc63 Return NONE properly from test API point John McCardle 2023-02-27 07:01:46 -0500
  • a4d0efe334 To-do list progress updated John McCardle 2023-02-26 10:53:58 -0500
  • 6a47bc1e28 Windows/msvc lockstep changes John McCardle 2023-02-26 07:51:03 -0800
  • 6a2c3c6c36 McRogueFace Python API (McRFPy_API) demo class John McCardle 2023-02-25 22:14:00 -0500
  • a6f59085eb Update MSVC project for Windows build John McCardle 2023-02-25 03:17:05 -0800
  • d2499a67f8 Porting in old gamejam code. Removed SOME cruft, more likely remains. Sound + sprite test. John McCardle 2023-02-24 23:46:34 -0500
  • 1784489dfb Windows / MSVC commit. Bring your own Python PCBuild directory, I don't want to upload it to git. John McCardle 2023-02-23 19:38:41 -0800
  • d0d2eae762 Initial Commit / Linux Combined Proof of Concept example John McCardle 2023-02-23 19:37:13 -0500