Commit Graph

52 Commits

Author SHA1 Message Date
zxq5 c3c4633cf1 made significant upgrades to the rendering API. now need to move all applications to the new API and deprecate the old one. 2025-02-18 03:59:34 +00:00
zxq5 a8b8d61112 made changes to some stuff
Rust / build (push) Has been cancelled
2025-02-18 01:50:21 +00:00
zxq5 ebab50f2c1 idk 2025-02-18 01:39:26 +00:00
FantasyPvP d77ce2bc47 idk 2024-12-10 00:36:45 +00:00
FantasyPvP 8f3a96c282 ran cargo fix 2024-11-23 21:38:11 +00:00
FantasyPvP 39d9b949e9 reorganised some stuff and started coding another game 2024-11-23 21:34:54 +00:00
FantasyPvP 69591e6bb2 made wish.com paper.io lol 2024-11-23 11:03:43 +00:00
FantasyPvP 1588b4fbf3 implemented a custom text editor (but still no fs to use it with 😭) 2024-11-14 22:43:49 +00:00
FantasyPvP 1ba4273972 added submodule for custom python interpreter 2024-03-25 17:36:34 +00:00
FantasyPvP 15a8a6ac5d - added support for a single variable to the calculator
- added support for pre-compiling calculator expressions and substituting in values later
2024-03-23 01:24:52 +00:00
FantasyPvP c4067fabc8 - added a basic pong game
- added a better timer system for event updates
2024-03-22 23:52:45 +00:00
FantasyPvP d5d9e031d5 - added a new API for switching between terminal and application mode
- removed unneeded imports to reduce the dumb amount of warnings from the compiler
- added a bounds check in frame.rs to avoid a panic when a frame tries to render a character out of bounds, instead returning an error
2024-03-22 00:12:15 +00:00
FantasyPvP 5c6ec299ee - fully implemented dialogs
- added a scroll feature to grapher.rs
- fixed the cosine implementation as it was incorrect before.
2024-03-21 21:51:00 +00:00
FantasyPvP 6505d219de - Created Dialog widget
- standard information dialog works
TODO:
  implement more complex dialogs where multiple options can be selected
2024-03-21 00:12:53 +00:00
FantasyPvP e80df5100f started working on dialogs 2024-03-20 18:03:15 +00:00
FantasyPvP b0da71942a asteroids game rewrite 2023-12-04 10:42:17 +00:00
FantasyPvP 8988d98596 .
.
2023-11-30 17:30:28 +00:00
FantasyPvP 7ae2308a83 several fixes and changes 2023-11-29 23:45:40 +00:00
FantasyPvP d89a30d390 <@!837722637291487274> yo i made some progress 2023-11-28 00:17:11 +00:00
FantasyPvP c194109487 holy (crab) that was a lot of work
it works.

the input function is working now, passing it a reference to your root gui widget and a reference to it's own widget and a function to check if it should exit works now

gg
2023-11-28 00:12:59 +00:00
FantasyPvP f48eb133b3 we frikin did it bois
gui library works frrr

implementation:
- containers now store a Widget type.

- every widget has a unique id

- there is a data store that maps the id to the internally stored gui component.

- the compoenents can be fetched from the datastore using their Widget type
- the datastore uses a hashmap so fetching shouldnt have any real performance penalty.

- widgets can be fetched, inserted, updated and rendered from the datastore

- the render method can be called directly from the Widget type without having to know the underlying type that it references
2023-11-27 19:02:32 +00:00
FantasyPvP 417833fc41 fixed stuff
no progress 💀
2023-11-27 00:21:34 +00:00
FantasyPvP b16ce4a6f2 broken cbfa to fix for a while 2023-11-26 13:34:53 +00:00
FantasyPvP b28b53418a edited grapher implementation
- fixed grapher implementation with new gui
- fixed a bug in CgLineEdit where pressing backspace on an empty input would cause a crash
2023-11-24 21:53:41 +00:00
FantasyPvP 24d231585d Update grapher.rs 2023-11-24 00:45:01 +00:00
FantasyPvP 140ac0ab32 updates
updated grapher to use new widtgets system (not working yet but close)

