Projects In The Works:
- nGfx (NSpire Graphics)
I hope to create a whole new level of abstraction for creating games on the TI-Nspire.
This will be facilitated by designing a simple language that compiles to Lua, hopefully
taking away all of the complexities of getting a good UI in order.
- Lua IDE
I'm working on a simple IDE that will allow you to code in Lua on calc, easily run it,
save / load code, and remap the keypad to allow easy access to some symbols.
I might attempt syntax highlighting in the future, though I am without a CX, so this is
not an immediate priority.
- Bitmap2Img
A script that when completed, will convert uncompressed bitmap images to the
ti.image format.
[Window]:
Title = "MainWindow"
Size = scale(100, 100)
Position = offset(0, 0)
[Rectangle]:
Name = "Example 1"
Size = scale(50, 50)
Position = scale(25, 25)
Color = rgb(64, 128, 192)
[Text]:
Name, Value = "Text", "Omnimaga!"
Position = type(center)
Font = font(15, bold)
Color = rgb(32, 64, 192)
OnEnterKey{}
// A Comment that ignores the rest of the line
/* A multiple line, or variable lenght, comment */
// It should be noted that like in Python, tabs are an important part of the language.
[Window]: // Creates a new Window Object
/*
One thing I think will be critical to games is having several different view modes
such as a title screen, a main menu, a game play area, and an in-game menu
There might even be more windows within that.
You can think of these as different contexts, and will come more into play
later as the language develops.
*/
Title = "MainWindow" // Gives the Window a Name so it can be accessed later.
Size = scale(100, 100) // Make the Window cover the entire screen.
Position = offset(0, 0) // This will be default. Places window at top left corner.
[Rectangle]: // Creates a new Rectangle Object
/*
This Rectangle is parented to the Window, which means that its position
is relative to its parent.
*/
Name = "Example 1"
Size = scale(50, 50) // 50% of the max X and Y values.
Position = scale(25, 25) // Centers the object in the middle of the screen.
Color = rgb(64, 128, 192) // Gives our box a nice blue color.
// Now, let's put the words "Omnimaga!" In the center of this Rectangle
[Text]:
Name, Value = "Text", "Omnimaga!" // Oh, see what I did there ?
Position = type(center) // I plan to add abstractions like this to make it
// easy to center stuff. I want to add vertical,
// horizontal, and a combination, for centering.
Font = font(15, bold) // Gives our text nicely sized.
Color = rgb(32, 64, 192) // A darker shade of blue.
OnEnterKey{
// A scripting language for manipulating objects and stuff
// Will likely create my own language in the future
// For now, will have a simple Lua API
}