GameMaker Studio 2 (all)
Icon

Dialog Module

Samuel Venable

You must be logged in to obtain assets

Description

Add me on Discord to get faster support than email: Samuel Venable#5465

Also available for download on itch.io

The macOS dylib file is not code signed; please code sign it before testing and distributing for macOS.

[Made for GameMaker Studio 2]

Online Documentation: http://dialogmodule.weebly.com/

Downloadable PDF (Offline Documentation): https://drive.google.com/file/d/18xXZZlvazihPC62imZO4CkZYH2dfxYwz/

GitHub: https://github.com/time-killer-games/DialogModule/

Download for GameMaker Studio 1.4/GameMaker Studio 2 (Google Drive)

Download Asychronous Dialog Example for GameMaker Studio 2 (Dropbox)

This extension is for Windows, macOS, and Ubuntu.

Override GameMaker Studio 2's default Desktop dialog functions with improved implementations over the original ones, while bringing back obsolete functions from pre-Studio branded versions of GameMaker, and of course introducing some new functions.

File Manager is included as you will need to copy or move files and/or directories in and out of your sandbox directory, (i.e. using the built-in constant "game_save_id", which returns your game's sandbox directory), for them to be accessible to this extension's dialogs.

After showing a dialog you must clear the keyboard and mouse state since GameMaker Studio 2 doesn't do that on its own:

keyboard_clear(keyboard_lastkey);

mouse_clear(mouse_lastbutton);

io_clear();

Functions included:

  • real show_message(string str)

  • real show_message_cancelable(string str)

  • real show_question(string str)

  • real show_question_cancelable(string str)

  • real show_attempt(string str)

  • real show_error(string str, real abort)

  • string get_string(string str, string def)

  • string get_password(string str, string def)

  • real get_integer(string str, real def)

  • real get_passcode(string str, real def)

  • string get_open_filename(string filter, string fname)

  • string get_open_filename_ext(string filter, string fname, string dir, string title)

  • string get_open_filenames(string filter, string fname)

  • string get_open_filenames_ext(string filter, string fname, string dir, string title)

  • string get_save_filename(string filter, string fname)

  • string get_save_filename_ext(string filter, string fname, string dir, string title)

  • string get_directory(string dname)

  • string get_directory_alt(string capt, string root)

  • real get_color(real defcol)

  • real get_color_ext(real defcol, string title)

  • string widget_get_caption()

  • real widget_set_caption(string str)

  • string widget_get_icon()

  • real widget_set_icon(string icon)

  • string widget_get_system() // Returns current widget system

  • real widget_set_system(string sys) // "Zenity" or "KDialog"

  • string widget_get_owner()

  • real widget_set_owner(string hwnd)

  • string widget_get_button_name(real type)

  • real widget_set_button_name(real type, string name)

  • *_async() variants of every dialog function

The DLL's full source code included.

The Linux apps that use this extension need Zenity and KDialog installed.

To install Zenity on Debian-based Linux distributions, enter this command into the terminal:

sudo apt-get install zenity

To install KDialog on Debian-based Linux distributions, enter this command into the terminal:

sudo apt-get install kdialog

Very big thanks to Josh Ventura, for writing the widen() and shorten() scripts, enabling UTF-8 support on Windows.

End User Licence Agreement (EULA).

Age Rating: 4+

Versions

GMS1 - Version 3.0.0. Published February 25, 2019

Please replace all Scripts and Included Files in your existing projects to apply this update!!!

  • [All Platforms] Updated included "File Manager" to version 3.0.0.

GMS2 - Version 10.30.00. Published July 15, 2020

  • fixed a major bug with the async dialogs -- sorry about that!

GMS2.3 - Version 10.30.01. Published August 26, 2020

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait

Back to Top