made a basic app using the widgets system

implemented CgTextEdit for CgLineEdit (now fully working, but there may be bugs so i'll address them tomorrow)
2023-11-24 00:40:27 +00:00
FantasyPvP 467a42a5fa continued to work on new UI library
- implemented CgStatusBar widget which is a specific version of the CgIndicatorBar widget with predefined fields

- std::io::Screen is now an enum that makes switching between display modes more intuitive

- created a basic CgLineEdit implementation that allows for a user to type in a character and have it re-render that widget

- other more minor changes like fixes for existing apps to work with new features
2023-11-23 20:29:51 +00:00
FantasyPvP 461c9d9c6a - got text boxes fully working
- this includes text wrapping not cutting words in half (can be disabled using a method on the text box)
- refactored frame.rs, cg_core.rs and cg_widgets.rs to avoid code reuse and duplication
- created a simplified unified interface for rendering frames to the screen using the Frame struct provided by frame.rs instead of Element, FrameGen, etc.
- moved all widgets from cg_core.rs to cg_widgets.rs
- the label widget now works
- also added CgIndicatorBar and CgIndicatorWidget widgets to eventually make a working status bar
- refactored all applications in the system to use the new api to render to the screen
2023-11-23 00:29:04 +00:00
FantasyPvP 0ac21cd0b1 changed some stuff 2023-11-22 21:21:19 +00:00
FantasyPvP 84aaa90e66 new gui module text box implementation
starting to work on the new UI library, got labels and text boxes working as well as containers for widgets.

planning a big refactor
2023-11-22 21:07:00 +00:00
FantasyPvP 1d08240981 gui stuff
gui stuff
2023-11-22 00:36:23 +00:00
FantasyPvP d4b7ee243f e
E
2023-10-31 18:40:30 +00:00
FantasyPvP 3d889c4730 .
.
2023-10-11 23:22:46 +01:00
FantasyPvP 550b61e07e idk
idk
2023-10-07 14:04:05 +01:00
FantasyPvP ffc274808d update snake.rs
rewriting the snake game code
2023-10-05 18:07:21 +01:00
FantasyPvP 0c67dd567c idk
idk, did some rewriting of the snake game logic to add multiple snakes / a hardmode
2023-10-05 00:47:55 +01:00
FantasyPvP 0d3e1af5be .
.
2023-10-04 23:20:36 +01:00
FantasyPvP d5e95433da .
.
2023-10-04 23:20:51 +01:00
FantasyPvP 4a7cf2a634 changed some calculator stuff idk
idk
2023-10-04 00:40:18 +01:00
FantasyPvP f5cc41c132 updated grapher
fixed issue where grapher would fail with functions due to some negative values being undefined
2023-10-03 23:26:47 +01:00
FantasyPvP e92e01c5b8 made a graphing calculator
idk why
2023-10-03 00:43:20 +01:00
FantasyPvP 410278b6e3 idk
idk
2023-10-02 23:26:54 +01:00
FantasyPvP bf9c9be88d made a game
made a snake game and rewrote some rendering stuff again
2023-10-02 00:56:18 +01:00
FantasyPvP 9e7335e05f idk
idk
2023-09-30 12:10:03 +01:00
FantasyPvP ef192302b8 .
.
2023-09-29 19:25:34 +01:00
FantasyPvP b3e31727b0 calc functions and zxq5 logo in fetch
- changed the crystalfetch text
- added functions to the calculator
2023-09-28 00:30:51 +01:00
FantasyPvP 49bc77e44a added the gigachad detector 2023-09-27 22:50:28 +01:00
FantasyPvP 76a2ec2163 changed some stuff 2023-09-27 00:42:04 +01:00
FantasyPvP 0c39711875 worked on rendering code
worked on code for libgui for rendering a user interface
2023-04-28 00:10:20 +01:00
FantasyPvP 78144a4f60 .
.
2023-03-13 00:30:52 +00:00