#####[ Topic: Bare-bones Typewriter Text ]##### This tutorial was copied/pasted from: https://forums.tigsource.com/index.php?topic=15099.0 Original date: October 04, 2010, 01:54:32 AM ...and then edited slightly by TheOuterLinux (https://theouterlinux.gitlab.io) to only make it more plain-text friendly. ------------------------------------------------------------------------ After wanting some typewriter text for my game (so the text gradually appears one letter at a time) I did some searching for a tutorial and quickly found every example I came across was encased in a bunch of RPG 'extras' such as dialogue boxes and multiple answers. All I wanted was the bare-bones and after a bit of trial and error it turns out it's pretty damn easy. So first of all you'll need to create an object that will be responsible for writing the text on screen. Inside the object's Create Event add the following: Create Event Code: vText = "Show Me"; //This is the text we want to display iText = 0; //This variable controls how many letters are currently shown (e.g. if iText = 8 then the first 8 letters of vText will be shown alarm[0] = 1; //Here we set the whole script in motion In the object's alarm[0] event add the following: Alarm0 Event Code: //We use an if statement here so the alarm stops once the full text is displayed if iText <= string_length(vText) { iText += 1; //Here we simply add 1 to iText to show one extra letter alarm[0] = 10; //This controls how fast the text is written. Increase this if you want it slower } And finally we need to show the text, so in the object's Draw event add the following: Draw Event Code: draw_text(x,y,string_copy(vText,1,iText)); And there you have it, job done! Currently that will only display a single text string, however it's very easy to modify it so you can have a single object control many different strings. The obvious examples for this would be a dialogue or an inventory screen where the text is changed based on the highlighted item. In these cases all you would need to do is change the vText to the new text, reset the iText back to 0 and restart the alarm[0]. ------------------------------------------------------------------------