Program Description
Programming Challenges
The main programming challenge I faced during the development of the Go! Kart Level Editor was creating an application that was useful for the the development of Go! Kart while maintaining a simple and appealing interface so that the average person could create levels with ease.The result of this challenge is the two-window layout shown in the screenshots below. The main window displays a preview of the map (which is updated in real-time) along with the tileset (the map's graphics) for the map.
The second window, The Property Editor, makes it incredibly easy to change the properties of the current level. The ueser can easi;y resize the map, change the background, change the music, etc. with a few clicks of the mouse.
Features
For more detailed information about the Go! Kart Level Editor please visit ShatteredRealmProductions.com
- WYSIWYG Editor
- Easy-to-ues point & click interface
- Resize the current map at any time
- Save preset values for tileset information
- Hide the Property Editor to system tray to save desktop space
- User Manual included (click here to view)
Screenshots
The Go! Kart Editor's Main Screen |
The Property Editor |
You can hide the property editor to the system tray |
You can save and load maps from the system tray to save desktop space |
Code Sample
The CreateBrowser function creates a file browser for the property editor (i.e. when you click a "Browse..." button). The function accepts the variable which will be set after the browser is returned, the path for the browser to start in, a file type filter, and the default extension to add to the file name if no extension is specified.
int CPropertyEditor::CreateBrowser(char **variable, const char *path, char *filter, char *defaultExtension)
{
CFileDialog Browser(TRUE, defaultExtension, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
filter, NULL);
// If the path is not an empty path then change the inital directory
if(strcmp(path, ""))
{
Browser.m_ofn.lpstrInitialDir = path;
}
if (Browser.DoModal() != IDOK)
{
return IDCANCEL;
}
CString fileName = Browser.GetFileName();
string *temp = new string(fileName.GetBuffer(fileName.GetLength()));
*variable = (char *)temp->c_str();
fileName.ReleaseBuffer();
return IDOK;
}
Downloads
Go! Kart.zip - This is a zipped version of all the necessary files for Go! Kart. This is for users who do not want to run an installer. This includes the Go! Kart Level Editor.
