diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index 4b6d5c5e4..9fb6c49da 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -17,26 +17,32 @@ jobs: fetch-depth: 0 token: ${{ secrets.GH_TOKEN }} persist-credentials: false - - name: Sync upstream changes - id: sync - uses: aormsby/Fork-Sync-With-Upstream-action@v3.4 - with: - target_sync_branch: develop - # REQUIRED 'target_repo_token' exactly like this! - target_repo_token: ${{ secrets.GH_TOKEN }} - upstream_sync_branch: develop - upstream_sync_repo: YoYoGames/GameMaker-Manual - upstream_repo_access_token: ${{ secrets.GH_TOKEN }} - git_config_user: ksuchitra532 - git_config_email: null - git_config_pull_rebase: true - - name: Sync upstream changes - id: sync-lts - uses: aormsby/Fork-Sync-With-Upstream-action@v3.4 + - name: Merge from upstream + env: + UPSTREAM: YoYoGames/GameMaker-Manual + run: | + git config --global user.name "github-actions" + git config --global user.email "github-actions@users.noreply.github.com" + + git --version + + # Add upstream remote and fetch + git remote add upstream "https://x-access-token:${{ secrets.GH_TOKEN }}@github.com/${UPSTREAM}.git" + git remote -v + git fetch upstream + + # Merge from upstream/develop with merge strategy to keep translation in case of conflicts + git merge -X ours upstream/main-lts + + # this is dangerous but will essentially remove any files not staged in the merge + # this is useful since the merge strategy `-X ours` will not handle files where + # they have been deleted on only one branch + # Only use this you're sure that the failing merges fall under this category and are acceptable + # git diff --name-only --diff-filter=U | xargs git rm + + git show-ref + - name: Push changes + uses: ad-m/github-push-action@master with: - target_sync_branch: main-lts - # REQUIRED 'target_repo_token' exactly like this! - target_repo_token: ${{ secrets.GH_TOKEN }} - upstream_sync_branch: main-lts - upstream_sync_repo: YoYoGames/GameMaker-Manual - upstream_repo_access_token: ${{ secrets.GH_TOKEN }} + github_token: ${{ secrets.GH_TOKEN }} + branch: ${{ github.ref }} \ No newline at end of file diff --git a/.github/workflows/trigger-all-sync-upstream.yml b/.github/workflows/trigger-all-sync-upstream.yml new file mode 100644 index 000000000..992197a46 --- /dev/null +++ b/.github/workflows/trigger-all-sync-upstream.yml @@ -0,0 +1,56 @@ +name: Trigger-Localisation-Upstream-Sync-Builds + +on: + workflow_dispatch: + inputs: + Language: + description: "Select All languages to sync" + required: false + type: choice + options: + - ALL + COUNTRY: + description: "Select individual language to sync" + required: false + type: choice + options: + - PT-BR + - DE + - ES + - FR + - IT + - JA + - KO + - PL + - RU + - ZH + + +jobs: + + Trigger-Localisation-Upstream-Sync: + name: + runs-on: ubuntu-22.04 + strategy: + matrix: + language: [PT-BR, DE, ES, FR, IT, JA, KO, PL, RU, ZH] + steps: + - name: Invoke Localisation Syncing + if: ${{ github.event.inputs.Language == 'ALL' }} + uses: benc-uk/workflow-dispatch@v1 + with: + workflow: sync.yml + repo: YoYoGames/GameMaker-Manual-${{ matrix.language }} + token: ${{ secrets.GH_TOKEN }} + continue-on-error: false + - name: Invoke Localisation Syncing + if: ${{ github.event.inputs.COUNTRY != ''}} + uses: benc-uk/workflow-dispatch@v1 + with: + workflow: sync.yml + repo: YoYoGames/GameMaker-Manual-${{ matrix.language }} + token: ${{ secrets.GH_TOKEN }} + continue-on-error: false + + + diff --git a/Manual/GenerateKeyboardShortcutTableFromJson.py b/Manual/GenerateKeyboardShortcutTableFromJson.py new file mode 100644 index 000000000..1e70532fb --- /dev/null +++ b/Manual/GenerateKeyboardShortcutTableFromJson.py @@ -0,0 +1,241 @@ +### Python script to generate copy-pasteable HTML tables from JSON file +### +### Provide the full directory path to the .json file as the command line argument. +### The output HTML file will also be placed there. +### For example: CMD > python GenerateKeyboardShortcutTableFromJson.py "C:/Users/Dev/Documents/GitHub/GameMaker-Manual/Manual/" -name_as_desc -env beta +### +### You can provide a few optional arguments: +### +### -name_as_desc: Add this to write the hotkey's name as the description. +### -env: Provide this, followed by the environment in which you want to look for the JSON file +### (one of: "dev", "lts", "beta", "prod") +### Note: only works on Windows! +### -update_rh_vars: Add this to update the RoboHelp variables +### A RH variable is written (or updated if exists) for every Win/Mac shortcut +### For example: Hotkey_Create_Asset_Win, Hotkey_Create_Asset_Mac +### +### Important: Technically, the JSON cannot contain trailing commas, this isn't supported +### using the built-in json module. Though it is supported through the yy_load function. +### + +import sys +import os +import json +import re +from collections import OrderedDict + +# Write to RoboHelp variables +import xml.etree.ElementTree as ET + +# Unique modifier keys +mods = set() + +def yy_load(file): + """ Load json from a file that possibly contains trailing commas """ + # Do some tricky regex substitution + # so we can use the json module + data_string = ''.join(file.readlines()) + data_string = re.sub("(,)(\s*[]}])","\g<2>", data_string) + + # Now we can import using the json module + return json.loads(data_string) + +# Utility functions +def get_combo_string(combo): + global mods + if not combo: + combo_string = "" + else: + modifier = [key for key in combo['Modifier'].split(", ") if key != "None"] + mods.update(modifier) + if type(combo['Keys']) is list: + # This is a hotkey chord + mods = " + ".join([*modifier]) + combo_string = " => ".join([mods + " + " + key for key in combo['Keys']]) + else: + # This is a regular hotkey + combo_string = " + ".join([*modifier, combo['Keys']]) + return combo_string + +# Default names +fname_hotkeys = "default_hotkeys.json" + +install_dirs = { + "dev": "GameMaker-Dev", + "lts": "GameMaker-LTS", + "beta": "GameMaker-Beta", + "prod": "GameMaker" +} + +# Handle parameters received from command line +if len(sys.argv) == 1: + print("ERROR - The input/output directory should be provided. Exiting...") + exit() +else: + out_dir = sys.argv[1] + in_dir = out_dir + +# Whether to use the shortcut's name as the description +name_as_desc = "-name_as_desc" in sys.argv + +# Whether to create new and/or update existing RH hotkey variables +write_update_rh_vars = "-update_rh_vars" in sys.argv + +# Use an existing GM installation to get the JSON files, if provided +env = "out_dir" +if "-env" in sys.argv: + ind = sys.argv.index("-env") + env = sys.argv[ind+1] + in_dir = os.environ['ProgramFiles'] + os.sep + install_dirs[env] + if not os.path.isdir(in_dir): + # Revert to out_dir if there's no such directory + in_dir = out_dir + +# Check if directories exist +if not os.path.isdir(in_dir) or not os.path.isdir(out_dir): + print("ERROR - One or more directories don't exist. Exiting...") + exit() + +# Check if files exist +fpath_win = in_dir + os.sep + fname_hotkeys +if not os.path.isfile(fpath_win): + print("ERROR - Shortcuts file doesn't exist. Exiting...") + exit() + +# Data structures +input = [] # input from file +shortcuts = dict() # maps shortcut name => shortcut data +shortcuts_per_location = OrderedDict() # stores shortcuts under locations + +# Read the defaults file +with open(fpath_win, 'r', encoding="utf-8") as f: + # Load all the data + # input = json.load(f) # risk of errors if trailing commas are present + input = yy_load(f) # regex-replace variety that fixes things + + # Add items under their respective locations (i.e. "group" per location) + for shortcut in input: + # Get unique name + name = shortcut['Name'] + + # Nothing to do for unlisted shortcuts? + #if 'IsUnlisted' in shortcut: + if 'IsListed' in shortcut and shortcut['IsListed'] == False: + continue + + # Get this shortcut's combo(s) + cbo = shortcut['Combo'] + combos = [cbo] if type(cbo) is not list else cbo + combo_strings = [get_combo_string(combo) for combo in combos] + + # Store shortcut data (name as the key) + shortcuts[name] = { + "name": name, + "description": shortcut['Description'] if ('Description' in shortcut) else "", + "win_combo": combo_strings, + "mac_combo": [] + # "Localisation": combo['Localisation'] + } + + # Store platform overrides, if there are any + if 'PlatformOverrides' in shortcut and shortcut['PlatformOverrides']: + for override in shortcut['PlatformOverrides']: + if override['Platform'] != 'MacOs': + continue + cbo = override['Combo'] + combos = [cbo] if type(cbo) is not list else cbo + combo_strings = [get_combo_string(combo) for combo in combos] + shortcuts[name]['mac_combo'] = combo_strings + + # Store name of shortcut under all its locations + loc = shortcut['Location'] + locations = [loc] if (type(loc) == str) else loc + + for location in locations: + # Make sure a list exists under the key before writing to it + if location not in shortcuts_per_location: + shortcuts_per_location[location] = OrderedDict() + + # Add the shortcut + shortcuts_per_location[location][name] = name + +# Generate HTML +html = "" +for location in shortcuts_per_location: + html += "

{0}

".format(location) + html += "\n" + + for name in shortcuts_per_location[location].keys(): + sc = shortcuts[name] + desc = name if name_as_desc else sc['description'] + html += "" + # html += "" + html += "" + html += "" + html += "" + html += "" + html += "" + + html += "
Windows Key BindingmacOS Key BindingScopeDescription
" + name + "" + "
".join(sc['win_combo']) + "
" + "
".join(sc['mac_combo']) + "
" + location + "" + desc + "
" + +# Write to file +fpath_out = out_dir + "/" + "shortcuts.htm" +with open(fpath_out, 'w') as f: + f.write(html) + +# Output unique keys +print("Shortcuts of environment " + str(env) + " written to file:") +print(fpath_out) + +if not write_update_rh_vars: + print("Not writing RH variables. Exiting...") + exit() + +# Optional: write to RH variables +fdir = os.getcwd() + os.sep + "variable" +fpath = fdir + os.sep + "Default.var" +tree = ET.parse(fpath) +root = tree.getroot() +vars = {} +for child in root: + # Skip title tag to avoid parsing issues + if child.tag == "title": + continue + + # Reconstruct RH vars mapping + key = child.attrib["keys"] + val = child[0][0][0].text + vars[key] = val + +# Update or append shortcuts +for sc in shortcuts: + readable_name = sc.replace("-", "") + readable_name = readable_name.replace("+", "And") + + for platform in ["win", "mac"]: + suffix = "_" + platform.capitalize() + key_name = "Hotkey_" + readable_name.replace(" ", "_") + suffix + v = [tag for tag in root.findall('.//keydef[@keys]') if tag.attrib['keys'] == key_name] + sc_key_name = platform + '_combo' + text = ", ".join(shortcuts[sc][sc_key_name]) + + if v: + # The shortcut already exists! + # Update + e = v[0] + e[0][0][0].text = text + else: + # The shortcut is a new one for the RH variables. + # Create + e = ET.SubElement(root, "keydef", attrib = {"keys": key_name}) + ec = ET.SubElement(e, "topicmeta") + ec2 = ET.SubElement(ec, "keywords") + ec3 = ET.SubElement(ec2, "keyword") + ec3.text = text + +# Prettify XML to maintain line-by-line diffs +ET.indent(tree, space="\t") + +tree.write(fpath, encoding='utf-8', xml_declaration=True) + +print("RoboHelp variables updated.") \ No newline at end of file diff --git a/Manual/ManualShortcuts.csv b/Manual/ManualShortcuts.csv new file mode 100644 index 000000000..0417d24c9 --- /dev/null +++ b/Manual/ManualShortcuts.csv @@ -0,0 +1,484 @@ +Ac Delete Bksp,BackSpace,⌫,Anim Curve Editor,Delete the selected point +Ac Path Display,CTRL+W,⌃W,Anim Curve Editor,Display path +Ace Cancel,Escape,⎋,Anim Curve Editor,Cancel +Add Curve,CTRL+A,⌘A,Anim Curve Editor,Add a new curve +Set Range,CTRL+R,⌘R,Anim Curve Editor,Set the range on the y axis +Ab Arrange Bottom,CTRL+SHIFT+Left Bracket,⌃⇧Left Bracket,Asset Browser,Move items to the bottom +Ab Arrange Down,CTRL+Left Bracket,⌃Left Bracket,Asset Browser,Move items down +Ab Arrange Top,CTRL+SHIFT+Right Bracket,⌃⇧Right Bracket,Asset Browser,Move items to the top +Ab Arrange Up,CTRL+Right Bracket,⌃Right Bracket,Asset Browser,Move items up +Block,1,1,Context Menu,Insert a code block snippet at the cursor position +Breakpoint Menu Toggle,F9,F9,Context Menu,Toggle breakpoint on the current line +Code Window Menu Help,F1,F1,Context Menu, Open the function/keyword page in the manual +Do-Until Loop,7,7,Context Menu,Insert a do-until loop snippet at the cursor position +Edit Menu Search,CTRL+SHIFT+F,⌘⇧F,Context Menu,Open project-wide Search & Replace +Exit,,⌘Q,Context Menu,Exit (Mac) +File Menu Preferences,,⌘⇧P,Context Menu,File Menu Preferences +For Loop,4,4,Context Menu,Insert a for loop snippet at the cursor position +For Loop (i..n),5,5,Context Menu,Insert a for loop with counter variable snippet at the cursor position +GML Visual Pan To,CTRL+P,⌃P,Context Menu,Pan to selected GML Visual action +If,2,2,Context Menu,Insert an if statement snippet at the cursor position +If-Else,3,3,Context Menu,Insert an if-else statement snippet at the cursor position +Insert,Insert,,Context Menu,Insert +Line Comment,C,C,Context Menu,Insert a single line comment snippet at the cursor position +Multi-line Comment,M,M,Context Menu,Insert a multi-line comment snippet at the cursor position +Region,R,R,Context Menu,Insert a region snippet at the cursor position +Repeat,8,8,Context Menu,Insert a repeat statement snippet at the cursor position +Run Menu Clean,,⌘F7,Context Menu,Clean the compiler cache +Run Menu Create Executable,,⌘F8,Context Menu,Create an executable package using the current target settings +Spline Editor Delete Points,Del,Del,Context Menu,Delete Points +Switch,9,9,Context Menu,Insert a switch statement snippet at the cursor position +Text Editor Comment Selection,CTRL+K,⌘K,Context Menu,Comment the selected text +Text Editor Next Region,CTRL+Alt+Down,⌘⌥Down,Context Menu,Move the cursor to the next region +Text Editor Previous Region,CTRL+Alt+Up,⌘⌥Up,Context Menu,Move the cursor to the previous region +Text Editor Toggle Fold,CTRL+Enter,⌘Enter,Context Menu,Fold/Unfold the current region (works when ) +Text Editor Uncomment Selection,CTRL+Shift+K,⌘⇧K,Context Menu,Uncomment selection +While Loop,6,6,Context Menu,Insert a while loop snippet at the cursor position +With,0,0,Context Menu,Insert a with statement snippet at the cursor position +Compileerror Copy Win,CTRL+Insert,⌃Insert,Errors,Copy the selected compile error message in the Compile Errors window +Compileerror Selectall,CTRL+SHIFT+A,⌃⇧A,Errors,Select all compile errors in the Compile Errors window +Syntaxerror Copy Win,CTRL+Insert,⌃Insert,Errors,Copy the selected syntax errors in the Syntax Errors window +Syntaxerror Selectall,CTRL+SHIFT+A,⌃⇧A,Errors,Select all syntax errors in the Syntax Errors window +Add New Range,CTRL+A,⌘A,Font Editor,Open the Font Range window +Deleted Selected Range,CTRL+D,⌘D,Font Editor,Delete the selected range from the font (select the range on the right first) +Open Options,CTRL+SHIFT+O,⌘⇧O,Font Editor,Open the Font Options window +Regenerate Font Texture,CTRL+R,⌘R,Font Editor,Regenerate the font texture +Add To Selection,CTRL,⌘,Global,Add to selection +Cancel,Escape,⎋,Global,Cancel +Clean,CTRL+F7,⌘F7,Global,Clean the compiler cache +Close Tab,CTRL+W,⌘W,Global,Close the active IDE tab +Confirm Create Asset,CTRL+C,⌘C,Global,Confirm the creation of the asset(s) of the selected type in the Create Asset window +Copy,CTRL+C,⌘C,Global,Copy the selected text from anywhere in the IDE +Create Animation Curve,ALT+J,⌥J,Global,Create a new animation curve asset +Create Asset,CTRL+A,⌘A,Global,Open the Create Asset window +Create Executable,CTRL+F8,⌘F8,Global,Create an executable package using the current target settings +Create Extension,ALT+E,⌥E,Global,Create a new extension asset +Create Font,ALT+F,⌥F,Global,Create a new font asset +Create Note,ALT+N,⌥N,Global,Create a new note asset +Create Object,ALT+O,⌥O,Global,Create a new object asset +Create Path,ALT+P,⌥P,Global,Create a new path asset +Create Resource GMIncluded File,ALT+I,⌥I,Global,Open the included files window +Create Room,ALT+R,⌥R,Global,Create a new room asset +Create Script,ALT+C,⌥C,Global,Create a new script asset +Create Sequence,ALT+G,⌥G,Global,Create a new sequence asset +Create Shader,ALT+A,⌥A,Global,Create a new shader asset +Create Sound,ALT+U,⌥U,Global,Create a new sound asset +Create Sprite,ALT+S,⌥S,Global,Create a new sprite asset +Create Tile Set,ALT+B,⌥B,Global,Create a new tile set asset +Create Timeline,ALT+T,⌥T,Global,Create a new timeline asset +Cut,CTRL+X,⌘X,Global,Cut +Debug,F6,F6,Global,Run the current project using the Debugger +Debugger Continue,F5,F5,Global,Continue code execution in the debugger +Debugger Step Into,F11,⌘⇧I,Global,Step into the current statement or function in the debugger +Debugger Step Out,SHIFT+F11,⌘⇧U,Global,Step out of the current statement or function in the debugger +Debugger Step Over,F10,⌘⇧O,Global,Step over the current statement in the debugger +Decrement Text Size,F7,F7,Global,Decrement the text size in all code editors +Delete,Delete,⌫,Global,Delete +Doc Window Next Tab,CTRL+PageUp,⌘PageUp,Global,Go to next tab +Doc Window Prev Tab,CTRL+PageDown,⌘PageDown,Global,Go to previous tab +Dope Sheet Panel Scroll Command,SHIFT,⇧,Global,Dope Sheet Panel Scroll Command +Duplicate,CTRL+D,⌘D,Global,Duplicate +Edit Image,CTRL+SHIFT+E,⌘⇧E,Global,Open the image editor when having a sprite selected in the workspace +Edit Sprite,CTRL+SHIFT+E,⌘⇧E,Global,Open the image editor when having a sprite selected in the workspace +Enumerate References,F3,F3,Global,Enumerate References +Export Project,CTRL+E,⌘E,Global,Export the current project as a YYZ file +Feather Open Quickfix Menu,CTRL+Q,⌃Q,Global,Open Feather's Quick Fixes menu +Find All References,SHIFT+F3,⇧F3,Global,Find All References to the selected asset +Flip,Y,Y,Global,Flip Vertically +Flow Accept,Enter,Enter,Global,Flow Accept +Force Dock Expansion,SHIFT+F12,⇧F12,Global,Force Dock Expansion +Get Bookmark 0,CTRL+0,⌘0,Global,Go to bookmark 0 +Get Bookmark 1,CTRL+1,⌘1,Global,Go to bookmark 1 +Get Bookmark 2,CTRL+2,⌘2,Global,Go to bookmark 2 +Get Bookmark 3,CTRL+3,⌘3,Global,Go to bookmark 3 +Get Bookmark 4,CTRL+4,⌘4,Global,Go to bookmark 4 +Get Bookmark 5,CTRL+5,⌘5,Global,Go to bookmark 5 +Get Bookmark 6,CTRL+6,⌘6,Global,Go to bookmark 6 +Get Bookmark 7,CTRL+7,⌘7,Global,Go to bookmark 7 +Get Bookmark 8,CTRL+8,⌘8,Global,Go to bookmark 8 +Get Bookmark 9,CTRL+9,⌘9,Global,Go to bookmark 9 +Go To,CTRL+T,⌘T,Global,"Search for assets" +Ide Toolbar Clean,CTRL+F7,⌘F7,Global,Clean the build +Ide Toolbar Collapsedocks,F12,F12,Global,Collapse docks +Ide Toolbar Help,F1,F1,Global,Launch the help file +Ide Toolbar New,CTRL+N,⌘N,Global,Create new project +Ide Toolbar Open,CTRL+O,⌘O,Global,Open project +Ide Toolbar Package,CTRL+F8,⌘F8,Global,Create an executable package using the current target settings +Increment Text Size,F8,F8,Global,Increment text size (in text editors) +Jump To End,PageDown,PageDown,Global,Jump down a page (in text editors) +Jump To Start,PageUp,PageUp,Global,Jump up a page (in text editors) +Manage Plugins,CTRL+SHIFT+V,⌘⇧V,Global,Manage plugins +Mirror,X,X,Global,Mirror Horizontally +Move Flow Next,Tab,⇥,Global,Move flow next +Move Flow Previous,SHIFT+Tab,⇧⇥,Global,Move flow previous +Move Selection Down,Down,Down,Global,Move selection down +Move Selection Left,Left,Left,Global,Move selection left +Move Selection Right,Right,Right,Global,Move selection right +Move Selection Up,Up,Up,Global,Move selection up +Multi Select,CTRL,⌘,Global,Multi select +New Project,CTRL+N,⌘N,Global,Open the Start Page +New Sprite,CTRL+SHIFT+N,⌘⇧N,Global,Add a new sprite (when an object is selected in the workspace) +Open Asset Browser,CTRL+SHIFT+B,⌃⇧B,Global,Open the asset browser +Open Debug Info,CTRL+SHIFT+D,⌘⇧D,Global,Open the debug info +Open In Explorer,SHIFT+O,⇧O,Global,Open in Explorer +Open Inspector,CTRL+SHIFT+I,⌃⇧I,Global,Open a new Inspector window +Open Prefs Tree,CTRL+SHIFT+P,⌘⇧P,Global,Open Preferences +Open Project,CTRL+O,⌘O,Global,Open project +Open Search In Script Find,CTRL+F,⌘F,Global,Open a code or shader editor's Find and Replace in Find mode +Open Search In Script Replace,CTRL+H,⌘R,Global,Open a code or shader editor's Find and Replace in Replace mode +Open Search Replace,CTRL+SHIFT+F,⌘⇧F,Global,Open project-wide Search and Replace +Open Workspace Overview,CTRL+Tab,⌃⇥,Global,Open the Workspace Overview +Pan,Space,Space,Global,Pan +Paste,CTRL+V,⌘V,Global,Paste +Perform Included File Scan,CTRL+SHIFT+Q,⌘⇧Q,Global,Perform Included File Scan +Play,Space,Space,Global,Play +Play Preview,CTRL+Space,⌘Space,Global,Play Preview +Quit,ALT+F4,⌘Q,Global,Quit +Redo,CTRL+Y,⌘Y,Global,Redo +Remove From Selection,ALT,⌥,Global,Remove from selection (while holding CTRL) +Rename,F2,F2,Global,Rename +Rename Identifier,CTRL+SHIFT+R,⌃⇧R,Global,Rename the identifier that the cursor is currently at in the Code Editor +Reverse Path,CTRL+R,⌘R,Global,Reverse path +Run,F5,F5,Global,Run the current project using the current target settings +Run Memory Info,CTRL+SHIFT+M,⌘⇧M,Global,Run Memory Info and output result to Output window +Run Program,F5,F5,Global,Run the program +Save,CTRL+S,⌘S,Global,Save the current project +Save As,CTRL+SHIFT+S,⌘⇧S,Global,Save as +Select All,CTRL+A,⌘A,Global,Select all +Select Range,SHIFT,⇧,Global,Select range +Select Sprite,CTRL+SHIFT+S,⌘⇧S,Global,Select Sprite (in Object Editor) +Seq Smartguide Toggle Rulerlock,CTRL+ALT+SHIFT+Semicolon,⌃⌥⇧Semicolon,Global,Toggle smart guide rulerlock +Seq Smartguide Toggle Snapping,CTRL+SHIFT+Semicolon,⌃⇧Semicolon,Global,Toggle snapping to smart guides +Seq Smartguide Toggle Vis,CTRL+Semicolon,⌃Semicolon,Global,Toggle the smart guides +Set Bookmark 0,CTRL+SHIFT+0,⌘⌃0,Global,Set bookmark 0 +Set Bookmark 1,CTRL+SHIFT+1,⌘⌃1,Global,Set bookmark 1 +Set Bookmark 2,CTRL+SHIFT+2,⌘⌃2,Global,Set bookmark 2 +Set Bookmark 3,CTRL+SHIFT+3,⌘⌃3,Global,Set bookmark 3 +Set Bookmark 4,CTRL+SHIFT+4,⌘⌃4,Global,Set bookmark 4 +Set Bookmark 5,CTRL+SHIFT+5,⌘⌃5,Global,Set bookmark 5 +Set Bookmark 6,CTRL+SHIFT+6,⌘⌃6,Global,Set bookmark 6 +Set Bookmark 7,CTRL+SHIFT+7,⌘⌃7,Global,Set bookmark 7 +Set Bookmark 8,CTRL+SHIFT+8,⌘⌃8,Global,Set bookmark 8 +Set Bookmark 9,CTRL+SHIFT+9,⌘⌃9,Global,Set bookmark 0 +Toggle Grid Snap,CTRL+G,⌘G,Global,Toggle snapping to grid for the current editor +Undo,CTRL+Z,⌘Z,Global,Undo +Workspace Chain Move Down,CTRL+ALT+Down,⌘⌥Down,Global,Workspace Chain Move Down +Workspace Chain Move Down Left,CTRL+ALT+Down+Left,⌘⌥Down+Left,Global,Workspace Chain Move Down Left +Workspace Chain Move Down Right,CTRL+ALT+Down+Right,⌘⌥Down+Right,Global,Workspace Chain Move Down Right +Workspace Chain Move Left,CTRL+ALT+Left,⌘⌥Left,Global,Workspace Chain Move Left +Workspace Chain Move Right,CTRL+ALT+Right,⌘⌥Right,Global,Workspace Chain Move Right +Workspace Chain Move Up,CTRL+ALT+Up,⌘⌥Up,Global,Workspace Chain Move Up +Workspace Chain Move Up Left,CTRL+ALT+Up+Left,⌘⌥Up+Left,Global,Workspace Chain Move Up Left +Workspace Chain Move Up Right,CTRL+ALT+Up+Right,⌘⌥Up+Right,Global,Workspace Chain Move Up Right +Zoom,CTRL,⌘,Global,Zoom in/out +Zoom And Pan To Gadget,CTRL+ALT+Enter,⌘⌥Enter,Global,Zoom and pan to selected +Zoom Fit,CTRL+F,⌘F,Global,Zoom fit +Zoom In,CTRL+Equals,⌘Equals,Global,Zoom in +Zoom Out,CTRL+Minus,⌘Minus,Global,Zoom out +Zoom Reset,CTRL+Enter,⌘Enter,Global,Reset zoom +Add Frame,SHIFT+A,⇧A,Image Editor,Add a new frame +Arc Move Control Point A,CTRL,⌘,Image Editor, +Arc Move Control Point B,ALT,⌥,Image Editor, +Backspace Delete,BackSpace,⌫,Image Editor,Backspace +Centre Fit,ALT+F,⌥F,Image Editor,Fit image to centre +Centre Unit,ALT+C,⌥C,Image Editor,Show image at actual size +Colour Replace With Alpha,ALT,⌥,Image Editor, +Decrement Brush Size,Minus,Minus,Image Editor,Decrement current brush size +Decrement Brush Size2,KeypadMinus,KeypadMinus,Image Editor,Decrement current brush size +Draw Centred Shape,ALT,⌥,Image Editor,Draw centred shape +Draw Regular Shape,SHIFT,⇧,Image Editor,Draw regular shape +Edit Copy Win,CTRL+Insert,⌃Insert,Image Editor,Copy +Edit Cut Win,SHIFT+Delete,⇧⌫,Image Editor,Cut +Edit Paste Win,SHIFT+Insert,⇧Insert,Image Editor,Paste +Fill Tool Tile With Brush,ALT,⌥,Image Editor,Tile with the current brush (using Fill Tool) +Image Editor Add From File,CTRL+SHIFT+A,⌘⇧A,Image Editor,Add image from file +Image Editor Centre Fit,ALT+F,⌥F,Image Editor,Centre fit the image in the editor +Image Editor Centre Unit Scale,ALT+C,⌥C,Image Editor,Centre the image in the editor at unit scale +Image Editor Import From Strip,CTRL+I,⌘I,Image Editor,Import from strip +Import Files,CTRL+SHIFT+A,⌘⇧A,Image Editor,Import image files +Import From Strip,CTRL+I,⌘I,Image Editor,Import from strip +Increment Brush Size,Equals,Equals,Image Editor,Increment brush size +Increment Brush Size2,KeypadPlus,KeypadPlus,Image Editor,Increment brush size +Insert Frame,Insert,Insert,Image Editor,Insert Frame +Invert Selection,CTRL+I,⌃I,Image Editor,Invert Selection +Next Frame,2,2,Image Editor,Next Frame +Open Colour Panel On Select,CTRL,⌃,Image Editor, +Pixel Brush,Period,Period,Image Editor,Pixel Brush +Playback Toggle,3,3,Image Editor,Toggle Playback +Previous Frame,1,1,Image Editor,Previous Frame +Rotate Brush,Z,Z,Image Editor,Rotate brush by 90 degrees (all tools using a brush) +Select Arc Tool,A,A,Image Editor,Select the Arc tool +Select Colour Picker Tool,O,O,Image Editor, Select the Colour Picker tool +Select Colour Remover,H,H,Image Editor,Select the Colour remove tool +Select Colour Replacer,V,V,Image Editor,Select the Colour replace tool +Select Ellipse Tool,C,C,Image Editor,Select the Ellipse tool +Select Erase Tool,E,E,Image Editor,Select the Erase tool +Select Fill Tool,F,F,Image Editor,Select the Fill tool +Select Free Rotate Tool,U,U,Image Editor,Select the Rotate brush tool +Select Line Tool,L,L,Image Editor,Select the Line tool +Select Magic Wand Tool,W,W,Image Editor,Select the Magic wand tool +Select Paintbrush Tool,D,D,Image Editor,Select the Paintbrush tool +Select Pan Tool,M,M,Image Editor,Select the Pan tool +Select Polygon Tool,P,P,Image Editor,Select the Polygon tool +Select Rectangle Tool,R,R,Image Editor,Select the Rectangle tool +Select Select Rect Tool,S,S,Image Editor,Select the Rectangle select tool +Select Selection Paint Tool,Q,Q,Image Editor,Select the Paint selection tool +Select Text Tool,T,T,Image Editor,Select the Text tool +Snap Tool Modifier,SHIFT,⇧,Image Editor,Snap Tool Modifier +Toggle Ellipse Tool,SHIFT+C,⇧C,Image Editor,Toggle the Ellipse tool between outline/filled +Toggle Hsplit,ALT+H,⌥H,Image Editor,Toggle horizontal split view +Toggle Polygon Tool,SHIFT+P,⇧P,Image Editor,Toggle the Polygon tool between outline/filled +Toggle Rectangle Tool,SHIFT+R,⇧R,Image Editor,Toggle the Rectangle tool between outline/filled +Toggle Selection Brush,B,B,Image Editor,Toggle the brush +Toggle Vsplit,ALT+V,⌥V,Image Editor,Toggle vertical split view +Tool Commit Enter,Enter,Enter,Image Editor,Commit tool changes +Add Child,CTRL+L,⌘L,Object Editor,Add a child object to the current object +Add Event,CTRL+A,⌘A,Object Editor,Add an event to the current object +Add Variable,CTRL+ALT+T,⌘⌥T,Object Editor,Add a new variable to the current object's Variable Definitions +Edit Mask,CTRL+K,⌘K,Object Editor,Edit the mask sprite +Edit Parent,CTRL+SHIFT+O,⌘⇧O,Object Editor,Edit the parent object +Modify Collision Shape,CTRL+B,⌘B,Object Editor,Modify the object's physics collision shape +Object Editor Copy Event Win,CTRL+Insert,⌃Insert,Object Editor,Copy event +Object Editor Cut Event Win,SHIFT+Delete,⇧⌫,Object Editor,Cut event +Object Editor Paste Event Win,SHIFT+Insert,⇧Insert,Object Editor,Paste event +Open Events Window,CTRL+F,⌘F,Object Editor,Open Events window +Open Parent Window,CTRL+G,⌘G,Object Editor,Open Parent window +Open Physics Window,CTRL+H,⌘H,Object Editor,Open Physics window +Open Variable Definitions,CTRL+J,⌘J,Object Editor,Open Variable Definitions window +Physics Snap To Grid,CTRL+U,⌘U,Object Editor,Toggle grid snapping in the Physics Collision Shape window +Physics Toggle Grid,CTRL+SHIFT+Y,⌘Y,Object Editor,Toggle grid on or off in the Physics Collision Shape window +Select Mask,CTRL+SHIFT+M,⌘⇧M,Object Editor,Select a mask for the object +Select Parent,CTRL+P,⌘P,Object Editor,Select parent +Open Shift Path,CTRL+SHIFT+O,⌘⇧O,Path Editor,Open the Shift Path window +Pan To Path,CTRL+P,⌘P,Path Editor,Pan to path +Rotate Path,R,R,Path Editor,Rotate path (hold while dragging LMB) +Scale Path,S,S,Path Editor,Scale path (hold while dragging LMB) +Shift Down,Down,Down,Path Editor,Shift down +Shift Left,Left,Left,Path Editor,Shift left +Shift Right,Right,Right,Path Editor,Shift right +Shift Up,Up,Up,Path Editor,Shift up +Translate Path,T,T,Path Editor,Translate path (hold while dragging LMB) + Auto Tile Tool,A,A,Room Editor,Select auto tile tool (when working on a tile layer) + Tile Eraser Tool,E,E,Room Editor,Select tile eraser tool (when working on a tile layer) + Tile Fill Tool,F,F,Room Editor,Select tile fill tool (when working on a tile layer) + Tile Inheritance Tool,I,I,Room Editor,Select tile inheritance tool (when working on a tile layer) + Tile Line Tool,L,L,Room Editor,Select tile line tool (when working on a tile layer) + Tile Pen Tool,D,D,Room Editor,Select tile pen tool (when working on a tile layer) + Tile Rect Tool,R,R,Room Editor,Select tile rect tool (when working on a tile layer) + Tile Rotate Tool,Z,Z,Room Editor,Select tile rotate tool (when working on a tile layer) + Tile Selection Tool,S,S,Room Editor,Select tile selection tool (when working on a tile layer) +Activate Tile Select Window,CTRL+ALT+S,⌃⌥S,Room Editor, +Add New Asset Layer,CTRL+A,⌘A,Room Editor,Add new asset layer +Add New Background Layer,CTRL+B,⌘B,Room Editor,Add new background layer +Add New Folder Layer,CTRL+F,⌘F,Room Editor,Add new folder layer +Add New Path Layer,CTRL+P,⌘P,Room Editor,Add new path layer +Add New Tile Layer,CTRL+ALT+T,⌘⌥T,Room Editor,Add new tile layer +Copy Selection Win,CTRL+Insert,⌃Insert,Room Editor,Copy selection +Cut Selection Win,SHIFT+Delete,⇧⌫,Room Editor,Cut selection +Flip As Group,Y,Y,Room Editor,Flip selection as group vertically +Flip As Individuals,SHIFT+Y,⇧Y,Room Editor,Flip individual elements of selection vertically +Generate Tile Map,CTRL+ALT+G,⌘⌥G,Room Editor,Generate tile map +Mirror As Group,X,X,Room Editor,Mirror horizontally as group +Mirror As Individuals,SHIFT+X,⇧X,Room Editor,Mirror individual elements of selection horizontally +Open Instance Creation Order,CTRL+ALT+I,⌘⌥I,Room Editor,Open instance creation order +Open Layer Properties,CTRL+ALT+P,⌘⌥P,Room Editor, +Open Layer View,CTRL+ALT+L,⌘⌥L,Room Editor,Open layer view +Open Room Properties,CTRL+ALT+R,⌘⌥R,Room Editor, +Paint With Resource,ALT,⌥,Room Editor,Paint using the selected resource +Paste Selection Win,SHIFT+Insert,⇧Insert,Room Editor,Paste selection +Precise Item Placement,CTRL,⌃,Room Editor,Disable snap to grid for precise item placement +Room Editor Paint Brush,B,B,Room Editor,Room Editor Paint Brush +Select From Any Layer,P,P,Room Editor,Select from any layer (hold while clicking elements on the canvas) +Tile Flip Tool,Y,Y,Room Editor,Tile flip tool +Tile Mirror Tool,X,X,Room Editor,Tile mirror tool +Toggle Grid,G,G,Room Editor,Toggle grid +Toggle Macro Editing Mode,CTRL+E,⌃E,Room Editor,Toggle Macro Editing Mode +Move Canvas Items Down,Down,Down,Sequence Editor,Move the selected items down on the canvas +Move Canvas Items Down 10x,SHIFT+Down,⇧Down,Sequence Editor,Move the selected items down on the canvas (10x) +Move Canvas Items Left,Left,Left,Sequence Editor,Move the selected items left on the canvas +Move Canvas Items Left 10x,SHIFT+Left,⇧Left,Sequence Editor,Move the selected items left on the canvas (10x) +Move Canvas Items Right,Right,Right,Sequence Editor,Move the selected items right on the canvas +Move Canvas Items Right 10x,SHIFT+Right,⇧Right,Sequence Editor,Move the selected items right on the canvas (10x) +Move Canvas Items Up,Up,Up,Sequence Editor,Move the selected items up on the canvas +Move Canvas Items Up 10x,SHIFT+Up,⇧Up,Sequence Editor,Move the selected items up on the canvas (10x) +Sequence Add Keyframe,F9,F9,Sequence Editor,"Add a keyframe at the playhead position for all selected items on the canvas" +Sequence Center Item Origin,CTRL+SHIFT+Home,⌃⇧Home,Sequence Editor,Center the selected items around their origins +Sequence Delete Bksp,BackSpace,⌫,Sequence Editor,Delete the selected items +Sequence Expand Tracks All,CTRL+U,⌃U,Sequence Editor,Toggle expand/collapse for all tracks +Sequence Expand Tracks Selection,U,U,Sequence Editor,Toggle expand/collapse for the selected tracks in the Track Panel +Sequence Goto End,End,End,Sequence Editor,Move the playhead to the end of the sequence +Sequence Goto End Selection,SHIFT+End,⇧End,Sequence Editor,Move the playhead to the end of the selection +Sequence Goto Next Event,SHIFT+8,⇧8,Sequence Editor,Move the playhead to the next moment +Sequence Goto Prev Event,SHIFT+9,⇧9,Sequence Editor,Move the playhead to the previous moment +Sequence Goto Start,Home,Home,Sequence Editor,Move the playhead to the start of the sequence +Sequence Goto Start Selection,SHIFT+Home,⇧Home,Sequence Editor,Move the playhead to the start of the selection +Sequence Move Keys Left1,CTRL+Left,⌃Left,Sequence Editor,Move the selected keys left by 1 frame +Sequence Move Keys Left10,CTRL+SHIFT+Left,⌃⇧Left,Sequence Editor,Move the selected keys left by 10 frames +Sequence Move Keys Right1,CTRL+Right,⌃Right,Sequence Editor,Move the selected keys right by 1 frame +Sequence Move Keys Right10,CTRL+SHIFT+Right,⌃⇧Right,Sequence Editor,Move the selected keys right by 10 frames +Sequence Move Playhead Left1,ALT+Left,⌥Left,Sequence Editor,Move the playhead left by 1 frame +Sequence Move Playhead Left10,ALT+SHIFT+Left,⌥⇧Left,Sequence Editor,Move the playhead left by 10 frames +Sequence Move Playhead Right1,ALT+Right,⌥Right,Sequence Editor,Move the playhead right by 1 frame +Sequence Move Playhead Right10,ALT+SHIFT+Right,⌥⇧Right,Sequence Editor,Move the playhead right by 10 frames +Sequence New Broadcast Message,CTRL+8,⌃8,Sequence Editor,Add a new broadcast message at the playhead position +Sequence New Clipping Mask,CTRL+M,⌃M,Sequence Editor,Add a new clipping mask track +Sequence New Group,ALT+G,⌥G,Sequence Editor,Create a new group track and add the selected tracks to it +Sequence New Moment,CTRL+9,⌃9,Sequence Editor,Add a new moment at the playhead position +Sequence Next Keyframe,N,N,Sequence Editor,Move the playhead to the next keyframe in the selected parameter tracks +Sequence Prev Keyframe,M,M,Sequence Editor,Move the playhead to the previous keyframe in the selected parameter tracks +Sequence Remove Keyframe,F8,F8,Sequence Editor,Remove the keyframes at the playhead position on the currently selected tracks +Sequence Reset Item Position,CTRL+Home,⌃Home,Sequence Editor,Reset the position on the canvas of the currently selected items +Sequence Select Next Key,SHIFT+N,⇧N,Sequence Editor,Move the playhead to the next key +Sequence Select Prev Key,SHIFT+M,⇧M,Sequence Editor,Move the playhead to the previous key +Sequence Select Track Above,ALT+Up,⌥Up,Sequence Editor,Select the track above the current track in the Track Panel +Sequence Select Track Above Additive,CTRL+ALT+Up,⌃⌥Up,Sequence Editor,Add the track above the current track to the selection in the Track Panel +Sequence Select Track Below,ALT+Down,⌥Down,Sequence Editor,Select the track above the current track in the Track Panel +Sequence Select Track Below Additive,CTRL+ALT+Down,⌃⌥Down,Sequence Editor,Add the track below the current track to the selection in the Track Panel +Sequence Split Key Two Tracks,CTRL+ALT+D,⌃⌥D,Sequence Editor,Split Key Two Tracks +Sequence Split Keyframe,F7,F7,Sequence Editor,Split Keyframe +Sequence Stretch Keys Left,SHIFT+Left Bracket,⇧Left Bracket,Sequence Editor,Stretch the selected keys left +Sequence Stretch Keys Right,SHIFT+Right Bracket,⇧Right Bracket,Sequence Editor,Stretch the selected keys right +Sequence Toggle Autokey,F10,F10,Sequence Editor,"Toggle autokey" +Sequence Toggle Multiselect Origin,Q,Q,Sequence Editor,Toggle multiselect origin +Sequence Toggle Translation Path,CTRL+ALT+P,⌃⌥P,Sequence Editor,Toggle translation paths on the canvas +Sequence Trim Key Left,Left Bracket,Left Bracket,Sequence Editor,Trim selected keys left +Sequence Trim Key Right,Right Bracket,Right Bracket,Sequence Editor,Trim selected keys right +Toggle Canvas Rulers,CTRL+R,⌃R,Sequence Editor,Toggle the canvas rulers +Tool Origin,Y,Y,Sequence Editor,Select the Origin tool +Tool Rotate,R,R,Sequence Editor,Select the Rotate tool +Tool Scale,S,S,Sequence Editor,Select the Scale tool +Tool Translate,T,T,Sequence Editor,Select the Translate tool +Load Sound,CTRL+SHIFT+O,⌘⇧O,Sound Editor,Load sound +Loop Sound,L,L,Sound Editor,Toggle loop sound +Mute Sound,M,M,Sound Editor,Toggle mute sound +Open Mixer,CTRL+SHIFT+M,⌘⇧M,Sound Editor,Open the Sound Mixer +Play Sound,Space,Space,Sound Editor,Play/Pause/Resume sound +Rewind,R,R,Sound Editor,Rewind and stop sound +Loop All,L,L,Sound Mixer,Loop all +Mute All,M,M,Sound Mixer,Mute all (all mixer columns) +Play All,Space,Space,Sound Mixer,Play all sounds (all mixer columns) +Rewind All,R,R,Sound Mixer,Stop and rewind all +Add Sprite Frame,SHIFT+A,⇧A,Sprite Editor,Add sprite frame +Copy Frames Win,CTRL+Insert,⌃Insert,Sprite Editor,Copy sprite frames +Cut Frames Win,SHIFT+Delete,⇧⌫,Sprite Editor,Cut sprite frames +Import Image,CTRL+I,⌘I,Sprite Editor,Import image +Insert Sprite Frame,Insert,Insert,Sprite Editor,Insert sprite frame +Paste Frames Win,SHIFT+Insert,⇧Insert,Sprite Editor,Paste sprite frames +Resize Image,CTRL+R,⌘R,Sprite Editor,Open the Resize Properties window +Sprite Add Broadcast Message,CTRL+8,⌃8,Sprite Editor,Add broadcast message to sprite +Caret Down,Down,Down,Text Editor,Move cursor down +Caret Down+Column Select,ALT+SHIFT+Down,⌥⇧Down,Text Editor,Move cursor down while doing column select (rectangular area) +Caret Down+Scroll Down+Select,CTRL+SHIFT+Down,⌃⇧PageDown,Text Editor,Move cursor down while selecting lines +Caret Down+Select,SHIFT+Down,⇧Down,Text Editor,Move cursor down while selecting lines +Caret Left,Left,Left,Text Editor,Move cursor left +Caret Left+Column Select,ALT+SHIFT+Left,,Text Editor,Move cursor left while doing column select (rectangular area) +Caret Left+Select,SHIFT+Left,⇧Left,Text Editor,Move cursor left while selecting lines +Caret Right,Right,Right,Text Editor,Move cursor right +Caret Right+Column Select,ALT+SHIFT+Right,,Text Editor,Move cursor right while doing column select (rectangular area) +Caret Right+Select,SHIFT+Right,⇧Right,Text Editor,Move cursor right while selecting lines +Caret Up,Up,Up,Text Editor,Move cursor up +Caret Up+Column Select,ALT+SHIFT+Up,⌥⇧Up,Text Editor,Move cursor up while doing column select (rectangular area) +Caret Up+Scroll Up+Select,CTRL+SHIFT+Up,⌃⇧PageUp,Text Editor,Move cursor up while selecting lines +Caret Up+Select,SHIFT+Up,⇧Up,Text Editor,Move cursor up while selecting lines +Comment Line/Selection,CTRL+K,⌘K,Text Editor,Comment line or selection +De Tab,SHIFT+Tab,⇧⇥,Text Editor,Tab backwards +Delete Back,BackSpace,⌫,Text Editor,Backspace +Delete End Start,CTRL+Delete,⌃⌫,Text Editor,Delete from the cursor position to the end of the word +Delete Forward,Delete,⌫,Text Editor,Delete +Delete Line After Cursor,,⌃K,Text Editor,Delete line after cursor +Delete Line Before Cursor,,⌘⌫,Text Editor,Delete line before cursor +Delete Word Start,CTRL+BackSpace,⌥⌫,Text Editor,Delete from the cursor position to the start of the word +Document End,CTRL+End,⌃End,Text Editor,Move cursor to the end of the document +Document End+Select,CTRL+SHIFT+End,⌃⇧End,Text Editor,Move cursor to the end of the document and select everything in between +Document Start,CTRL+Home,⌃Home,Text Editor,Move cursor to the start of the document +Document Start+Select,CTRL+SHIFT+Home,⌃⇧Home,Text Editor,Move cursor to the start of the document and select everything in between +End,End,End,Text Editor,Move cursor to end of line +End+Column Select,ALT+SHIFT+End,⌥⇧End,Text Editor,Move cursor to end of line and column select +End+Select,SHIFT+End,⇧End,Text Editor,Move cursor to end of line and select text in between +Expand/Collapse Region,CTRL+Enter,⌘Enter,Text Editor,Expand/Collapse region +Fold Regions,CTRL+M,⌃M,Text Editor,Fold regions +Home,Home,Home,Text Editor,Move cursor to start of line +Home+Column Select,ALT+SHIFT+Home,⌥⇧Home,Text Editor,Move cursor to start of line and column select +Home+Select,SHIFT+Home,⇧Home,Text Editor,Move cursor to start of line and select +Line Break1,Enter,Enter,Text Editor,Line break +Line Break2,KeypadEnter,KeypadEnter,Text Editor,Line break +Next Region,CTRL+ALT+Down,⌘⌥Down,Text Editor,Next region +Page Down,PageDown,PageDown,Text Editor,Page down +Page Down+Select,SHIFT+PageDown,⇧PageDown,Text Editor,Page down + select +Page Up,PageUp,PageUp,Text Editor,Page up +Page Up+Select,SHIFT+PageUp,⇧PageUp,Text Editor,Page up + select +Previous Region,CTRL+ALT+Up,⌘⌥Up,Text Editor,Previous region +Restart Game,F6,F6,Text Editor,Restart game +Scroll Down,CTRL+Down,⌃PageDown,Text Editor,Scroll down (move cursor down and scroll down) +Scroll Up,CTRL+Up,⌃PageUp,Text Editor,Scroll up (move cursor up and scroll up) +Show Code Completion,CTRL+Space,⌃Space,Text Editor,Show code completion +Show Snippets,F4,F4,Text Editor,Show snippets +Tab,Tab,⇥,Text Editor,Tab +Text Editor Goto Line,CTRL+G,⌘G,Text Editor,Goto line number +Toggle Insert/Overwrite,Insert,Insert,Text Editor,Toggle Insert/Overwrite +Uncomment Line/Selection,CTRL+SHIFT+K,⌘⇧K,Text Editor,Uncomment line/selection +Unfold Regions,CTRL+U,⌃U,Text Editor,Unfold regions +Word Left,CTRL+Left,⌥Left,Text Editor,Move cursor to word on the left +Word Left+Select,CTRL+SHIFT+Left,⌥⇧Left,Text Editor,Move cursor to word on the left and select text in between +Word Right,CTRL+Right,⌥Right,Text Editor,Move cursor to word on the right +Word Right+Select,CTRL+SHIFT+Right,⌥⇧Right,Text Editor,Move cursor to word on the right and select text in between +Add Anim,Insert,Insert,Tileset Editor,Add animation (Tile Animation window) +Autotile Add Full Set,CTRL+F,⌘F,Tileset Editor,Add full auto tile set (Auto Tiling window) +Autotile Add Transition Set,CTRL+R,⌘R,Tileset Editor,Add auto tile transition set (Auto Tiling window) +Autotile Delete Set,Del,Del,Tileset Editor,Delete auto tile set (Auto Tiling window) +Autotile Show Guide,G,G,Tileset Editor,Toggle auto tile guide +Decrease Brush Size,KeypadMinus,KeypadMinus,Tileset Editor,Decrease brush size +Decrease Brush Size Keypad,KeypadMinus,KeypadMinus,Tileset Editor,Decrease brush size +Delete Tile Selection,Delete,⌫,Tileset Editor,Delete selection +Increase Brush Size,KeypadPlus,KeypadPlus,Tileset Editor,Increase brush size +Increase Brush Size Keypad,KeypadPlus,KeypadPlus,Tileset Editor,Decrease brush size +Invert Tile Selection,CTRL+I,⌃I,Tileset Editor,Invert tile selection +Move Anim Down,SHIFT+Down,⇧Down,Tileset Editor,Move animation down (Tile Animation window) +Move Anim Frame Left,SHIFT+Left,⇧Left,Tileset Editor,Move animation frame left (Tile Animation window) +Move Anim Frame Right,SHIFT+Right,⇧Right,Tileset Editor,Move animation frame right (Tile Animation window) +Move Anim Up,SHIFT+Up,⇧Up,Tileset Editor,Move animation up (Tile Animation window) +Next Anim,Down,Down,Tileset Editor,Next animation (Tile Animation window) +Next Anim Frame,Right,Right,Tileset Editor,Next animation frame (Tile Animation window) +Open Auto Tiling,CTRL+A,⌘A,Tileset Editor,Open Auto Tiling window +Open Brush Builder,CTRL+B,⌘B,Tileset Editor,Open Brush Builder window +Open Tile Animation,CTRL+ALT+T,⌘⌥T,Tileset Editor,Open Tile Animation window +Open Tileset Properties,CTRL+SHIFT+O,⌘⇧O,Tileset Editor,Open Tile Set Properties window +Prev Anim,Up,Up,Tileset Editor,Previous animation (Tile Animation window) +Prev Anim Frame,Left,Left,Tileset Editor,Previous animation frame (Tile Animation window) +Rotate,Z,Z,Tileset Editor,Rotate +Tile Autotile,A,A,Tileset Editor,Select Autotile tool (Brush Builder Tools) +Tile Eraser,E,E,Tileset Editor,Select Eraser tool (Brush Builder Tools) +Tile Fill,F,F,Tileset Editor,Select Fill tool (Brush Builder Tools) +Tile Line,L,L,Tileset Editor,Select Line tool (Brush Builder Tools) +Tile Pen,D,D,Tileset Editor,Select Pen tool (Brush Builder Tools) +Tile Rect,R,R,Tileset Editor,Select Rectangle tool (Brush Builder Tools) +Tile Select,S,S,Tileset Editor,Select Select Tiles tool (Brush Builder Tools) +Add Moment,Insert,Enter,Timeline Editor,Add new moment +Change Moment,CTRL+SHIFT+E,⌘⇧E,Timeline Editor,Change selected moment +Copy Moments Win,CTRL+Insert,⌃Insert,Timeline Editor,Copy selected moments +Cut Moments Win,SHIFT+Delete,⇧⌫,Timeline Editor,Cut selected moments +Edit Moment,ALT+Enter,⌥Enter,Timeline Editor,Edit moment (jump to code editor) +Merge Moment,CTRL+SHIFT+M,⌘⇧M,Timeline Editor,Merge selected moments +Paste Moments Win,SHIFT+Insert,⇧Insert,Timeline Editor,Paste moments +Unselect Moments,CTRL+U,⌘U,Timeline Editor,Unselect moments +Ai Assistant Search Next,F3,F3,AIAssistant, +Ai Assistant Search Previous,SHIFT+F3,⇧F3,AIAssistant, +Open Ai Assistant,CTRL+SHIFT+A,⌃⇧A,Global, +Feather Do Nothing Rewrite,SHIFT+F11,⇧F11,Feather, +Start Dnd Maker,CTRL+SHIFT+Q,⌘⇧Q,Global, +Brush From Selection,CTRL+B,⌃B,Image Editor, +Create Particle System,ALT+K,⌥K,Global, +Delete Selected Range,CTRL+D,⌘D,Font Editor, +Colour Picker Subtool,CTRL,⌘,Image Editor, +Brush Scaler Subtool,SHIFT+Z,⇧Z,Image Editor, +Create Resource GMParticle System,ALT+K,⌥K,Global, +Open Included File,ALT+I,⌥I,Global, +Auto Tile Tool,A,A,Room Editor, +Tile Eraser Tool,E,E,Room Editor, +Tile Fill Tool,F,F,Room Editor, +Tile Inheritance Tool,I,I,Room Editor, +Tile Line Tool,L,L,Room Editor, +Tile Pen Tool,D,D,Room Editor, +Tile Rect Tool,R,R,Room Editor, +Tile Rotate Tool,Z,Z,Room Editor, +Tile Selection Tool,S,S,Room Editor, diff --git a/Manual/_page_generation/Template_Code_Page.htm b/Manual/_page_generation/Template_Code_Page.htm new file mode 100644 index 000000000..a4d5eb900 --- /dev/null +++ b/Manual/_page_generation/Template_Code_Page.htm @@ -0,0 +1,69 @@ + + + + + + INSERT_TITLE + + + + + + + + + + +

INSERT_TITLE

+

Keyword Description Goes Here.

+

Additional Information Goes Here.

+

 

+

Syntax:

+

(arguments);

+ + + + + + + + + + + + + + + + + + +
ArgumentTypeDescription
argument_name<Type_ Variable>Argument Description Goes Here
+

 

+

Returns:

+

<Type_ Variable> (Optional explanation)

+

 

+

Example:

+

code_example () {
+     
+ }

+

Explain The Code Example Here

+

 

+

 

+ + + + + \ No newline at end of file diff --git a/Manual/_page_generation/Template_Normal_Page.htm b/Manual/_page_generation/Template_Normal_Page.htm new file mode 100644 index 000000000..bc7ade327 --- /dev/null +++ b/Manual/_page_generation/Template_Normal_Page.htm @@ -0,0 +1,40 @@ + + + + + + INSERT_TITLE + + + + + + + + + + + +

INSERT_TITLE

+

 

+

 

+

 

+

 

+ + + + + + \ No newline at end of file diff --git a/Manual/_page_generation/Template_Visual_Page.htm b/Manual/_page_generation/Template_Visual_Page.htm new file mode 100644 index 000000000..7197a1203 --- /dev/null +++ b/Manual/_page_generation/Template_Visual_Page.htm @@ -0,0 +1,58 @@ + + + + + + INSERT_TITLE + + + + + + + + + + +

Assign Variable Icon INSERT_TITLE

+

Description

+

 

+

Action Syntax:

+

Assign Variable Action

+

Arguments:

+ + + + + + + + + + + +
ArgumentDescription
  
+

 

+

Example:

+ +

Assign Variable ExampleThe above actions 

+ +

 

+

 

+ + + + + \ No newline at end of file diff --git a/Manual/contents/Additional_Information/Project_Format.htm b/Manual/contents/Additional_Information/Project_Format.htm new file mode 100644 index 000000000..7f9993051 --- /dev/null +++ b/Manual/contents/Additional_Information/Project_Format.htm @@ -0,0 +1,50 @@ + + + + + + + Project Format + + + + + + + + + +

Project Format

+

This page contains details on the project format used by GameMaker.

+

Format Basics

+

The YYP Project File

+

At the root is the main project file, with a *.yyp extension. It describes the resources in the project and other meta data specific to it.

+

The .resource_order File

+

Next to it is another file with the same name, but a *.resource_order extension instead. This file stores the order of groups and assets in The Asset Browser used when the filter is set to Custom Order.

+

 When using version control, you can e.g. add this file to .gitignore so each user of the project can have their own custom ordering in The Asset Browser.

+

YY Files

+

These are resource files; they store information on individual assets in a GameMaker project. They describe the data for the resource and any other files belonging to the resource (e.g. scripts, shaders, images and audio files). These data are stored in a JSON-like format.

+

YYZ Files

+

This type of file stores a compressed project export, created via the Export Project > YYZ option in The File Menu. Depending on the version of GameMaker, the compression method used may vary.

+

Local Asset Packages

+

These are created and imported from (part of) a project's contents using Create Local Package and Import Local Package respectively in The Tools Menu.

+

The following is an overview of the file formats used by different GameMaker versions: 

+ +

 

+

 

+ + + \ No newline at end of file diff --git a/Manual/contents/Additional_Information/Whitespace_Characters.htm b/Manual/contents/Additional_Information/Whitespace_Characters.htm new file mode 100644 index 000000000..1ed9d7155 --- /dev/null +++ b/Manual/contents/Additional_Information/Whitespace_Characters.htm @@ -0,0 +1,201 @@ + + + + + + + White-space Characters + + + + + + + + +

White-space Characters

+

The following table lists the character codes and escape sequences that GameMaker considers to be white-space characters. An empty cell in the table indicates there is no escape sequence for that character code.

+

For a detailed list of all these characters, see Whitespace character.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Whitespace Characters
Escape SequenceUnicode Escape SequenceDescription
"\t""\u0009"character tabulation (tab)
"\n""\u000A"line feed (new line)
"\v""\u000B"line tabulation (vertical tab)
"\f""\u000C"form feed
"\r""\u000D"carriage return
" ""\u0020"space
 "\u0085"next line
 "\u00A0"no-break space
 "\u1680"ogham space mark
 "\u180E"mongolian vowel separator
 "\u2000"en quad
 "\u2001"em quad
 "\u2002"en space
 "\u2003"em space
 "\u2004"three-per-em space
 "\u2005"four-per-em space
 "\u2006"six-per-em space
 "\u2007"figure space
 "\u2008"punctuation space
 "\u2009"thin space
 "\u200A"hair space
 "\u200B"zero width space
 "\u200C"zero width non-joiner
 "\u200D"zero width joiner
 "\u2028"line separator
 "\u2029"paragraph separator
 "\u202F"narrow no-break space
 "\u205F"medium mathematical space
 "\u2060"word joiner
 "\u3000"ideographic space
 "\uFEFF"zero width non-breaking space
+

 

+

 

+ + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/Collision_Actions.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/Collision_Actions.htm index fd26f959d..be89d690a 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/Collision_Actions.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/Collision_Actions.htm @@ -29,7 +29,7 @@

コリジョンアクションライブラリ

If Collision Shape Icon - If Collision Shape + If Collision Shape If Collision Point Icon diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/If_Collision_Shape.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/If_Collision_Shape.htm index 0b7490b6c..99658552a 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/If_Collision_Shape.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Collisions/If_Collision_Shape.htm @@ -4,7 +4,7 @@ If Collision Shape - + diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Common_Actions_Library.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Common_Actions_Library.htm index 8c875cab3..688449bdc 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Common_Actions_Library.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Common_Actions_Library.htm @@ -39,11 +39,11 @@

コモンアクションライブラリ

If Variable - If Variable + If Variable If Expression - If Expression + If Expression If Undefined @@ -126,6 +126,7 @@

コモンアクションライブラリ

© CopyrightYoYo Games Ltd. 2021 All Rights Reserved
+

 

\ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/If_Expression.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/If_Expression.htm index 062226f13..99732b0b6 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/If_Expression.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/If_Expression.htm @@ -3,7 +3,7 @@ If Expression - + diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Set_Global_Variable.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Set_Global_Variable.htm index b5b364f5d..efe60ad20 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Set_Global_Variable.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Common/Set_Global_Variable.htm @@ -70,5 +70,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance/Set_Instance_Colour.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance/Set_Instance_Colour.htm index 9f4828794..4b81355a4 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance/Set_Instance_Colour.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance/Set_Instance_Colour.htm @@ -56,5 +56,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance_Vars/If_Lives.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance_Vars/If_Lives.htm index 5ff32134d..b7b63b85b 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance_Vars/If_Lives.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Instance_Vars/If_Lives.htm @@ -4,7 +4,7 @@ If Lives - + diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Mouse_And_Keyboard/If_Virtual_Keyboard_Is_Showing.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Mouse_And_Keyboard/If_Virtual_Keyboard_Is_Showing.htm index af290dfe9..301890219 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Mouse_And_Keyboard/If_Virtual_Keyboard_Is_Showing.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Mouse_And_Keyboard/If_Virtual_Keyboard_Is_Showing.htm @@ -8,7 +8,7 @@ - + diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Add_Motion.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Add_Motion.htm new file mode 100644 index 000000000..2589b5f54 --- /dev/null +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Add_Motion.htm @@ -0,0 +1,62 @@ + + + + + + Add Motion + + + + + + + + + + +

Assign Variable Icon Add Motion

+

This action accelerates the instance with the given speed in the given direction.

+

This is useful for controlling instances that accelerate gradually, like a space ship or a rolling ball, unlike, say, an RPG character which moves at a constant speed.

+

 

+

Action Syntax:

+

Assign Variable Action

+

Arguments:

+ + + + + + + + + + + + + + + +
ArgumentDescription
DirectionThe direction to accelerate in
SpeedThe speed of the acceleration
+

 

+

Example:

+

Assign Variable ExampleThis will cause the instance to accelerate in the direction of the sprite's rotation, with a speed of 0.1, if the up arrow key is held down.

+

You can modify the image_angle variable to turn the instance.

+

 

+

 

+ + + + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Jump_To_Start.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Jump_To_Start.htm index 6297f7d54..5fa5dce95 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Jump_To_Start.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Movement/Jump_To_Start.htm @@ -4,7 +4,7 @@ Jump To Start - + diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Particles/Particle_Actions.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Particles/Particle_Actions.htm index d095dc8da..89352bba0 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Particles/Particle_Actions.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Particles/Particle_Actions.htm @@ -48,7 +48,7 @@

パーティクルアクションライブラリ

Particle Action Library パーティクルシステムの作成 - + Create Particle System Icon デストロイ・パーティクル・システム diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Get_Sequence_Head.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Get_Sequence_Head.htm index abf0b1722..570bfd656 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Get_Sequence_Head.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Get_Sequence_Head.htm @@ -58,5 +58,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Set_Sequence_Head.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Set_Sequence_Head.htm index 8341aa0ae..386ed8994 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Set_Sequence_Head.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Sequences/Set_Sequence_Head.htm @@ -68,5 +68,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tile_Data_In_Cell.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tile_Data_In_Cell.htm index 5a36220bb..6ff50380e 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tile_Data_In_Cell.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tile_Data_In_Cell.htm @@ -61,5 +61,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tilemap_Variable.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tilemap_Variable.htm index 6b2f2e82f..96127a2fe 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tilemap_Variable.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Get_Tilemap_Variable.htm @@ -72,5 +72,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_At_Pixel.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_At_Pixel.htm index 932806dac..19a1b8436 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_At_Pixel.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_At_Pixel.htm @@ -70,5 +70,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_In_Cell.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_In_Cell.htm index 83649ed4d..d911be5c2 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_In_Cell.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Set_Tile_Data_In_Cell.htm @@ -69,5 +69,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Tile_Actions.htm b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Tile_Actions.htm index 5d18b3b6c..02a1a8d5b 100644 --- a/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Tile_Actions.htm +++ b/Manual/contents/Drag_And_Drop/Drag_And_Drop_Reference/Tiles/Tile_Actions.htm @@ -108,5 +108,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Expressions_And_Operators.htm b/Manual/contents/GameMaker_Language/GML_Overview/Expressions_And_Operators.htm index 53a301edc..727ec613a 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Expressions_And_Operators.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Expressions_And_Operators.htm @@ -103,6 +103,7 @@

オペレーター

div,mod(%) は除算とモジュロで、div はある値を分割して整数の商だけを生成できる量、mod は分割した余りだけを与える。なお、divやmodは整数値でなければできません。使用例

secs = time mod 60;
+ secs = time % 60;    // Identical to the above line
time_str = string(time div 60);

diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/delete.htm b/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/delete.htm index ede365926..e01f8280c 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/delete.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/delete.htm @@ -46,5 +46,5 @@
© CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/do___until.htm b/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/do___until.htm index ca0353367..224c95b3f 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/do___until.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/do___until.htm @@ -8,7 +8,7 @@ - + @@ -37,9 +37,9 @@

する/するまで

do
{
    _id = list[| 0];
-     if instance_exists(_id)
+     if (instance_exists(_id))
    {
-         _break;
+         break;
    }
    ds_list_delete(list, 0);
}
diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/with.htm b/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/with.htm index cbe97fd90..25664d3a3 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/with.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Language_Features/with.htm @@ -8,7 +8,7 @@ - + @@ -22,24 +22,24 @@

をもって

は、最初のステートメントを単に省略したものなので、まったく同じ効果をもたらします。では、どうすればこのようなことが実現できるのでしょうか。これが、 with という文がGML の中に存在する理由です。 with ステートメントは次のような構文になっています。

with (<expression>)
{
-     <statement>;
-     <statement>;
-     ...
+ <statement>;
+ <statement>;
+ ...
}

式に対して struct 、インスタンスID、object ID(このroomすべてのインスタンスがコードブロックを実行することを示す)、object ID、または特殊キーワードall またはother )のいずれかを使用して、コードを実行する1つまたは複数のインスタンス(またはstruct )を指示することができます。これにより、中括弧 {} 内のコードのスコープが、実際にコードを保持しているインスタンス、struct または関数から、式で指定されたインスタンス(またはインスタンス、struct )に変更されます。

この式で with のスコープが設定されると、指定されたインスタンスが現在の ( self) インスタンスであるかのように、そのインスタンスのそれぞれに対して文が実行されます。つまり、最初の問題に戻って、ボールobject のすべてのインスタンスを 8 ピクセル下に移動させるには、次のように入力します。

with (obj_ball)
{
-     y += 8;
+     y += 8;
}

基本的にこれはloop であり、loop各反復はobject obj_ball の1つのインスタンス上でコードが実行されます。

複数のステートメントを実行したい場合は、他のコードブロックと同じように、中括弧で囲んでください。たとえば、すべてのボールをランダムに移動させ、その速度と方向もランダムにする場合、次のようにします。

with (obj_ball)
{
-     x = random(room_width);
-     y = random(room_height);
-     speed = 1 + random(2);
-     direction = random(360);
+     x = random(room_width);
+     y = random(room_height);
+     speed = 1 + random(2);
+     direction = random(360);
}

上記のように、ステートメント(複数可)内で、指示されたインスタンスまたは構造体が、コードブロックを実行するターゲット(self )インスタンスになりました。これは、元のインスタンス( with とコードブロック全体が含まれている)が、そのインスタンスになったことを意味します。 otherインスタンスです。ですから - たとえば - すべてのボールを実際にコードを含む現在のインスタンスの位置に移動させるには、次のように入力します。

with (obj_ball)
@@ -86,9 +86,9 @@

をもって

{
    if (++count > 10)
    {
-         break;
+         break;
    }
-     hp = 100;
+     hp = 100;
}

上記のコードは、loops のインスタンスをroom obj_Enemyobject に通し、最初に見つけた10個について変数 hp に 100 をセットします。10個以上のインスタンスが存在する場合、withコードは break を呼び出して終了します。

with のループの中で continue を使用する例は以下の通りです。

diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Runtime_Functions.htm b/Manual/contents/GameMaker_Language/GML_Overview/Runtime_Functions.htm index 3cd539d94..99e7e2258 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Runtime_Functions.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Runtime_Functions.htm @@ -43,17 +43,7 @@

ランタイムファンクション

//or more correctly still

var inst = instance_nearest(x, y, obj);
- inst.speed = 0;
-
- function test ()
- {
-     test();
-
-     if (test)
-     {
-         test();
-     }
- } + inst.speed = 0;

マニュアルの言語リファレンスにはruntime 関数の一覧とその使用例、および関数の戻り値やトリガーとなるイベントなどに関する重要な情報が記載されています。ユーザー定義のscript 関数とメソッドの詳細については、「スクリプト関数」と「メソッド変数」のセクションを参照してください。

diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Script_Functions.htm b/Manual/contents/GameMaker_Language/GML_Overview/Script_Functions.htm index 2adb63e7a..81c4f6e6c 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Script_Functions.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Script_Functions.htm @@ -105,7 +105,7 @@

戻り値


function sqr_calc(val)
{
-     if !is_real(val)
+     if (!is_real(val))
    {
        return 0;
    }
@@ -137,8 +137,7 @@

スクリプト名と関数名


indirectCall(method(undefined, myscript), arg);

- // OR
-
+ // 2
function indirectCall(func, arg)
{
    script_execute(func, arg);
diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Structs.htm b/Manual/contents/GameMaker_Language/GML_Overview/Structs.htm index f409c1d1a..875635435 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Structs.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Structs.htm @@ -218,7 +218,7 @@

文字列出力


    toString : function()
    {
-         return "This stuct says " + b + ", " + string(a) + " times!";
+         return "This struct says " + b + ", " + string(a) + " times!";
    }
}
show_debug_message(mystruct); diff --git a/Manual/contents/GameMaker_Language/GML_Overview/Variables_And_Variable_Scope.htm b/Manual/contents/GameMaker_Language/GML_Overview/Variables_And_Variable_Scope.htm index 30bb5e613..88332bb49 100644 --- a/Manual/contents/GameMaker_Language/GML_Overview/Variables_And_Variable_Scope.htm +++ b/Manual/contents/GameMaker_Language/GML_Overview/Variables_And_Variable_Scope.htm @@ -58,9 +58,9 @@

変数と変数のスコープ

そして、組み込みのグローバル変数の例としては、以下のようなものがあります。

ほとんどの組み込み変数は、他の変数と同様に変更・設定が可能で、中には配列にできるものもあります。ただ、すでにデフォルト値で初期化されているため、通常の変数のように作成時に設定する必要はありません。

最後に、何らかの方法で変数を設定、取得、チェックすることに特化した関数が多数あり、次のページから利用できます。

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_ids.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_ids.htm new file mode 100644 index 000000000..a49d9dbfd --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_ids.htm @@ -0,0 +1,68 @@ + + + + + + asset_get_ids + + + + + + + + + + +

asset_get_ids

+

This function gets an array of references to assets of the given asset type.

+

 The returned array contains assets that you added through The Asset Browser as well as assets that you added dynamically at runtime.

+

 For the asset type asset_script the function returns both script assets (the ones you add to The Asset Browser) and the script functions they contain.

+

 

+

Syntax:

+

asset_get_ids(asset_type);

+ + + + + + + + + + + + + + + + + + +
ArgumentTypeDescription
asset_typeAsset Type ConstantThe type of asset to return in the array
+

 

+

Returns:

+

Array of Asset

+

 

+

Example:

+

var _arr_ids = asset_get_ids(asset_sprite);

+

The code above gets all sprites in the game at the time the function is called and stores them in a temporary variable _arr_ids. Sprites that you added before using the sprite_add_* functions are also included.

+

 

+

 

+ + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_index.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_index.htm index 7a147ba24..de40e366e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_index.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_index.htm @@ -4,7 +4,7 @@ asset_get_index - + @@ -38,7 +38,8 @@

リターンです。

var obj = asset_get_index("obj_Enemy_" + string(global.Level));
- if obj > -1
+
+ if (object_exists(obj))
{
    instance_create_layer(random(room_width), random(room_height), obj, "Enemy_Layer");
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_type.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_type.htm index 20066041c..da196932d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_type.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_type.htm @@ -4,7 +4,7 @@ asset_get_type - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_exists.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_exists.htm index 017e2f47f..f5e0ecb39 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_exists.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_exists.htm @@ -4,7 +4,7 @@ extension_exists - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_get_version.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_get_version.htm new file mode 100644 index 000000000..1f73e3a7e --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Extensions/extension_get_version.htm @@ -0,0 +1,74 @@ + + + + + + extension_get_version + + + + + + + + + + +

extension_get_version

+

This functions gets the version of an Extension Asset with the given name, and returns it as a string formatted as "major.minor.revision".

+

 

+

Syntax:

+

extension_get_version(ext_name);

+ + + + + + + + + + + + + + + + + + +
ArgumentTypeDescription
extension_nameStringThe name of the extension
+

 

+

Returns:

+

String

+

 

+

Example:

+

var _version_string = extension_get_version("MyExtension");
+ var _values = string_split(_version_string, ".");
+ var _major = _values[0], _minor = _values[1], _revision = _values[2];
+ show_debug_message($"Version: {_ver}\nMajor: {_major}\nMinor: {_minor}\nRevision:{_revision}");
+ if (_major < 1)
+ {
+     show_debug_message("At least version 1 of the extension is required.");
+     game_end();
+ }

+

The above code first calls extension_get_version to get a string containing the version number of an extension named "MyExtension". It stores the returned value in a temporary variable _version_string and calls string_split on that to get the major and minor version number, as well as the revision number. These are assigned to the temporary variables _major, _minor and _revision respectively. A debug message shows this information. Finally the major version number is checked; if it is too low a debug message is output and the game is ended by calling game_end.

+

 

+

 

+ + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm index a01b5059e..b03cdf572 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm @@ -4,7 +4,7 @@ font_get_info - + @@ -72,6 +72,16 @@

font_get_info

フォントグリフ構造 struct の各グリフの情報を含むfont (詳細は後述します) + + effectsEnabled + Boolean + Whether effects are enabled for this font + + + effectParams + Struct + The effects struct for this font, which can be changed with font_enable_effects +

bolditalic 変数は、ユーザーの設定をfont に反映するだけなので、デフォルトで太字や斜体に表示されるfonts の場合は正確ではないかもしれません。

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_texture.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_texture.htm index 0515adf86..3dbdf1f9a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_texture.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_texture.htm @@ -4,7 +4,7 @@ font_get_texture - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_count.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_count.htm index 3d1d747e0..b2dc99a36 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_count.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_count.htm @@ -46,10 +46,10 @@

© CopyrightYoYo Games Ltd. 2021 All Rights Reserved
\ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_create_layer.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_create_layer.htm index d58203136..df5600f0e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_create_layer.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/instance_create_layer.htm @@ -4,7 +4,7 @@ instance_create_layer - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Paths/path_get_closed.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Paths/path_get_closed.htm index 62573fc0f..6050205bf 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Paths/path_get_closed.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Paths/path_get_closed.htm @@ -4,7 +4,7 @@ path_get_closed - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_add_instance.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_add_instance.htm index e9ab59353..de71e6a18 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_add_instance.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_add_instance.htm @@ -4,7 +4,7 @@ layer_add_instance - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_force_draw_depth.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_force_draw_depth.htm index f2d6069f9..34dff6b3f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_force_draw_depth.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_force_draw_depth.htm @@ -4,7 +4,7 @@ layer_force_draw_depth - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm index 0abd9e4c1..b32da4e32 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm @@ -4,7 +4,7 @@ layer_get_all_elements - + @@ -42,7 +42,7 @@

var a = layer_get_all_elements(layer);
for (var i = 0; i < array_length(a); i++;)
{
-     if layer_get_element_type(a[i]) == layerelementtype_sprite
+     if (layer_get_element_type(a[i]) == layerelementtype_sprite)
    {
        layer_sprite_destroy(a[i])
    }
diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_element_type.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_element_type.htm index 041bd09a4..97dfb939b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_element_type.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_element_type.htm @@ -4,7 +4,7 @@ layer_get_element_type - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_id.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_id.htm index eeac0627d..de2b222a9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_id.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_id.htm @@ -4,7 +4,7 @@ layer_get_id - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_name.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_name.htm index 266f6d026..7e28b4194 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_name.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_name.htm @@ -42,9 +42,9 @@

var a = layer_get_all();
var layer_list = ds_list_create(); for (var i = 0; i Alt; array_length(a); i++;)
{
-     if layer_get_name(a[i]) != ""
+     if (layer_get_name(_arr_layers[i]) != "")
    {
-         ds_list_add(layer_list, a[i])
+         array_push(_arr_layers_named, _arr_layers[i]);
    }
}

上記のコードは、room にあるすべてのレイヤーの ID を取得し、loops にあるレイヤーのうち、名前のついたレイヤーがあるかどうかをチェックしています。もしそうなら、その ID がリストに追加されます。

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_get_instance.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_get_instance.htm index c28f2d885..aba3a6810 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_get_instance.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_get_instance.htm @@ -4,7 +4,7 @@ layer_sequence_get_instance - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_play.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_play.htm index f97f236f1..e4a11956a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_play.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_play.htm @@ -45,9 +45,9 @@

    var a = layer_get_all_elements(layer);
    for (var i = 0; i < array_length(a); i++;)
    {
-         if layer_get_element_type(a[i]) == layerelementtype_sequence
+         if (layer_get_element_type(a[i]) == layerelementtype_sequence)
        {
-             if global.Pause
+             if (global.Pause)
            {
                layer_sequence_pause(a[i]);
            }
diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_destroy.htm index db99d5403..b0d55eb9c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_destroy.htm @@ -37,7 +37,9 @@

リターンです。

var lay_id = layer_get_id("Asset_Trees");
- if layer_sprite_exists(lay_id, global.Asset_spr_trees)
+ var spr_id = layer_sprite_get_id(lay_id, "graphic_254367CB");
+
+ if (layer_sprite_exists(lay_id, spr_id))
{
    layer_sprite_destroy(lay_id);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_exists.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_exists.htm index 73a82e3e6..9f6153e66 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_exists.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_exists.htm @@ -46,7 +46,9 @@

リターンです。

var lay_id = layer_get_id("Asset_Trees");
- if layer_sprite_exists(lay_id, global.TreesSprites)
+ var spr_id = layer_sprite_get_id(lay_id, "graphic_254367CB");
+
+ if (layer_sprite_exists(lay_id, spr_id))
{
    layer_sprite_destroy(lay_id, global.TreesSprites);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/Tile_Map_Layers.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/Tile_Map_Layers.htm index fffada543..8522e9eba 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/Tile_Map_Layers.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/Tile_Map_Layers.htm @@ -8,7 +8,7 @@ - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_destroy.htm index 6dd3cba88..483997f8e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_destroy.htm @@ -4,7 +4,7 @@ layer_tilemap_destroy - + @@ -40,7 +40,7 @@

リターンです。

var lay_id = layer_get_id("Tiles_trees");
var tile_id = layer_tilemap_get_id(lay_id);
- if layer_tilemap_exists(lay_id, tile_id)
+ if (layer_tilemap_exists(lay_id, tile_id))
{
    layer_tilemap_destroy(tile_id);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_exists.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_exists.htm index db9af3f02..808f656f9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_exists.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_exists.htm @@ -4,7 +4,7 @@ layer_tilemap_exists - + @@ -46,7 +46,7 @@

リターンです。

var lay_id = layer_get_id("tilemap_trees");
- if layer_tilemap_exists(lay_id, global.Treestilemap)
+ if (layer_tilemap_exists(lay_id, global.Treestilemap))
{
    layer_tilemap_destroy(lay_id, global.Treestilemap);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_get_id.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_get_id.htm index ea34b5c6a..d70f18946 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_get_id.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_get_id.htm @@ -4,7 +4,7 @@ layer_tilemap_get_id - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_empty.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_empty.htm index 4505fbbbd..77cc4af81 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_empty.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_empty.htm @@ -4,7 +4,7 @@ tile_get_empty - + @@ -46,7 +46,7 @@

    for (var j = 0; j < tilemap_get_height(map_id); j++;)
    {
        var data = tilemap_get(map_id, i, j);
-         if !tile_get_empty(data)
+         if (!tile_get_empty(data))
        {
            data = tile_set_empty(data)
            tilemap_set(map_id, data, i, j);
diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_flip.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_flip.htm index 2e4e51146..9beb03db4 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_flip.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_flip.htm @@ -4,7 +4,7 @@ tile_get_flip - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_index.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_index.htm index a7fdfc88a..678550262 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_index.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_index.htm @@ -4,7 +4,7 @@ tile_get_index - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_mirror.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_mirror.htm index f84454335..e0ac977e4 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_mirror.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_get_mirror.htm @@ -4,7 +4,7 @@ tile_get_mirror - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_empty.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_empty.htm index 079930e95..6c5180354 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_empty.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_empty.htm @@ -4,7 +4,7 @@ tile_set_empty - + @@ -45,7 +45,7 @@

    for (var j = 0; j < tilemap_get_height(map_id); j++;)
    {
        var data = tilemap_get(map_id, i, j);
-         if !tile_get_empty(data)
+         if (!tile_get_empty(data))
        {
            data = tile_set_empty(data)
            tilemap_set(map_id, data, i, j);
diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_mirror.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_mirror.htm index bc01c8cb5..cabeab11e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_mirror.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tile_set_mirror.htm @@ -4,7 +4,7 @@ tile_set_mirror - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_frame.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_frame.htm index a02d15709..db8bea0c4 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_frame.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_frame.htm @@ -41,7 +41,7 @@

リターンです。

var lay_id = layer_get_id("Tiles_Traps");
var map_id = layer_tilemap_get_id(lay_id);
- if tilemap_get_frame(map_id) >= 2 && tilemap_get_frame(map_id) < 4
+ if (tilemap_get_frame(map_id) >= 2 && tilemap_get_frame(map_id) < 4)
{
    global.activate = true;
}
diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_global_mask.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_global_mask.htm index 0b4fca35f..4bdaacf86 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_global_mask.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_global_mask.htm @@ -4,7 +4,7 @@ tilemap_get_global_mask - + @@ -29,7 +29,7 @@

var new_mask = tile_mirror | tile_flip | tile_rotate | 255;
if mask != new_mask
{
-     tilemap_set_global_mask(new_mask);
+     tilemap_set_global_mask(_new_mask);
}

上記のコードでは、すべてのtile マップに関連付けられたグローバルマスク値を取得しています。もしそれが変数 "new_mask" で定義された値と同じでないなら、その値が設定される。

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_mask.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_mask.htm index 32dd2c0cd..1e14e3e5a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_mask.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_mask.htm @@ -4,7 +4,7 @@ tilemap_get_mask - + @@ -45,7 +45,7 @@

var new_mask = tile_mirror | tile_flip | tile_rotate | 255;
if mask != new_mask
{
-     tilemap_set_mask(map_id, new_mask);
+     tilemap_set_mask(_map_id, _new_mask);
}

上記のコードは、与えられたレイヤーからtile マップ ID を取得し、それに関連するマスク値をチェックします。もしそれが変数 "new_mask" で定義された値と同じでないなら、その値が設定される。

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tile_height.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tile_height.htm index 8ebaa3c61..44e79241f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tile_height.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tile_height.htm @@ -4,7 +4,7 @@ tilemap_get_tile_height - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tileset.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tileset.htm index b47f9ab6f..9827794dd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tileset.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_tileset.htm @@ -4,7 +4,7 @@ tilemap_get_tileset - + @@ -41,7 +41,7 @@

リターンです。

var lay_id = layer_get_id("Tiles_trees");
var map_id = layer_tilemap_get_id(lay_id);
- if tilemap_get_tileset(map_id) != ts_Nighttime
+ if (tilemap_get_tileset(map_id) != ts_Nighttime)
{
    tilemap_tileset(map_id, ts_Nighttime);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_global_mask.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_global_mask.htm index 77860d37c..f83764386 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_global_mask.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_global_mask.htm @@ -4,7 +4,7 @@ tilemap_set_global_mask - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_height.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_height.htm index 58831356f..1ca5e52eb 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_height.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_height.htm @@ -45,7 +45,7 @@

リターンです。

var lay_id = layer_get_id("Tiles_Walls");
var map_id = layer_tilemap_get_id(lay_id);
- if tilemap_get_height(map_id) != room_height div 16
+ if (tilemap_get_height(map_id) != room_height div 16)
{
    tilemap_set_height(map_id, room_height div 16);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_mask.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_mask.htm index 5f39e7142..351aa062d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_mask.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_mask.htm @@ -4,7 +4,7 @@ tilemap_set_mask - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_width.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_width.htm index d87668b7d..e0659e1b6 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_width.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_set_width.htm @@ -45,7 +45,7 @@

リターンです。

var lay_id = layer_get_id("Tiles_Walls");
var map_id = layer_tilemap_get_id(lay_id);
- if tilemap_get_width(map_id) != room_width div 16
+ if (tilemap_get_width(map_id) != room_width div 16)
{
    tilemap_set_width(map_id, room_width div 16);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_tileset.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_tileset.htm index 7cd01a253..36653e41c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_tileset.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_tileset.htm @@ -45,7 +45,7 @@

リターンです。

var lay_id = layer_get_id("Tiles_trees");
var tile_id = layer_tilemap_get_id(lay_id);
- if tilemap_get_tileset(tile_id) != ts_Nighttime
+ if (tilemap_get_tileset(tile_id) != ts_Nighttime)
{
    tilemap_tileset(tile_id, ts_Nighttime);
}

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_get_info.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_get_info.htm new file mode 100644 index 000000000..50c1918ff --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_get_info.htm @@ -0,0 +1,859 @@ + + + + + + room_get_info + + + + + + + + + + +

room_get_info

+

This function gets information on a room from storage and returns it as a struct. You can choose to exclude information through the given optional arguments.

+

 The function cannot be used to get the current state of an active room (the current room or an already visited persistent room). In this case it returns the original state of the room.

+

The room must have been previously created using The Asset Browser or added in-game using room_add.

+

The format of the returned struct is as follows:

+

room_info_struct = 
+ {
+     instances: 
+     [
+         {/* Instance Info Struct */},
+         {/* Instance Info Struct */},
+     ],
+     layers:
+     [
+         {
+             elements:
+             [
+                 {/* Layer Element Info Struct */},
+                 {
+                     /* Example */
+                     type: layerelementtype_tilemap,
+                     tiles: [/* Tile Map Data */]
+                 }
+             ]
+         },
+     ],
+     views:
+     [
+         {/* View Info Struct */},
+     ]
+ }

+

The tables below list all the possible structs that can be contained in the returned struct:

+

Room Info

+
+

This is the main struct returned by the function. All variables listed below are present at the root of this returned struct:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Room Info Struct
Variable NameData TypeDescription
widthRealThe width of the room
heightRealThe height of the room
creationCodeScript FunctionThe index of the script function that contains this room's creation code
physicsWorldBooleanWhether the room has a physics world
physicsGravityXRealThe physics world's gravity component along the x axis
physicsGravityYRealThe physics world's gravity component along the y axis
physicsPixToMetersRealThe physics world's pixel-to-metre scale
persistentBooleanWhether the room is persistent
enableViewsBooleanWhether views are enabled for the room
clearDisplayBufferBooleanWhether to clear the display buffer before drawing the room
clearViewportBackgroundBooleanWhether to clear viewports' backgrounds before drawing to them
colourColourThe clear colour used when clearDisplayBuffer is set to true
instancesArray of Room Instance Info StructAn array listing all instances placed in the room with basic information on them
layersArray of Room Layer Info StructAn array listing all room layers, in order of increasing depth
viewsArray of Room View Info StructAn array listing all views, ordered by view index
+
+

Instance Info

+
+

This type of struct represents one instance in the room.

+

These structs are found in the instances array, which is part of the main struct returned by the function.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Instance Info Struct
Variable NameData TypeDescription
idObject InstanceThe instance ID
object_indexStringThe name of the object this is an instance of (use asset_get_index to get the actual object)
xRealThe x coordinate of the instance's position
yRealThe y coordinate of the instance's position
angleRealThe rotation angle of the instance
image_indexRealThe image index used by the instance
image_speedRealThe image speed of the instance
colourColourThe blend colour used to draw the instance
creation_codeScript FunctionThe index of the script function that contains the instance's creation code
pre_creation_codeScript FunctionThe index of the script function that contains the instance's pre-creation code
+
+

Layer Info

+
+

This type of struct represents one layer in the room.

+

These structs are found in the layers array, which is part of the main struct returned by the function.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Layer Info Struct
Variable NameData TypeDescription
idRealThe layer ID
nameStringThe name of the layer
visibleBooleanWhether the layer is visible
depthRealThe depth of the layer
xoffsetRealThe x offset of the layer
yoffsetRealThe y offset of the layer
hspeedRealThe horizontal speed of the layer
vspeedRealThe vertical speed of the layer
effectEnabledBooleanWhether the layer filter/effect is currently enabled
effectToBeEnabledBooleanWhether the layer filter/effect should be enabled/disabled in the next frame (the next value of effectEnabled)
effectFX StructA struct containing the effect's parameters (-1 if no layer effect is set)
shaderIDShader AssetThe shader to be applied to the layer (layer_shader)
elementsArray of Room Layer Element Info StructAn array listing all elements on the layer. Each element type struct contains information specific to it.
+
+

View Info

+
+

This type of struct represents one view in the room.

+

These structs are found in the views array, which is part of the main struct returned by the function.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
View Info Struct
Variable NameData TypeDescription
visibleBooleanWhether the view is visible
cameraIDCamera IDThe camera assigned to this view
xviewRealThe x coordinate of the view camera's position
yviewRealThe y coordinate of the view camera's position
wviewRealThe width of the view's camera
hviewRealThe height of the view's camera
hspeedRealThe horizontal movement speed of the view
vspeedRealThe vertical movement speed of the view
xportRealThe x position on screen where the view is drawn
yportRealThe y position on screen where the view is drawn
wportRealThe width of the viewport
hportRealThe height of the viewport
objectObject AssetThe object of which the first instance in the room should be followed by the camera
hborderRealThe horizontal border around the instance of the object to follow
vborderRealThe vertical border around the instance of the object to follow
+
+

Layer Element Info

+
+

This type of struct represents one element in a layer.

+

These structs are found in the elements array, which is part of a layer struct.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Layer Element Info Struct
Variable NameData TypeDescription
All Element Types
idRealThe unique ID of the element
typeLayer Element Type ConstantThe type of element
Background Element Type
sprite_indexSprite AssetThe sprite used by the background
image_indexRealThe sprite's subimage
xscaleRealThe scale along the x axis
yscaleRealThe scale along the y axis
htiledBooleanWhether to tile the background image horizontally
vtiledBooleanWhether to tile the background image vertically
stretchBooleanWhether to stretch the background so it fills the entire room
visibleBooleanWhether the background should be visible
blendColourColourThe blend colour to draw the background with
blendAlphaRealThe alpha value between 0 and 1 to use
image_speedRealThe image speed of the background
speed_typeSprite Speed ConstantThe units in which image_speed is expressed, either spritespeed_framespersecond or spritespeed_framespergameframe
nameStringThe name of the background
Instance Element Type
inst_idObject InstanceThe ID of the instance
Sprite Element Type
sprite_indexSprite AssetThe sprite index of this sprite element
image_indexRealThe subimage of the sprite
xRealThe x coordinate of the sprite's position
yRealThe y coordinate of the sprite's position
image_xscaleRealThe scale of the image along the x axis
image_yscaleRealThe scale of the image along the y axis
image_angleRealThe image angle
image_alphaRealThe alpha value between 0 and 1
image_blendColourThe blend colour
image_speedRealThe animation speed of the image, expressed in speed_type units
speed_typeSprite Speed ConstantThe units in which image_speed is expressed, either spritespeed_framespersecond or spritespeed_framespergameframe
nameStringThe name of the sprite element as given in The Room Editor (default is graphic_*)
Tile Map Element Type
xRealThe x position (or offset) of the tile map in the room
yRealThe y position (or offset) of the tile map in the room
tileset_indexTile Set AssetThe tile set that this tile map uses
data_maskRealThe bitmask value for the tile map
tilesArray of RealThis variable is only present when the tilemap_data parameter is set to true. It is a one-dimensional array that contains all the tile map data, listed row by row.
widthRealThe width in cells of the tile map
heightRealThe height in cells of the tile map
nameStringThe tile map's name
Particle System Element Type
psParticle System AssetThe particle system
xRealThe x coordinate of the particle system's position
yRealThe y coordinate of the particle system's position
angleRealThe angle by which the particle system is rotated
xscaleRealThe scale along the x axis of the particle system
yscaleRealThe scale along the y axis of the particle system
blendColourThe blend colour to use to draw the particle system
alphaRealThe alpha value between 0 and 1 to use
nameStringThe name of the particle system element as defined in The Room Editor (default is particle_*)
Tile Element Type
visibleBooleanWhether the tile is visible
sprite_indexSprite AssetThe sprite this tile is on
xRealThe x coordinate of the tile position
yRealThe y coordinate of the tile position
widthRealThe width of the tile
heightRealThe height of the tile
image_xscaleRealThe scale factor along the x axis of the tile
image_yscaleRealThe scale factor along the y axis of the tile
image_angleRealThe angle of the tile
image_blendColourThe blend colour to use to draw the tile
image_alphaRealThe alpha to use
xoRealThe x offset
yoRealThe y offset
Sequence Element Type
xRealThe x coordinate of the sequence position
yRealThe y coordinate of the sequence position
image_xscaleRealThe scale along the x axis of the entire sequence
image_yscaleRealThe scale along the y axis of the entire sequence
image_angleRealThe angle by which the sequence is rotated
image_alphaRealThe alpha value between 0 and 1 to use
image_blendColourThe blend colour to use to draw the sequence
image_speedRealThe animation speed of the sequence, expressed in speed_type units
speedTypeSprite Speed ConstantThe units in which image_speed is expressed, either spritespeed_framespersecond or spritespeed_framespergameframe
seq_idSequence AssetThe sequence asset
nameStringThe name of the sequence element as defined in The Room Editor (default is graphic_*)
head_positionRealThe playhead position of the sequence
+
+

 

+

Syntax:

+

room_get_info(room, [views], [instances], [layers], [layer_elements], [tilemap_data]);

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ArgumentTypeDescription
roomRoom AssetThe room to get the info from
viewsBoolean  Whether to include view information in the struct (defaults to true)
instancesBoolean  Whether to include instance information in the struct (defaults to true)
layersBoolean  Whether to include layer information in the struct (defaults to true)
layer_elementsBoolean  Whether to include layer element information in the struct (defaults to true, requires layers to be set to true)
tilemap_dataBoolean  Whether to include tile map data in the struct (defaults to true, requires layers and layer_elements to be set to true)
+

 

+

Returns:

+

Room Info Struct

+

 

+

Example:

+

var _info = room_get_info(Room1);
+ var _info_json = json_stringify(_info, true);
+ show_debug_message(_info_json);

+

The above code gets the information of the room Room1, converts the returned struct to a JSON string using json_stringify, then outputs it in a debug message. All view, instance, layer, layer element and tile map information is included in the output.

+

 

+

 

+ + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_set_persistent.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_set_persistent.htm index c06e60b6b..090287fb1 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_set_persistent.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/room_set_persistent.htm @@ -4,7 +4,7 @@ room_set_persistent - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Scripts/script_get_name.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Scripts/script_get_name.htm index 5d6a80d3e..a5fce40a9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Scripts/script_get_name.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Scripts/script_get_name.htm @@ -4,7 +4,7 @@ script_get_name - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Events_Moments_Broadcast.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Events_Moments_Broadcast.htm index 42c158d53..3812ffc87 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Events_Moments_Broadcast.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Events_Moments_Broadcast.htm @@ -47,9 +47,9 @@

シーケンスイベント


function seq_reverse()
{
-     if mouse_check_button_pressed(mb_left)
+     if (mouse_check_button_pressed(mb_left))
    {
-         if self.headDirection == seqdir_right
+         if (self.headDirection == seqdir_right)
        {
            self.headDirection = seqdir_left;
        }
diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Track_Struct.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Track_Struct.htm index a65e313de..a12b460dd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Track_Struct.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Track_Struct.htm @@ -57,6 +57,11 @@

トラック構造

アレイSequenceKeyframe Structs このプロパティは、トラックのキーフレーム構造体のリストへのアクセスを可能にする。このプロパティを取得する場合、keyframe structs の配列が返されます。このプロパティを設定する場合、keyframe structs の配列を指定する必要があります。 + + enabled + Boolean + This indicates whether this track is enabled. If the track is an asset track it isn't drawn when disabled, if it's a parameter track the track's values aren't applied. +

@@ -157,6 +162,11 @@

タイプ

現在は使用していません。 12 + + seqtracktype_audioeffect + This is an audio effect parameter track. + 19 +

diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequences.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequences.htm index 3dbe4fe5a..8c3dbfc5b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequences.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequences.htm @@ -49,7 +49,7 @@

シーケンス

  • 長さ、再生モード、再生速度など、sequence object のトップレベルの値を設定します。例えば
  • myseq.length = 120;
    - myseq.loopmode = seqplay_pingpong

    + myseq.loopmode = seqplay_pingpong;

    • sequence object にトラックを追加する前に、トラックを作成する必要があります。そこで、関数 sequence_track_new().コード上では、asset トラックとパラメータトラックに違いはありません。これらはすべて単なるトラックで、作成するトラックの種類と、トップレベルトラックのサブトラックとして割り当てられているかどうかによって、動作が異なりますのでご注意ください。つまり、asset のトラックを作成し、それに異なるパラメータ用のサブトラックを割り当て、これらのサブトラックはassetパラメータトラックとして機能します。以下の例では、単一のグラフィックスasset トラックを作成し、後でsequence に追加します。
    @@ -61,7 +61,7 @@

    シーケンス

    // Create a new keyframe struct for a graphics asset track and add it to an array (as you can have multiple keys in a frame)
    var graphickeys = array_create(1);
    graphickeys[0] = sequence_keyframe_new(seqtracktype_graphic);
    - // Set the graphics keyframe top level data for the keyframe position and length, etc...
    + // Set the graphics keyframe top level data for the keyframe position and length, etc.
    graphickeys[0].frame = 0;
    graphickeys[0].length = 1;
    graphickeys[0].stretch = true;
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/in_sequence.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/in_sequence.htm index 97997c364..fd59161fd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/in_sequence.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/in_sequence.htm @@ -4,7 +4,7 @@ in_sequence - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/Shader_Constants.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/Shader_Constants.htm index 3b5d7289b..453156a68 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/Shader_Constants.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/Shader_Constants.htm @@ -70,6 +70,11 @@

    シェーダー定数

    以下の定義済みマトリックスユニフォームと定数をshader で使用することで、GameMaker固有の値にアクセスすることができます。

    + + + + + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_uniform.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_uniform.htm index e8cd4bfcb..0f1988764 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_uniform.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_uniform.htm @@ -4,7 +4,7 @@ shader_get_uniform - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_f.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_f.htm index 4ffe4da45..b860f6385 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_f.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_f.htm @@ -4,7 +4,7 @@ shader_set_uniform_f - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_i_array.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_i_array.htm index 01900e973..50992d501 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_i_array.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_i_array.htm @@ -4,7 +4,7 @@ shader_set_uniform_i_array - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix.htm index f93ad541e..9f2c3ebf5 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix.htm @@ -4,7 +4,7 @@ shader_set_uniform_matrix - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix_array.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix_array.htm index fce126151..9762b46d8 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix_array.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_set_uniform_matrix_array.htm @@ -4,7 +4,7 @@ shader_set_uniform_matrix_array - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shaders_are_supported.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shaders_are_supported.htm index c42aafcc6..83839cd63 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shaders_are_supported.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shaders_are_supported.htm @@ -26,9 +26,9 @@

    リターンです。

    global.GFX = false;
    - if shaders_are_supported()
    + if (shaders_are_supported())
    {
    -     if shader_is_compiled(sh_glass) && shader_is_compiled(sh_warp)
    +     if (shader_is_compiled(sh_glass) && shader_is_compiled(sh_warp))
        {
            global.GFX = true;
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Skeletal_Animation/Skins/skeleton_skin_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Skeletal_Animation/Skins/skeleton_skin_create.htm new file mode 100644 index 000000000..26b0fe35c --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Skeletal_Animation/Skins/skeleton_skin_create.htm @@ -0,0 +1,76 @@ + + + + + + skeleton_skin_create + + + + + + + + + + +

    skeleton_skin_create

    +

    This function creates a new runtime skin for skeletal animation sprites through code.

    +

    The new skin is created with the name that you provide and takes a list of existing skins in the skeletal animation sprite. The attachments that are linked to these skins are included in the new skin. By combining existing skins in this way you can create custom characters (by grouping attachments).

    +

    Creating a skin in this way corresponds visually to pinning a combination of existing skins in the Skins view of the animation tool.

    +

     For skins created using this function you have to pass the struct that it returns to skeleton_skin_set instead of the skin name.

    +

     

    +

    Syntax:

    +

    skeleton_skin_create(name, skins);

    +
    定数
    + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    nameStringThe name of the new skin
    skinsArrayAn array of names (as String) of existing skins in the skeletal animation sprite that will be used in the new skin.
    +

     

    +

    Returns:

    +

    Skeleton Skin Struct

    +

     

    +

    Example:

    +

    var skin = skeleton_skin_create("new_skin", ["hat/red", "shirt/green", "trousers/blue"]);
    + skeleton_skin_set(skin);

    +

    The above code first calls skeleton_skin_create to add a new runtime skin called "new_skin". The skin is created from three existing skins in the skeletal animation sprite: "hat/red", "shirt/green" and "trousers/blue". The result is stored in a temporary variable skin.

    +

    It then sets the skin of the skeletal animation sprite of the current instance to this new skin.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_info.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_info.htm index 4937f52a8..b16722ab1 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_info.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_info.htm @@ -4,7 +4,7 @@ sprite_get_info - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_texture.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_texture.htm index f34a3344d..3f78d3cba 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_texture.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_texture.htm @@ -4,7 +4,7 @@ sprite_get_texture - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_tpe.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_tpe.htm index e65c7d31d..43e3cea0e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_tpe.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_tpe.htm @@ -4,7 +4,7 @@ sprite_get_tpe - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_bottom.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_bottom.htm index 516a242cf..3ff0059d9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_bottom.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_bottom.htm @@ -4,7 +4,7 @@ bbox_bottom - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_left.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_left.htm index c87aa75a8..c99e51487 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_left.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_left.htm @@ -4,7 +4,7 @@ bbox_left - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_right.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_right.htm index d0a982a75..5679dc1fa 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_right.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_right.htm @@ -4,7 +4,7 @@ bbox_right - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_top.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_top.htm index 1cc9ff309..910fb76fd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_top.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/bbox_top.htm @@ -4,7 +4,7 @@ bbox_top - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/image_alpha.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/image_alpha.htm index d15a702a1..1adc98968 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/image_alpha.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Instance_Variables/image_alpha.htm @@ -4,7 +4,7 @@ image_alpha - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_add_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_add_ext.htm new file mode 100644 index 000000000..6ca32eae6 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_add_ext.htm @@ -0,0 +1,155 @@ + + + + + + sprite_add_ext + + + + + + + + + + +

    sprite_add_ext

    +

    This function loads an image from an external file or URL asynchronously and adds it as a new sprite.

    +

    This is the asynchronous version of sprite_add; instead of blocking execution of code and thereby freezing the game, it continues execution of the game's code after the function is called and triggers an asynchronous Image Loaded event once the sprite is fully loaded.

    +

    The supported image file formats are PNG, JPEG, GIF, QOIF and Spine JSON files (the Spine JSON files require that their associated atlas and image files are placed next to them).

    +

     Spine JSON files are only supported for locally stored files, not for files requested via HTTP (the same as for sprite_add).

    +

    The async_load DS Map will contain the following fields in the async Image Loaded event: 

    +
      +
    • "filename" - the path to the file that was originally passed to the function
    • +
    • "id" - the sprite ID, as returned by the function
    • +
    • "http_status" - contains the status value of the HTTP request if one was made, or 200 ("OK") if the image was loaded from a file
    • +
    • "status" - contains a value of 0 or greater to indicate the load was successful, or one of the following (negative) error codes in case something went wrong: 
    • +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Sprite Add Error Constant
    ConstantDescriptionValue
    sprite_add_ext_error_unknownThis is a generic error code when none of the others apply (the HTML5 runner only returns this constant in case of failure).-1
    sprite_add_ext_error_cancelledThis constant indicates that the request was cancelled while it was in progress.-2
    sprite_add_ext_error_spritenotfoundThis constant indicates that a sprite was removed somehow partway through the loading process.-3
    sprite_add_ext_error_loadfailedThis constant indicates that a file loading operation failed.-4
    sprite_add_ext_error_decompressfailedThis constant indicates that image decompression failed (which could be due to e.g. a corrupted file or unsupported image format).-5
    sprite_add_ext_error_setupfailedIndicates that, even though all data was loaded and decompressed, sprite resource creation itself failed.-6
    +
    +

     

    +

    Syntax:

    +

    sprite_add_ext(fname, imgnum, xorig, yorig, prefetch);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    fnameStringThe path to the image file to add as a sprite (either a local file path or a web address)
    imgnumRealThe number of subimages in the file (1 for a single image, GIF or Spine sprite)
    xorigRealThe x position of the new sprite's origin
    yorigRealThe y position of the new sprite's origin
    prefetchBooleanWhether to immediately load the sprite into GPU memory
    +

     

    +

    Returns:

    +

    Sprite Asset

    +

     

    +

    Example:

    +

    Create Event

    +

    sprite_index = -1;
    + new_sprite = sprite_add_ext("my_new_sprite_index.png", 1, 0, 0, true);

    +

    Async Image Loaded Event

    +

    var _sprite_id = async_load[?"id"];
    + if (_sprite_id == new_sprite)
    + {
    +     sprite_index = _sprite_id;
    + }

    +

    Draw Event

    +

    if (sprite_index != -1)
    + {
    +     draw_self();
    + }

    +

    The above example defines code in three Object Events. In the Create event the instance's sprite_index is first set to -1 and the function sprite_add_ext is called with fname set to "my_new_sprite_index.png" (i.e. an image file in the root of the datafiles directory). The sprite ID returned by the function is stored in an instance variable new_sprite.

    +

    In the async Image Loaded event the value stored in async_load[?"id"] is compared to the value in new_sprite. If the two are equal, it means this Image Loaded event was triggered for the call to sprite_add_ext made earlier in the Create event (there may be many other calls to sprite_add_ext). The ID of the newly loaded sprite is then assigned as this instance's sprite_index.

    +

    In the Draw Event instances of the object call draw_self if their sprite_index is not set to -1 (or, rather, no longer set to -1).

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_flush_multi.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_flush_multi.htm index b5e0afc52..af3eef901 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_flush_multi.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_flush_multi.htm @@ -4,7 +4,7 @@ sprite_flush_multi - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_prefetch_multi.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_prefetch_multi.htm index 7b8954a42..191480298 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_prefetch_multi.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_prefetch_multi.htm @@ -4,7 +4,7 @@ sprite_prefetch_multi - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_save_strip.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_save_strip.htm index a5a357fbd..b06096aab 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_save_strip.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_save_strip.htm @@ -4,7 +4,7 @@ sprite_save_strip - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_integer_async.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_integer_async.htm index b29b55fc8..591d78c6c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_integer_async.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_integer_async.htm @@ -4,7 +4,7 @@ get_integer_async - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_login_async.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_login_async.htm index e83c872a8..a222220d0 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_login_async.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_login_async.htm @@ -4,7 +4,7 @@ get_login_async - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_string_async.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_string_async.htm index be0db4a2a..6c3746087 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_string_async.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/get_string_async.htm @@ -4,7 +4,7 @@ get_string_async - + @@ -51,11 +51,11 @@

    拡張された例。

    msg = get_string_async("What's your name?","Anon");

    上記では、ユーザーにstring を入力し、「OK」を押すよう要求するメッセージを表示します。関数IDは変数「msg」に格納され、以下のように非同期ダイアログ・イベントで使用されます。

    var i_d = ds_map_find_value(async_load, "id");
    - if i_d == msg
    + if (i_d == msg)
    {
    -     if ds_map_find_value(async_load, "status")
    +     if (ds_map_find_value(async_load, "status"))
        {
    -         if ds_map_find_value(async_load, "result") != ""
    +         if (ds_map_find_value(async_load, "result") != "")
            {
                global.Name = ds_map_find_value(async_load, "result");
            }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/show_message_async.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/show_message_async.htm index 447df27ee..4465f80ba 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/show_message_async.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Dialog/show_message_async.htm @@ -4,7 +4,7 @@ show_message_async - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/HTTP.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/HTTP.htm index ee43cc3f4..fcddd9b5c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/HTTP.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/HTTP.htm @@ -4,7 +4,7 @@ HTTP - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_get.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_get.htm index e0787d482..29592e84a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_get.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_get.htm @@ -4,7 +4,7 @@ http_get - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_request.htm b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_request.htm index 70a075f0e..ad8624478 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_request.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/HTTP/http_request.htm @@ -4,7 +4,7 @@ http_request - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_load_async.htm b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_load_async.htm index 52909a1eb..858603bcc 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_load_async.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_load_async.htm @@ -60,7 +60,7 @@

    拡張された例。

    上記のコードは、ファイル「Player_Save.sav」の内容を与えられたbuffer にロードし、関数呼び出しのIDを変数「loadid」に格納します。ロードが完了すると、非同期Save/Loadイベントがトリガーされ、 async_load マップを解析して、このように関数の正しいIDを見つけることができます。

    if ds_map_find_value(async_load, "id") == loadid
    {
    -     if ds_map_find_value(async_load, "status") == false
    +     if (ds_map_find_value(async_load, "status") == false)
        {
            show_debug_message("Load failed!");
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_md5.htm b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_md5.htm index eb203dcb6..04979a2b3 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_md5.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_md5.htm @@ -68,5 +68,5 @@

    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_save_async.htm b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_save_async.htm index 7baa6281e..eb2231ba7 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_save_async.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_save_async.htm @@ -61,7 +61,7 @@

    拡張された例。

    上記のコードは、buffer "buff"の内容を与えられた保存ファイルに保存し、関数呼び出しのIDを変数 "saveid"に格納します。保存が完了すると、非同期Save/Loadイベントが発生し、 async_load マップを解析して、このように関数の正しいIDを探すことができます。

    if ds_map_find_value(async_load, "id") == saveid
    {
    -     if ds_map_find_value(async_load, "status") == false
    +     if (ds_map_find_value(async_load, "status") == false)
        {
            show_debug_message("Save failed!");
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_sha1.htm b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_sha1.htm index ffeb164e9..87c4fe134 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_sha1.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Buffers/buffer_sha1.htm @@ -68,5 +68,5 @@

    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/camera_get_view_target.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/camera_get_view_target.htm index e95b38cf0..0db441912 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/camera_get_view_target.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/camera_get_view_target.htm @@ -38,7 +38,7 @@

    リターンです。

    var target = camera_get_view_target(view_camera[0]);
    - if target != obj_Player
    + if (target != obj_Player)
    {
        camera_set_view_target(view_camera[0], obj_Player);
    }

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_hport.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_hport.htm index dc61d4294..23d2b5a4c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_hport.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_hport.htm @@ -1,5 +1,4 @@ - @@ -47,5 +46,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_surface_id.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_surface_id.htm index 6e137597f..e77d86b7b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_surface_id.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_surface_id.htm @@ -4,7 +4,7 @@ view_surface_id - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_wport.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_wport.htm index 8a75c09fc..7d5e8127f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_wport.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/view_wport.htm @@ -1,5 +1,4 @@ - @@ -47,5 +46,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/The_Game_Window.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/The_Game_Window.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/The_Game_Window.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/The_Game_Window.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_center.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_center.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_center.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_center.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_device.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_device.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_device.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_device.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_caption.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_caption.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_caption.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_caption.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_colour.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_colour.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_colour.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_cursor.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_cursor.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_cursor.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_cursor.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_fullscreen.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_fullscreen.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_fullscreen.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_fullscreen.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_height.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_height.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_height.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_height.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_showborder.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_showborder.htm new file mode 100644 index 000000000..7574e87b1 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_showborder.htm @@ -0,0 +1,48 @@ + + + + + window_get_showborder + + + + + + + + + + +

    window_get_showborder

    +

    This function gets whether the game is shown in a borderless window or not.

    +

    It corresponds to the Borderless Window option in the Windows Graphics options; it gets the value of that checkbox in-game.

    +
    +

     

    +

    Syntax:

    +

    window_get_showborder();

    +

     

    +

    Returns:

    +

    Boolean

    +

     

    +

    Example:

    +

    var _border_shown = window_get_showborder();

    +

    The above code gets whether the window border is shown and stores the result in a temporary variable _border_shown.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_visible_rects.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_visible_rects.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_visible_rects.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_visible_rects.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_width.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_width.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_width.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_width.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_x.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_x.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_x.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_x.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_y.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_y.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_get_y.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_y.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_handle.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_handle.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_handle.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_handle.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_has_focus.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_has_focus.htm similarity index 97% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_has_focus.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_has_focus.htm index f4b19d460..27c917709 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_has_focus.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_has_focus.htm @@ -4,7 +4,7 @@ window_has_focus - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_delta_x.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_delta_x.htm new file mode 100644 index 000000000..93cf516a9 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_delta_x.htm @@ -0,0 +1,48 @@ + + + + + + window_mouse_get_delta_x + + + + + + + + + + +

    window_mouse_get_delta_x

    +

    This function returns the X movement delta of the mouse cursor.

    +

    This is the amount of pixels the cursor has moved on the X axis, between the previous and current step of the game.

    +

     This function returns the delta value both when the mouse is locked and when it's not (see window_mouse_get_locked).

    +

     

    +

    Syntax:

    +

    window_mouse_get_delta_x();

    +

     

    +

    Returns:

    +

    Real

    +

     

    +

    Example:

    +
    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_delta_y.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_delta_y.htm new file mode 100644 index 000000000..12c832c5a --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_delta_y.htm @@ -0,0 +1,48 @@ + + + + + + window_mouse_get_delta_y + + + + + + + + + + +

    window_mouse_get_delta_y

    +

    This function returns the Y movement delta of the mouse cursor.

    +

    This is the amount of pixels the cursor has moved on the Y axis, between the previous and current step of the game.

    +

     This function returns the delta value both when the mouse is locked and when it's  not (see window_mouse_get_locked).

    +

     

    +

    Syntax:

    +

    window_mouse_get_delta_y();

    +

     

    +

    Returns:

    +

    Real

    +

     

    +

    Example:

    +
    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_locked.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_locked.htm new file mode 100644 index 000000000..a02b89997 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_locked.htm @@ -0,0 +1,46 @@ + + + + + + window_mouse_get_locked + + + + + + + + + + +

    window_mouse_get_locked

    +

    This function returns if the mouse is locked (true) or not (false).

    +

     

    +

    Syntax:

    +

    window_mouse_get_locked();

    +

     

    +

    Returns:

    +

    Boolean

    +

     

    +

    Example:

    +
    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_get_x.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_x.htm similarity index 97% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_get_x.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_x.htm index c3ce905c7..315fbf0d2 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_get_x.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_x.htm @@ -4,7 +4,7 @@ window_mouse_get_x - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_get_y.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_y.htm similarity index 97% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_get_y.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_y.htm index 5aee89d64..d0646a1ae 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_get_y.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_get_y.htm @@ -4,7 +4,7 @@ window_mouse_get_y - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_set.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_set.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_mouse_set.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_set.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_set_locked.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_set_locked.htm new file mode 100644 index 000000000..ab118d6be --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_mouse_set_locked.htm @@ -0,0 +1,68 @@ + + + + + + window_mouse_set_locked + + + + + + + + + + +

    window_mouse_set_locked

    +

    This function locks the mouse cursor in place inside the window, and makes it invisible.

    +

    Mouse movement can still be read through the functions window_mouse_get_delta_x and window_mouse_get_delta_y.

    +

    The cursor is set back to its previous "visible" state when mouse lock is disabled again, i.e. when the function is called with enable set to false.

    +

     Use window_mouse_get_locked to get the locked state of the mouse.

    +

     

    +

    Syntax:

    +

    window_mouse_set_locked(enable);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    enableBooleanWhether to lock the mouse or not
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example: Basic Use

    +
    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_caption.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_caption.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_caption.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_caption.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_colour.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_colour.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_colour.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_cursor.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_cursor.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_cursor.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_cursor.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_fullscreen.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_fullscreen.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_fullscreen.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_fullscreen.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_max_height.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_max_height.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_max_height.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_max_height.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_max_width.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_max_width.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_max_width.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_max_width.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_min_height.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_min_height.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_min_height.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_min_height.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_min_width.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_min_width.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_min_width.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_min_width.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_position.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_position.htm similarity index 98% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_position.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_position.htm index 00010e143..2ed04bcab 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_position.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_position.htm @@ -4,7 +4,7 @@ window_set_position - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_rectangle.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_rectangle.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_rectangle.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_rectangle.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_showborder.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_showborder.htm new file mode 100644 index 000000000..1752f57a4 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_showborder.htm @@ -0,0 +1,67 @@ + + + + + window_set_showborder + + + + + + + + + + +

    window_set_showborder

    +

    This function sets whether the game is shown in a borderless window or not.

    +

    It corresponds to the Borderless Window option in the Windows Graphics options; it changes the value of that checkbox in-game.

    +
    +

     

    +

    Syntax:

    +

    window_set_showborder(show);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    showBooleanWhether to show the window border
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    window_set_showborder(!window_get_showborder());

    +

    The above line of code toggles the window border. 

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_size.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_size.htm similarity index 100% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_set_size.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_set_size.htm diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_view_mouse_get_x.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_view_mouse_get_x.htm similarity index 98% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_view_mouse_get_x.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_view_mouse_get_x.htm index 34c460a13..7c0b59b19 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_view_mouse_get_x.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_view_mouse_get_x.htm @@ -4,7 +4,7 @@ window_view_mouse_get_x - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_view_mouse_get_y.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_view_mouse_get_y.htm similarity index 98% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_view_mouse_get_y.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_view_mouse_get_y.htm index 05218bf03..688697a64 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_view_mouse_get_y.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_view_mouse_get_y.htm @@ -4,7 +4,7 @@ window_view_mouse_get_y - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_views_mouse_get_x.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_views_mouse_get_x.htm similarity index 99% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_views_mouse_get_x.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_views_mouse_get_x.htm index a65220def..0142c57f8 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_views_mouse_get_x.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_views_mouse_get_x.htm @@ -1,5 +1,4 @@ - @@ -46,5 +45,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_views_mouse_get_y.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_views_mouse_get_y.htm similarity index 99% rename from Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_views_mouse_get_y.htm rename to Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_views_mouse_get_y.htm index 2f02ce346..d881292bf 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_WIndow/window_views_mouse_get_y.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_views_mouse_get_y.htm @@ -1,5 +1,4 @@ - @@ -46,5 +45,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_gui_height.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_gui_height.htm index 2d697f306..ae2ae4a1b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_gui_height.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_gui_height.htm @@ -4,7 +4,7 @@ display_get_gui_height - + @@ -40,10 +40,10 @@

    © CopyrightYoYo Games Ltd. 2022 All Rights Reserved
    \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_width.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_width.htm index e4d800076..3403c3383 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_width.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_width.htm @@ -4,7 +4,7 @@ display_get_width - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_set_sleep_margin.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_set_sleep_margin.htm index 3f6dab773..ad70a4909 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_set_sleep_margin.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_set_sleep_margin.htm @@ -4,7 +4,7 @@ display_set_sleep_margin - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/gif_add_surface.htm b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/gif_add_surface.htm index 1a32fbde3..82ea8f0bb 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/gif_add_surface.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Cameras_And_Display/gif_add_surface.htm @@ -4,7 +4,7 @@ gif_add_surface - + @@ -66,11 +66,11 @@

    リターンです。

    if save_gif == true
    {
    -     if count == 0
    +     if (count == 0)
        {
            gif_image = gif_open(room_width, room_height);
        }
    -     else if count < 30
    +     else if (count < 30)
        {
            gif_add_surface(gif_image, application_surface, 6/100);
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_copy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_copy.htm index f9eb27896..917c2b638 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_copy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_copy.htm @@ -4,7 +4,7 @@ ds_grid_copy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_create.htm index 5473c94a7..dbe340263 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_create.htm @@ -4,7 +4,7 @@ ds_grid_create - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_destroy.htm index a3ae79221..cf144b2b5 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_destroy.htm @@ -4,7 +4,7 @@ ds_grid_destroy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_create.htm index 92c2f115d..b1ccda13c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_create.htm @@ -4,7 +4,7 @@ ds_list_create - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_destroy.htm index 154fc74c3..ea945b55f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_destroy.htm @@ -4,7 +4,7 @@ ds_list_destroy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_list.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_list.htm index d4f9d789e..8394c7a31 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_list.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_list.htm @@ -4,7 +4,7 @@ ds_list_is_list - + @@ -45,7 +45,7 @@

    var size = ds_list_size(ships);
    for (var i = 0; i < size; i++)
    {
    -     if ds_list_is_list(ships, i)
    +     if (ds_list_is_list(ships, i))
        {
            ds_list_destroy(ships[| i]);
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_map.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_map.htm index 258a26926..6bdbf6dd8 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_map.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_is_map.htm @@ -4,7 +4,7 @@ ds_list_is_map - + @@ -45,7 +45,7 @@

    var size = ds_list_size(ships);
    for (var i = 0; i < size; i++)
    {
    -     if ds_list_is_map(ships, i)
    +     if (ds_list_is_map(ships, i))
        {
            ds_map_destroy(ships[| i]);
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_list.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_list.htm index 3af549668..e1afb1976 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_list.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_list.htm @@ -4,7 +4,7 @@ ds_list_mark_as_list - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_map.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_map.htm index 91c4db58c..7d2fe577e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_map.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_mark_as_map.htm @@ -4,7 +4,7 @@ ds_list_mark_as_map - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_replace.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_replace.htm index 5270c7b0d..3091f8b44 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_replace.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_replace.htm @@ -4,7 +4,7 @@ ds_list_replace - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_set.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_set.htm index 747783a3e..1177589e6 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_set.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_set.htm @@ -4,7 +4,7 @@ ds_list_set - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_write.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_write.htm index cbf85a71f..3f2f98201 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_write.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_write.htm @@ -1,5 +1,4 @@ - @@ -13,7 +12,6 @@ -

    ds_list_write

    @@ -61,5 +59,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add.htm index 9260c30cc..490d97c1d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add.htm @@ -1,5 +1,4 @@ - @@ -12,7 +11,6 @@ -

    ds_map_add

    @@ -71,5 +69,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_list.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_list.htm index efae12fef..767e0d840 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_list.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_list.htm @@ -4,7 +4,7 @@ ds_map_add_list - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_map.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_map.htm index eaa9f4217..86e6d79a2 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_map.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_add_map.htm @@ -4,7 +4,7 @@ ds_map_add_map - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_create.htm index 247b1de58..0c91709e0 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_create.htm @@ -4,7 +4,7 @@ ds_map_create - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_destroy.htm index 17803b4fb..c2a0ecfa7 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_destroy.htm @@ -1,5 +1,4 @@ - @@ -12,7 +11,6 @@ -

    ds_map_destroy

    @@ -63,5 +61,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_find_value.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_find_value.htm index 090b494fd..e6234beac 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_find_value.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_find_value.htm @@ -4,7 +4,7 @@ ds_map_find_value - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_list.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_list.htm index bb954d859..7bfd264ac 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_list.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_list.htm @@ -4,7 +4,7 @@ ds_map_is_list - + @@ -46,7 +46,7 @@

    var key = ds_map_find_first(inventory);
    for (var i = 0; i < size; i++)
    {
    -     if ds_map_is_list(inventory, key)
    +     if (ds_map_is_list(inventory, key))
        {
            ds_list_destroy(inventory[? key]);
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_map.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_map.htm index 195fb4bb6..e44149480 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_map.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_is_map.htm @@ -4,7 +4,7 @@ ds_map_is_map - + @@ -46,7 +46,7 @@

    var key = ds_map_find_first(inventory);
    for (var i = 0; i < size; i++)
    {
    -     if ds_map_is_map(inventory, key)
    +     if (ds_map_is_map(inventory, key))
        {
            ds_map_destroy(inventory[? key]);
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace.htm index 4566d8b0f..2f6656132 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace.htm @@ -4,7 +4,7 @@ ds_map_replace - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_list.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_list.htm index f987763b0..6c2a6f9fd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_list.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_list.htm @@ -4,7 +4,7 @@ ds_map_replace_list - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_map.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_map.htm index 40cb5b8c6..735875368 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_map.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_replace_map.htm @@ -4,7 +4,7 @@ ds_map_replace_map - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_set.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_set.htm index 8c5bf3570..610cb9d0c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_set.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_set.htm @@ -4,7 +4,7 @@ ds_map_set - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_write.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_write.htm index bebd2fcb9..7931fabdd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_write.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_write.htm @@ -1,5 +1,4 @@ - @@ -13,7 +12,6 @@ -

    ds_map_write

    @@ -60,5 +58,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_create.htm index 4d11b51c5..982cd1a57 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_create.htm @@ -4,7 +4,7 @@ ds_priority_create - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_destroy.htm index c57a5f8a5..62e7db93b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_destroy.htm @@ -4,7 +4,7 @@ ds_priority_destroy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_write.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_write.htm index db058f007..e46894b61 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_write.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_write.htm @@ -4,7 +4,7 @@ ds_priority_write - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_create.htm index 813243386..befc2ca75 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_create.htm @@ -4,7 +4,7 @@ ds_queue_create - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_destroy.htm index ca036567f..25060c17e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_destroy.htm @@ -4,7 +4,7 @@ ds_queue_destroy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_head.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_head.htm index 856b8b787..54e40e16f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_head.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_head.htm @@ -4,7 +4,7 @@ ds_queue_head - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_tail.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_tail.htm index 70fc182b4..1527588af 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_tail.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_tail.htm @@ -4,7 +4,7 @@ ds_queue_tail - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_write.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_write.htm index 2e7ad4536..283851ac8 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_write.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_write.htm @@ -1,5 +1,4 @@ - @@ -13,7 +12,6 @@ -

    ds_queue_write

    @@ -61,5 +59,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_create.htm index dfefb7428..586cf128c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_create.htm @@ -4,7 +4,7 @@ ds_stack_create - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_destroy.htm index f9f216998..f92f98332 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_destroy.htm @@ -4,7 +4,7 @@ ds_stack_destroy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_exists.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_exists.htm index 8140d7a10..72e94d893 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_exists.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_exists.htm @@ -4,7 +4,7 @@ ds_exists - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_set_precision.htm b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_set_precision.htm index 50da54072..a4dd92280 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_set_precision.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Data_Structures/ds_set_precision.htm @@ -4,7 +4,7 @@ ds_set_precision - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_section.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_section.htm new file mode 100644 index 000000000..82630c468 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_section.htm @@ -0,0 +1,76 @@ + + + + + + dbg_section + + + + + + + + + + +

    dbg_section

    +

    This function creates a section in the debug view last added with dbg_view and shows it in The Debug Overlay.

    +

     If no debug view is active then the section is added to a new debug view named "Default".

    +

    Usage Notes

    +
      +
    • A debug section groups together multiple debug controls inside a debug view.
    • +
    • Most controls span two columns, others only a single one (dbg_text and dbg_button).
    • +
    • Two single-column controls can be placed on the same row by calling dbg_same_line.
    • +
    • A debug section's contents can be copy-pasted to and from the clipboard as JSON using the Copy and Paste buttons.
    • +
    +

     

    +

    Syntax:

    +

    dbg_section(name);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    nameStringThe name of the new debug section
    +

     

    +

    Returns:

    +

    Debug Section Pointer

    +

     

    +

    Example:

    +

    dbg_view("CustomDebugView");
    + dbg_section("Player Variables"); +

    +

    The code above creates a new debug view using dbg_view named "CustomDebugView" and adds a new section "Player Variables" to it using dbg_section.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_slider.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_slider.htm new file mode 100644 index 000000000..fc3597f64 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_slider.htm @@ -0,0 +1,86 @@ + + + + + + dbg_slider + + + + + + + + + + +

    dbg_slider

    +

    This function creates a slider control for a Real value within the current debug section.

    +

    You can optionally provide a minimum and maximum value for the slider.

    +
    +

     

    +

    Syntax:

    +

    dbg_slider(ref[, minimum, maximum, label]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    refReferenceA reference to a Real value, created using ref_create
    minimumReal  The minimum value that the slider can have
    maximumReal  The maximum value that the slider can have
    labelString  The label to show next to the slider
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    Create Event

    +

    my_var = 7;
    + dbg_slider(ref_create(self, "my_var"), 0, 10); +

    +

    The above code is executed in an object's Create event, or any other event that isn't performed continuously. First, an instance variable my_var is set. Then, a slider control is created using dbg_slider. It receives a reference to the variable, returned by ref_create, and values of 0 and 10 for the minimum and maximum parameters. Dragging the slider changes the value of the instance's my_var variable.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_sprite.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_sprite.htm new file mode 100644 index 000000000..ebda84c33 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_sprite.htm @@ -0,0 +1,84 @@ + + + + + + dbg_sprite + + + + + + + + + + +

    dbg_sprite

    +

    This function creates a sprite view of the referenced sprite with the specified image index within the current debug section.

    +

    A reference, created using ref_create, is passed for both the sprite and the image index.

    +
    +

     

    +

    Syntax:

    +

    dbg_sprite(sprite_ref, image_index_ref[, label]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    sprite_refReferenceA reference to a variable holding a sprite index, created using ref_create
    image_index_refReferenceA reference to a variable that holds the image index to show, created using ref_create
    labelString  The label to display next to the sprite view
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example: Sprite View for an Instance's Sprite

    +

    Create Event

    +

    ref_to_sprite = ref_create(self, "sprite_index");
    + ref_to_image_index = ref_create(self, "image_index");
    + dbg_sprite(ref_to_sprite, ref_to_image_index); +

    +

    The above code sets up a basic sprite view for an instance's sprite. The code is added to an event that is only executed once, e.g. the Create event.

    +

    First, two references are created using ref_create: one to the current instance's sprite_index variable (stored in ref_to_sprite), the other to the instance's image_index variable (stored in ref_to_image_index). Next, the sprite view is created using dbg_sprite, with arguments the two references created before.

    +

    The sprite's frame will change based on the value of image_index, and so is drawn animated in the sprite view. The sprite will also change whenever the instance's sprite_index changes.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_view.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_view.htm new file mode 100644 index 000000000..b1447dcf4 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/dbg_view.htm @@ -0,0 +1,101 @@ + + + + + + dbg_view + + + + + + + + + + +

    dbg_view

    +

    This function creates a custom debug view and shows it in The Debug Overlay.

    +

    A debug view is a custom window in this overlay that contains sections that you can add controls to. The controls can change the value of the variable they reference.

    +

    References to variables can be created using ref_create.

    +

    Usage Notes

    +
      +
    • The function returns a pointer to the debug view that can be used with dbg_view_delete to delete it again.
    • +
    • A debug view contains one or more debug sections, that you add using dbg_section.
    • +
    • All custom debug views are listed under the Views menu and can have their visibility changed there.
    • +
    +

     

    +

    Syntax:

    +

    dbg_view(name, visible[, x, y, width, height]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    nameStringThe name of the debug view
    visibleBooleanWhether the debug view should be visible when the debug overlay is opened
    xReal  The x position of the debug view, the default -1 indicates it can be placed anywhere
    yReal  The y position of the debug view, the default -1 indicates it can be placed anywhere
    widthReal  The width of the debug view (default is 500)
    heightReal  The height of the debug view (default is 400)
    +


    + +

    +

    Returns:

    +

    Debug View Pointer

    +

     

    +

    Example:

    +

    dbg_view("CustomDebugView", true);

    +

    The above code creates a new debug view named "CustomDebugView" and brings up The Debug Overlay with the debug view visible.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/debug_get_callstack.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/debug_get_callstack.htm index 9c07a38b6..af662a1ce 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/debug_get_callstack.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/debug_get_callstack.htm @@ -4,7 +4,7 @@ debug_get_callstack - + @@ -47,10 +47,10 @@

    リターンです。

    if debug_mode
    {
    -     if keyboard_check(vk_escape)
    +     if (keyboard_check(vk_escape))
        {
            var _a = debug_get_callstack(4);
    -         for (var i = 0; i < array_length_id(_a); ++i;)
    +         for (var i = 0; i < array_length(_a); i++)
            {
                show_debug_message(_a[i]);
            }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/fps_real.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/fps_real.htm index 7f86dddd8..b1f8973ca 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/fps_real.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/fps_real.htm @@ -4,7 +4,7 @@ fps_real - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/show_debug_overlay.htm b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/show_debug_overlay.htm index f5fe1ceb7..81f4c6bcc 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Debugging/show_debug_overlay.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Debugging/show_debug_overlay.htm @@ -4,7 +4,7 @@ show_debug_overlay - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_button.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_button.htm index 6d13b284c..aed792df7 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_button.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_button.htm @@ -4,7 +4,7 @@ draw_button - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_ellipse.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_ellipse.htm index 4aeaf7c28..e3d97996b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_ellipse.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_ellipse.htm @@ -4,7 +4,7 @@ draw_ellipse - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_healthbar.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_healthbar.htm index bbe4e4a4e..9c77d0d31 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_healthbar.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_healthbar.htm @@ -4,7 +4,7 @@ draw_healthbar - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line.htm index 3cf9d36e3..d8eef1962 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line.htm @@ -4,7 +4,7 @@ draw_line - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_colour.htm index 830d8d6ca..2e6e59bc1 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_colour.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_colour.htm @@ -4,7 +4,7 @@ draw_line_colour - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_width.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_width.htm index 272351163..6ad0bf304 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_width.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_line_width.htm @@ -4,7 +4,7 @@ draw_line_width - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_path.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_path.htm index b6a48931d..01c16b424 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_path.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_path.htm @@ -4,7 +4,7 @@ draw_path - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_point_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_point_colour.htm index 4dc0c4ebf..267db0459 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_point_colour.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_point_colour.htm @@ -4,7 +4,7 @@ draw_point_colour - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_rectangle_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_rectangle_colour.htm index db8d879e1..0d13ec305 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_rectangle_colour.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_rectangle_colour.htm @@ -4,7 +4,7 @@ draw_rectangle_colour - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect.htm index a189f121d..eaa9d4764 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect.htm @@ -4,7 +4,7 @@ draw_roundrect - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour.htm index 0e03b6753..7a63d8b4a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour.htm @@ -4,7 +4,7 @@ draw_roundrect_colour - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour_ext.htm index 6909d0f9c..e9333b6be 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour_ext.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_colour_ext.htm @@ -4,7 +4,7 @@ draw_roundrect_colour_ext - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_ext.htm index d1206cfff..d47fb5023 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_ext.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_roundrect_ext.htm @@ -4,7 +4,7 @@ draw_roundrect_ext - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_set_circle_precision.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_set_circle_precision.htm index 6d78209a7..52c2d68e9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_set_circle_precision.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Basic_Forms/draw_set_circle_precision.htm @@ -4,7 +4,7 @@ draw_set_circle_precision - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Colour_And_Alpha/draw_clear_alpha.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Colour_And_Alpha/draw_clear_alpha.htm index 06fcff7cd..d31b80c79 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Colour_And_Alpha/draw_clear_alpha.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Colour_And_Alpha/draw_clear_alpha.htm @@ -4,7 +4,7 @@ draw_clear_alpha - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode.htm index 3c343dec9..8c9da8a92 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode.htm @@ -4,7 +4,7 @@ gpu_get_blendmode - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_dest.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_dest.htm index 6551c7311..d128967c4 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_dest.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_dest.htm @@ -4,7 +4,7 @@ gpu_get_blendmode_dest - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_destalpha.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_destalpha.htm index 49440284f..cc34d8c42 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_destalpha.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_destalpha.htm @@ -4,7 +4,7 @@ gpu_get_blendmode_destalpha - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext.htm index 20be4c516..544f7db9c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext.htm @@ -4,7 +4,7 @@ gpu_get_blendmode_ext - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext_sepalpha.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext_sepalpha.htm index 960c65f3b..c262c086b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext_sepalpha.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext_sepalpha.htm @@ -4,7 +4,7 @@ gpu_get_blendmode_ext_sepalpha - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_src.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_src.htm index 0f3a4f46f..d8d4cd65d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_src.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_src.htm @@ -4,7 +4,7 @@ gpu_get_blendmode_src - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_srcalpha.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_srcalpha.htm index 317df95e3..b3d65b4e2 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_srcalpha.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_srcalpha.htm @@ -4,7 +4,7 @@ gpu_get_blendmode_srcalpha - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode.htm index 825c3ce91..6e5ef2732 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode.htm @@ -4,7 +4,7 @@ gpu_set_blendmode - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext.htm index 2b100c9da..304b54766 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext.htm @@ -4,7 +4,7 @@ gpu_set_blendmode_ext - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext_sepalpha.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext_sepalpha.htm index 6fef946a3..b32c2f589 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext_sepalpha.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendmode_ext_sepalpha.htm @@ -4,7 +4,7 @@ gpu_set_blendmode_ext_sepalpha - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_colourwriteenable.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_colourwriteenable.htm index b511cee66..db60fac35 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_colourwriteenable.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_colourwriteenable.htm @@ -3,8 +3,8 @@ - gpu_set_colorwriteenable - + gpu_set_colourwriteenable + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_depth.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_depth.htm new file mode 100644 index 000000000..4f4faacb7 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_depth.htm @@ -0,0 +1,112 @@ + + + + + + gpu_set_depth + + + + + + + + + + +

    gpu_set_depth

    +

    This function sets the depth (i.e. the z coordinate) for GameMaker's 2D drawing functions (sprites, shapes, primitives, text, etc.)

    +

    By default, GameMaker uses the layer's depth when drawing flat graphics, but this function allows you to use your own. This can be used to draw at a different depth, or draw individual sprites/primitives at their own depths.

    +

     This function doesn't change the depth of the layer when called in a layer begin script (see layer_script_begin). If you need to change the depth of a specific layer in the layer begin script you should do so using layer_force_draw_depth instead.

    +

     GameMaker only changes the depth when it starts drawing a new layer, so you may want to restore the original depth (saved previously from gpu_get_depth) after you're done drawing, so any subsequent calls will not be affected by your depth change.

    +
    +

     

    +

    Syntax:

    +

    gpu_set_depth(depth);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    depthRealThe new depth value to use for drawing
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example 1: "depth = -y"

    +

    Draw Event

    +

    var _zwrite = gpu_get_zwriteenable();
    + var _ztest = gpu_get_ztestenable();
    + gpu_set_zwriteenable(true);
    + gpu_set_ztestenable(true);
    + var _depth = gpu_get_depth();
    +
    + gpu_set_depth(-y);
    +
    + draw_self();
    +
    + gpu_set_depth(_depth);
    + gpu_set_zwriteenable(_zwrite);
    + gpu_set_ztestenable(_ztest); +

    +

    The above code sets the depth used for drawing to the current instance's -y. This gives an easy way to draw instances behind other instances once they move "behind" them, if those instances also have their depth set to -y.

    +

    First, z-writing and z-testing are enabled on the GPU using gpu_set_zwriteenable and gpu_set_ztestenable. Their current values are stored in temporary variables _zwrite and _ztest respectively, as well as the current depth, which is stored in a temporary variable _depth. The depth is then set to the instance's -y using gpu_set_depth and the instance is drawn normally using draw_self.

    +

    Finally, depth, z-writing and z-testing are all set to their previous value in order to not affect further drawing.

    +

     

    +

    Example 2: Drawing an Hourglass Shape using Circles

    +

    Draw Event

    +

    gpu_set_zwriteenable(true);
    + gpu_set_ztestenable(true);
    + matrix_set(matrix_view, matrix_build_lookat(220, 0, 90, 0, 0, 90, 0, 0, 1));
    + matrix_set(matrix_projection, matrix_build_projection_perspective_fov(60, room_width/room_height, 1, 10000));
    +
    + var _depth = gpu_get_depth(); // store previous depth
    + var _col = draw_get_colour();
    +
    + var n = 180;
    + for (var z = 0; z <= n; z += 10)
    + {
    +     gpu_set_depth(z);
    +     draw_set_colour(make_color_hsv(z / n * 255, 150, 250));
    +     draw_circle(0, 0, 40 + lengthdir_x(20, z / n * 360), false);
    + }
    +
    + draw_set_colour(_col);
    + gpu_set_depth(_depth);        // restore previous depth +

    +

    The code above draws a coloured hourglass-like shape in the Draw event.

    +

    First, z-writing and z-testing are enabled (gpu_set_zwriteenable and gpu_set_ztestenable) and an appropriate projection (matrix_build_projection_perspective_fov) and view matrix (matrix_build_lookat) are built and set using matrix_set. Next, the current depth value and draw colour are stored so they can be restored later.

    +

    After this, a couple of circles are drawn in a for loop using draw_circle. The depth used to draw each circle is set to the value of the loop variable z, which is increased by 10 every iteration. The radius of the circle varies in a way that the final shape looks like an hourglass shape. The draw colour is changed to bring variation in the colours of the circles.

    +

    Finally, the draw colour and depth are set back to the values they had before, in order to not affect further drawing on the instance's layer.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_texrepeat_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_texrepeat_ext.htm index 116b9c2f4..1010da1a1 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_texrepeat_ext.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_texrepeat_ext.htm @@ -4,7 +4,7 @@ gpu_set_texrepeat_ext - + @@ -42,13 +42,13 @@

    リターンです。

    var s_tex = shader_get_sampler_index(shader_glass, "s_NoiseSampler");
    - if gpu_get_texfilter_ext(s_tex)
    + if (gpu_get_texrepeat_ext(s_tex))
    {
    -     gpu_set_texfilter_ext(s_tex, false);
    +     gpu_set_texrepeat_ext(s_tex, false);
    }
    else
    {
    -     gpu_set_texfilter_ext(s_tex, true);
    +     gpu_set_texrepeat_ext(s_tex, true);
    }

    上記のコードは、特定のサンプラーID(ローカル変数に格納)に対して、texture フィルタリングがオンかオフかを確認し、それに応じて切り替えています。

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_get_lighting.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_get_lighting.htm index a3df61850..7b2fa9dc2 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_get_lighting.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_get_lighting.htm @@ -4,7 +4,7 @@ draw_get_lighting - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_define_point.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_define_point.htm index 2f4561f84..b7a225ce9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_define_point.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_define_point.htm @@ -4,7 +4,7 @@ draw_light_define_point - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_enable.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_enable.htm index 0f19c2006..6cc5db1c0 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_enable.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_enable.htm @@ -4,7 +4,7 @@ draw_light_enable - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get.htm index ae487f6a2..a285a4d27 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get.htm @@ -4,7 +4,7 @@ draw_light_get - + @@ -73,7 +73,7 @@

    リターンです。

    light_a = draw_light_get(1);
    - if light_a[5] < 200
    + if (light_a[5] < 200)
    {
        light_a[5] += 5;
        draw_light_define_point(1, 200, 123, 50, light_a[5], c_white);
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get_ambient.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get_ambient.htm index e07c9db96..b60fc04b4 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get_ambient.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get_ambient.htm @@ -4,7 +4,7 @@ draw_light_get_ambient - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_set_lighting.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_set_lighting.htm index 9c3f0cd1a..6d4fe0a0c 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_set_lighting.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_set_lighting.htm @@ -4,7 +4,7 @@ draw_set_lighting - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_get_tex_mip_enable.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_get_tex_mip_enable.htm index e2bbb47b8..c646d24c3 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_get_tex_mip_enable.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_get_tex_mip_enable.htm @@ -4,7 +4,7 @@ gpu_get_tex_mip_enable - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_set_tex_mip_enable.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_set_tex_mip_enable.htm index e4ca729b0..33e57b63e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_set_tex_mip_enable.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_set_tex_mip_enable.htm @@ -4,7 +4,7 @@ gpu_set_tex_mip_enable - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_delay.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_delay.htm new file mode 100644 index 000000000..b9d1037d5 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_delay.htm @@ -0,0 +1,100 @@ + + + + + + part_emitter_delay + + + + + +

    part_emitter_delay

    +

    This function sets the delay before the particle emitter creates particles for the first time when it is in stream mode.

    +

    The value for the delay is chosen to be a random value between delay_min and delay_max.

    +
    +

     

    +

    Syntax:

    +

    part_emitter_delay(ps, ind, delay_min, delay_max, delay_unit);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    psParticle System InstanceThe index of the particle system containing the emitter
    indParticle Emitter IDThe emitter index
    delay_minRealThe minimum possible value for the delay, expressed in delay_unit
    delay_maxRealThe maximum possible value for the delay, expressed in delay_unit
    delay_unitTime Source Unit ConstantThe unit in which delay_min and delay_max are expressed
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +
    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_enable.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_enable.htm new file mode 100644 index 000000000..db48d1d8f --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_enable.htm @@ -0,0 +1,106 @@ + + + + + + part_emitter_enable + + + + + + + + + + +

    part_emitter_enable

    +

    This function enables or disables the given particle emitter.

    +

    Usage Notes

    + +

     

    +

    Syntax:

    +

    part_emitter_enable(ps, ind, enable);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    psParticle System IDThe index of the particle system the emitter's in
    indParticle Emitter IDThe index of the emitter to change
    enableBooleanWhether to enable the emitter or not
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

     

    +

    Create Event

    +

    ps = part_system_create();
    +
    + pe1 = part_emitter_create(ps);
    + part_emitter_region(ps, pe1, 100, 200, 100, 200, ps_shape_rectangle, ps_distr_gaussian);
    + part_emitter_enable(ps, pe1, false);
    + pe2 = part_emitter_create(ps);
    + part_emitter_region(ps, pe2, 200, 300, 100, 200, ps_shape_rectangle, ps_distr_gaussian);
    +
    + pt = part_type_create();
    + part_type_speed(pt, 2, 2, 0, 0);
    + part_type_direction(pt, 90, 90, 0, .2);
    +
    + part_emitter_stream(ps, pe1, pt, 2);
    + part_emitter_stream(ps, pe2, pt, 2); +

    +

    Cleanup Event

    +

    part_emitter_destroy(ps, pe1);
    + part_emitter_destroy(ps, pe2);
    + part_system_destroy(ps);
    + part_type_destroy(pt);

    +

    The above code creates a particle system ps in the Create event and adds two emitters to it: pe1 and pe2. The emitters are each configured to emit particles in a rectangular region of 100x100 pixels, using a gaussian distribution (i.e. more particles in the center). Emitter pe1 is set to disabled using part_emitter_enable. A particle type pt is then created and its speed and direction configured so all particles of this type will move upward with a constant speed of 2 pixels per step.

    +

    The two emitters are then "turned on" using part_emitter_stream: each of them is configured to create two particles per step. Since pe1 was set to disabled, it will not emit any particles. pe2 is enabled and emits particles normally.

    +

    Finally, since they're dynamic resources, the particle emitters, the system and the type are all destroyed in the Cleanup event.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_interval.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_interval.htm new file mode 100644 index 000000000..7e8046052 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_interval.htm @@ -0,0 +1,87 @@ + + + + + + part_emitter_interval + + + + + + + + + + +

    part_emitter_interval

    +

    This function sets the interval between two consecutive bursts for the given emitter in case it is working in stream mode.

    +

    Every time the interval timer times out, i.e. after every burst, a new value for the interval is chosen as a random value between interval_min and interval_max.

    +
    +

     

    +

    Syntax:

    +

    part_emitter_interval(ps, ind, interval_min, interval_max, interval_unit);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    psParticle System InstanceThe index of the particle system the emitter is in
    indParticle Emitter IDThe index of the particle emitter
    interval_minRealThe minimum possible value for the interval, expressed in interval_unit
    interval_maxRealThe maximum possible value for the interval, expressed in interval_unit
    interval_unitTime Source Unit ConstantThe unit in which the interval values are expressed
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +
    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Systems/part_system_global_space.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Systems/part_system_global_space.htm new file mode 100644 index 000000000..83e0139d3 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Systems/part_system_global_space.htm @@ -0,0 +1,117 @@ + + + + + + part_system_global_space + + + + + + + + + + +

    part_system_global_space

    +

    This function enables global space particles for the given particle system.

    +

    When global space particles are disabled (the default), the positions of the particles are relative to the particle system's position. When you move such a particle system, its particles will move with it.

    +

    Enabling global space allows you to move a particle system without moving the particles in it. This can be used e.g. to create a trail of particles: 

    + + + + + + + + + + + + + + + + + +
    DisabledEnabled
    +

    In the example above, individual particles are being created in the particle system at the same position, and the particle system itself is being moved to the ship's location every frame.

    +

    The first video shows global space disabled, so all particles stick to its system, however in the second video particles stay in the room position where they were created.

    +

    Once enabled, you can move and rotate your particle systems with part_system_position and part_system_angle respectively, without moving the individual particles inside them.

    +

     If you enable global space on a particle system that already has particles inside it, you may see those existing particles jump to new positions on the screen as they switch from being relative to the particle system to being relative to the room origin.

    +

     

    +

    Syntax:

    +

    part_system_global_space(ind, enable);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    indParticle System IDThe index of the particle system
    enableBooleanWhether to enable or disable global space particles
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example: Particle System Following an Instance

    +

    Create Event

    +

    ps = part_system_create();
    + part_system_global_space(ps, true);
    + pe = part_emitter_create(ps);
    +
    + pt = part_type_create();
    + part_type_shape(pt, pt_shape_flare);
    + part_type_direction(pt, 0, 360, 0, 0.3);
    + part_type_speed(pt, 0.1, 0.2, 0, 0.01);
    + part_type_scale(pt, 0.3, 0.3);
    +
    + part_emitter_stream(ps, pe, pt, 2); +

    +

    Step Event

    +

    part_system_position(ps, x, y);
    + part_system_angle(ps, direction);

    +

    Clean Up Event

    +

    part_emitter_destroy(pe);
    + part_system_destroy(ps);
    + part_type_destroy(pt);

    +

    The above code shows how to add a particle system to an instance, so that it leaves a trail of particles behind when the instance is moved around.

    +

    In the Create event a basic particle system is set up, with a single emitter added to it. Using part_system_global_space, it is configured to have its particles in global space. A basic particle type is also added, which is configured to have a flare shape (pt_shape_flare), a starting direction that can be any random value between 0 and 360, a starting speed anywhere between 0.1 and 0.2 pixels per step and a scale factor of 0.3.

    +

    In the Step event the particle system's position and angle are set to the instance's (x, y) position and its direction, respectively.

    +

    Finally, in the Clean Up event, the particle emitter, system and type are destroyed in order to prevent memory leaks.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_colour_hsv.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_colour_hsv.htm index 72a680c68..1167ab8fd 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_colour_hsv.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_colour_hsv.htm @@ -4,7 +4,7 @@ part_type_colour_hsv - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/effect_create_depth.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/effect_create_depth.htm new file mode 100644 index 000000000..6477caba7 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Particles/effect_create_depth.htm @@ -0,0 +1,96 @@ + + + + + + effect_create_depth + + + + + + + + + + +

    effect_create_depth

    +

    This function creates a simple particle effect at the given depth.

    +

    You supply a depth value and a particle kind, along with its position, size and colour. The size takes three possible values: 0 (small), 1 (medium), or 2 (large).

    +

     The effect types ef_rain and ef_snow don't use the x/y position (although you must still provide them).

    +
    +

    The available constants for the different particle kinds are: 

    +
    +

     

    +

    Syntax:

    +

    effect_create_depth(depth, kind, x, y, size, colour);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    depthRealThe depth at which to create the effect
    kindEffect Type ConstantThe kind of effect to create
    xRealThe x position to create the effect at (unused by ef_rain and ef_snow)
    yRealThe y position to create the effect at (unused by ef_rain and ef_snow)
    sizeRealThe size of the effect (0 = small, 1 = medium, 2 = large)
    colourColourThe colour of the effect
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    effect_create_depth(depth, ef_explosion, x, y, 2, c_dkgray);

    +

    The code above creates a large, dark gray coloured explosion particle effect (ef_explosion) at the depth and x, y position of the calling instance.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin.htm index dc2403697..da02171c5 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin.htm @@ -4,7 +4,7 @@ draw_primitive_begin - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin_texture.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin_texture.htm index cded3209f..67bf0778f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin_texture.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin_texture.htm @@ -4,7 +4,7 @@ draw_primitive_begin_texture - + @@ -45,8 +45,8 @@

    リターンです。

    draw_set_colour(c_white);
    - var tex = sprite_get_texture(spr_Background, 0);
    - draw_primitive_begin_texture(pr_trianglestrip, tex);
    + var _tex = sprite_get_texture(spr_Background, 0);
    + draw_primitive_begin_texture(pr_trianglestrip, _tex);
    draw_vertex_texture(0, 0, 0, 0);
    draw_vertex_texture(640, 0, 1, 0);
    draw_vertex_texture(0, 480, 0, 1);
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_end.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_end.htm index 08dfc1298..b962fc9bb 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_end.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_end.htm @@ -1,5 +1,4 @@ - @@ -47,5 +46,5 @@

    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture.htm index 9253eed44..454d9862a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture.htm @@ -4,7 +4,7 @@ draw_vertex_texture - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture_colour.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture_colour.htm index 7d0fca5ef..050f3217b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture_colour.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_vertex_texture_colour.htm @@ -1,5 +1,4 @@ - @@ -83,5 +82,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm index 83e90e266..28a7f7200 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm @@ -9,8 +9,8 @@ - - + + @@ -114,6 +114,10 @@

    vertex_format_add_custom

    vertex_usage_sample サンプラーインデックス + + vertex_usage_psize + point size for point sprites +


    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit.htm index bd52d1c7b..342693b02 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit.htm @@ -4,7 +4,7 @@ vertex_submit - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit_ext.htm new file mode 100644 index 000000000..5cbb09ad5 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_submit_ext.htm @@ -0,0 +1,151 @@ + + + + + + vertex_submit_ext + + + + + + + + + + +

    vertex_submit_ext

    +

    This function submits a range of vertices in the given vertex buffer to the GPU for drawing.

    +

    The range is provided as an offset and number of vertices to submit. The offset can be any value greater than 0, the number of vertices the actual number to submit, or the value -1 to indicate that all vertices starting at the offset should be submitted.

    +
    +

    Usage Notes

    +
      +
    • This function can only be used in the Draw Events.
    • +
    • The function supports both regular and frozen vertex buffers.
    • +
    • The number of vertices must be in accordance with the primitive type you're drawing.
    • +
    • You can use vertex_submit if you need to submit the entire vertex buffer.
    • +
    • Triangle fans (pr_trianglefan) are converted to pr_trianglelist internally on platforms that don't support them when you call this function.
    • +
    +

     

    +

    Syntax:

    +

    vertex_submit_ext(buffer, primtype, texture, offset, number);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    bufferVertex BufferThe vertex buffer to use.
    primtypePrimitive Type ConstantThe primitive type to use.
    textureTextureThe texture to use (or -1 for no texture).
    offsetRealThe offset in the vertex buffer, or, the index of the first vertex in the buffer to submit. Must be > 0. Use -1 to submit all vertices after the given offset.
    numberRealThe number of vertices to submit. This value is clamped to the size of the vertex buffer.
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example 1: Basic Use

    +

    Draw Event

    +

     vertex_submit_ext(vb, pr_trianglelist, -1, 5, 6);

    +

    The above code shows a basic call to the function vertex_submit_ext. The number of vertices is 6, which is a multiple of 3, as required for the primitive type used pr_trianglelist.

    +

     

    +

    Example 2: Progressively Drawing a Line

    +

    Create Event

    +

    vb = vertex_create_buffer();
    + vertex_begin(vb, fmt_default);
    + repeat(100)
    + {
    +     vertex_position_3d(vb, random(room_width), random(room_height), 0);
    +     vertex_color(vb, c_white, 1);
    +     vertex_texcoord(vb, 0, 0);
    + }
    + vertex_end(vb);

    +

    Draw Event

    +

    var _num = (current_time / 1000 * 12) mod (vertex_get_number(vb) + 1);
    + vertex_submit_ext(vb, pr_linestrip, -1, 0, _num); +

    +

    The code example above fills a vertex buffer with 100 random points and then progressively draws more points using the value of the built-in variable current_time.

    +

    In the Create event, a vertex buffer is created using vertex_create_buffer. 100 vertices are then added to it in a repeat loop. Every vertex gets a random position in the room, a white colour and a texture coordinate that's unused but must be there, according to the passthrough_vertex_format used.

    +

    In the Draw event, the vertex buffer is submitted using vertex_submit_ext as a pr_linestrip. The starting vertex is always the first one (indicated by the offset value 0), the number of vertices is calculated using current_time with a modulo operator used to create a simple animation that loops.

    +

     

    +

    Example 3: Groups of Vertices

    +

    Create Event

    +

    vb = vertex_create_buffer();
    + arr_groups = [];
    +
    + var _px, _py, _col;
    + vertex_begin(vb, fmt_default);
    + for(var i = 0;i < 8;i++)
    + {
    +     _px = random(room_width);
    +     _py = random(room_height);
    +     _col = choose(c_red, c_blue, c_green, c_yellow);
    +     repeat(3)
    +     {
    +         vertex_position_3d(vb, _px + random_range(-20, 20), _py + random_range(-20, 20), 0);
    +         vertex_color(vb, _col, 1);
    +         vertex_texcoord(vb, 0, 0);
    +     }
    +     array_push(arr_groups, {visible: true, range: {offset: i * 3, num: 3}});
    + }
    + vertex_end(vb);
    + vertex_freeze(vb); +

    +

    Draw Event

    +

    var i = 0, _num = array_length(arr_groups);
    + repeat(_num)
    + {
    +     var _group = arr_groups[i++];
    +     if (!_group.visible) { continue; }
    +     vertex_submit_ext(vb, pr_trianglelist, -1, _group.range.offset, _group.range.num);
    + }

    +

    The code example above shows how to treat a vertex buffer as groups of vertices, each given by a range and number of vertices. The visibility of every group of vertices can be set separately.

    +

    In the Create event, a vertex buffer is created and an empty array with it to store info about every range of vertices. A total of 8 triangles are added to the vertex buffer using the default passthrough_vertex_format, each with a random position somewhere in the room, a random colour and a random width and height. A struct is also pushed onto the array using array_push that stores the visibility and range of the vertices of each triangle. Finally the vertex buffer is frozen with vertex_freeze so it can be submitted to the GPU faster.

    +

    In the Draw event, all groups of vertices are submitted separately with a call to vertex_submit_ext inside a repeat loop. If any group is not visible, it is skipped and the next one is checked.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_update_buffer_from_buffer.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_update_buffer_from_buffer.htm new file mode 100644 index 000000000..6cc87bebb --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_update_buffer_from_buffer.htm @@ -0,0 +1,107 @@ + + + + + + vertex_update_buffer_from_buffer + + + + + + + + + + +

    vertex_update_buffer_from_buffer

    +

    This function updates the contents of a vertex buffer using data in the given buffer.

    +

     You cannot pass a frozen vertex buffer as the destination buffer.

    +

    Usage Notes

    +
      +
    • The data in the source buffer should be formatted the same as the destination vertex buffer's vertex format. If it's not, you may get unexpected or no results.
    • +
    • You can use the function vertex_format_get_info to get the size and offset of an attribute.
    • +
    • Writing data outside of the vertex buffer's current size will resize the vertex buffer as required.
    • +
    +

     

    +

    Syntax:

    +

    vertex_update_buffer_from_buffer(dest_vbuff, dest_offset, src_buffer[, src_offset, src_size]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    dest_vbuffVertex Buffer IDThe vertex buffer to copy to
    dest_offsetRealThe offset in the destination buffer to start writing the data
    src_bufferBuffer IDThe source buffer to copy from
    src_offsetReal  The offset in bytes in the source buffer to start copying. Defaults to 0.
    src_sizeReal  The size of the data in bytes to copy from the source buffer. Defaults to -1. When -1 the whole buffer is copied.
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    vertex_format_begin();
    + vertex_format_add_position_3d();     // Three buffer_f32 values
    + vertex_format_add_texcoord();        // Two buffer_f32 values
    + vertex_format = vertex_format_end();
    +
    + var _i = 0, _vertex_size = (3 + 2) * buffer_sizeof(buffer_f32), _buff = buffer_create(1000, buffer_fixed, 4);
    + repeat(51)
    + {
    +     repeat(3) buffer_write(_buff, buffer_f32, random(500));        // x, y, z
    +     repeat(2) buffer_write(_buff, buffer_f32, ((_i++ mod 6) < 3)); // u, v
    + }
    +
    + vb = vertex_create_buffer_from_buffer_ext(_buff, vertex_format, 0, 30);
    + vertex_update_buffer_from_buffer(vb, 0, _buff, 40 * _vertex_size, 3 * _vertex_size); +

    +

    The code above first creates a new vertex format that consists of a 3D position attribute and a texture coordinate attribute. It then initialises a couple of temporary variables: a loop counter, the source buffer and the size in bytes of a single vertex. The (3 + 2) refers to the three float values used to store a position and the two float values to store a UV coordinate. The buffer is then filled with some random values to create a total of 51 randomly positioned vertices, or 17 triangles, stored as pr_trianglelist (see Primitive Type Constant). After that, a new vertex buffer is created from the first 30 vertices in the buffer. Finally, the first three vertices in this vertex buffer are updated with a call to vertex_update_buffer_from_buffer; they are overwritten with the data of vertex index 40, 41 and 42 in the original buffer.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_self.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_self.htm index 9fde423e1..e032f3d6d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_self.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_self.htm @@ -4,7 +4,7 @@ draw_self - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_sprite.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_sprite.htm index bb091f39f..68ae5bd86 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_sprite.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Sprites_And_Tiles/draw_sprite.htm @@ -4,7 +4,7 @@ draw_sprite - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/Surfaces.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/Surfaces.htm index c4359b2b3..76ce8a394 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/Surfaces.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/Surfaces.htm @@ -27,7 +27,7 @@

    サーフェス

  • 第三に、サーフェスは draw イベントでのみ作成する必要があります。インスタンスのCreateイベントでサーフェイスを作成すると、 application_surface同じインデックスを取得する可能性があります。 これは、自分自身のサーフェイスを使用しているつもりでも、実際には現在のレンダーターゲットを使用しているため、多くの問題や混乱を引き起こす可能性があります。GameMakerがスクリーンに描画する方法を最適化しているため、すべての描画関数をdraw イベントの中で行うことをお勧めします - これには、最初にサーフェスを作成したときにクリアすることなども含まれます。draw イベントの外でサーフェイスに描画することは可能で、ある種の効果には必要かもしれませんが、そうするべきではありません。
  • 第四に、手動でサーフェスに描画する場合、サーフェスの位置は常に(0,0)になります。つまり、サーフェスの絶対座標を相対座標に変換する必要がある場合があります。例えば、カメラサイズのサーフェスがあり、現在カメラで見えているものをそのサーフェスに描画したい場合、実際のXとY座標からカメラビューのXとY座標を引き、サーフェスの(0,0)の位置に対する相対位置を得る必要があります。つまり、コードは以下のようなものになります。
  • -

    if view_current = 0
    +

    if (view_current == 0)
    {
        surface_set_target(surf);
        with (obj_Effect)
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/application_surface_enable.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/application_surface_enable.htm index 7492daf8d..96e216f4f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/application_surface_enable.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/application_surface_enable.htm @@ -4,7 +4,7 @@ application_surface_enable - + @@ -40,13 +40,13 @@

    リターンです。

    if keyboard_check_pressed(vk_space)
    {
    -     if application_surface_is_enabled()
    +     if (application_surface_is_enabled())
        {
    -         application_surface_enable(false);
    +         application_surface_enable(false);
        }
        else
        {
    -         application_surface_enable(true);
    +         application_surface_enable(true);
        }
    }

    上記のコードは、キーが押されたことを確認し、その状態に応じてアプリケーションサーフェスのオン/オフを切り替えます(オプションメニューのようなものです)。

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_copy_part.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_copy_part.htm index c24c11f77..c2a1f4a22 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_copy_part.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_copy_part.htm @@ -76,7 +76,10 @@

    リターンです。

    if view_current == 0
    {
    -     surface_copy_part(surf, 0, 0, temp_surf, 0, 0, view_xview[1] - mouse_x, view_yview[1] - mouse_y);
    +     var _cam1_x = camera_get_view_x(view_camera[1]);
    +     var _cam1_y = camera_get_view_y(view_camera[1]);
    +
    +     surface_copy_part(surf, 0, 0, temp_surf, 0, 0, _cam1_x - mouse_x, _cam1_y - mouse_y);
    }
    else
    {
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_create.htm index 2230fd771..11b6df868 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_create.htm @@ -44,7 +44,7 @@

    リターンです。

    if !surface_exists(surf)
    {
    -     surf = surface_create(1024, 1024);
    +     surf = surface_create(1024, 1024);
        surface_set_target(surf);
        draw_clear_alpha(c_black, 0);
        surface_reset_target();
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_reset_target.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_reset_target.htm index d569acd4a..688db319b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_reset_target.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_reset_target.htm @@ -32,7 +32,7 @@

        {
            draw_self();
        }
    -     surface_reset_target();
    +     surface_reset_target();
    }
    else
    {
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_get_status.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_get_status.htm new file mode 100644 index 000000000..5f9cf9085 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_get_status.htm @@ -0,0 +1,106 @@ + + + + + + texturegroup_get_status + + + + + + + + + + +

    texturegroup_get_status

    +

    This function returns the status of the given Dynamic Texture Group. The status will be one of the following constants:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Texture Group Status Constant
    ConstantDescriptionValue
    texturegroup_status_unloadedThe Texture Group is still on disk and not in memory0
    texturegroup_status_loadingThe Texture Group is currently being loaded from disk1
    texturegroup_status_loadedThe Texture Group has been loaded into RAM2
    texturegroup_status_fetchedThe Texture Group has been loaded and fetched into VRAM, ready for use3
    +

    For information on its use, see: Dynamic Textures

    +

     

    +

    Syntax:

    +

    texturegroup_get_status(groupname);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    groupnameStringThe name of the Texture Group as a string. These are defined in the Texture Groups window.
    +

     

    +

    Returns:

    +

    Texture Group Status Constant

    +

     

    +

    Example:

    +

    var _tg = "tg_UI";
    + var _status = texturegroup_get_status(_tg);
    +
    + if (_status == texturegroup_status_unloaded)
    + {
    +     texturegroup_load(_tg);
    + } +

    +

    This gets the status of the "tg_UI" Texture Group, and if it's unloaded, it loads it.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_load.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_load.htm new file mode 100644 index 000000000..5a9ffb1bc --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_load.htm @@ -0,0 +1,81 @@ + + + + + + texturegroup_load + + + + + + + + + + +

    texturegroup_load

    +

    This function is used to load a Dynamic Texture Group from disk into RAM.

    +

    By default, it will also decompress and fetch the group into VRAM. This can be disabled by setting the second argument to false, which will leave you to manually pre-fetch it later or have it fetched automatically when an image is drawn from it.

    +

    If the Texture Group was loaded successfully, the function returns 0, otherwise it returns -1.

    +

    For information on its use, see: Dynamic Textures

    +

     

    +

    Syntax:

    +

    texturegroup_load(groupname, [prefetch=true]);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    groupnameStringThe name of the Texture Group as a string. These are defined in the Texture Groups window.
    prefetchBoolean  If true (default), the group is decompressed and fetched into VRAM. If false, it's only loaded into RAM, remaining compressed.
    +

     

    +

    Returns:

    +

    Real

    +

     

    +

    Example:

    +

    var _loaded = texturegroup_load("tg_UI");
    +
    + if (_loaded < 0)
    + {
    +     show_debug_message("tg_UI could not be loaded.");
    + } +

    +

    This will attempt to load the Dynamic Texture Group with the name "tg_UI" into memory and also pre-fetch it.

    +

    If the Texture Group wasn't loaded, it prints a message to the output log.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_set_mode.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_set_mode.htm new file mode 100644 index 000000000..7f15328db --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_set_mode.htm @@ -0,0 +1,90 @@ + + + + + + texturegroup_set_mode + + + + + + + + + + +

    texturegroup_set_mode

    +

    This function allows you to set three things:

    +
      +
    1. Mode: You can set whether Dynamic Texture Groups use Implicit (default) or Explicit loading, by using false for Implicit and true for Explicit.
      +
      + For information on modes, see: Dynamic Group Modes +
    2. +
    3. Debug: You can enable debugging, which will show you all of your game's Texture Pages along with their status in-game.
      + +
    4. +
    5. Default Sprite: This is the default sprite that appears when the mode is set to Explicit, and the texture you're drawing to draw has not been loaded.
      +
      + For more information, see: Explicit +
    6. +
    +

     

    +

     

    +

    Syntax:

    +

    texturegroup_set_mode(explicit, [debug=false, default_sprite=-1]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    explicitBooleanThe mode used for Dynamic Texture Groups: Implicit (false), or Explicit (true)
    debugBoolean  Enable/disable Texture Group debugging
    default_spriteSprite Asset  Only used in Explicit mode: The sprite used as the "fallback" texture when another texture is not loaded (the whole texture page is drawn)
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    texturegroup_set_mode(true, false, spr_fallback);

    +

    This will enable Explicit mode, disable debugging and set spr_fallback as the fallback sprite for unloaded textures.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_unload.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_unload.htm new file mode 100644 index 000000000..bb21e01fa --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Textures/texturegroup_unload.htm @@ -0,0 +1,68 @@ + + + + + + texturegroup_unload + + + + + + + + + + +

    texturegroup_unload

    +

    This function is used to unload a loaded Dynamic Texture Group from memory back into disk, in its original, compressed form.

    +

    You can't unload a default (non-dynamic) Texture Group.

    +

    For information on its use, see: Dynamic Textures

    +

     

    +

    Syntax:

    +

    texturegroup_unload(groupname);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    groupnameStringThe name of the Texture Group as a string. These are defined in the Texture Groups window.
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    texturegroup_unload("tg_UI");

    +

    This will unload the Dynamic Texture Group with the name "tg_UI".

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Videos/video_get_format.htm b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Videos/video_get_format.htm index f7f6c8a14..2cbed8318 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Videos/video_get_format.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Drawing/Videos/video_get_format.htm @@ -3,7 +3,7 @@ - + video_get_format diff --git a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_decode.htm b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_decode.htm index 67cc5dbdd..46185b791 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_decode.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_decode.htm @@ -3,6 +3,7 @@ + json_decode @@ -10,8 +11,6 @@ - - @@ -59,12 +58,12 @@

    var size = ds_list_size(list);
    for (var n = 0; n < ds_list_size(list); n++;)
    {
    -     var map = ds_list_find_value(list, n);
    -     var curr = ds_map_find_first(map);
    -     while (is_string(curr))
    +     var map = ds_list_find_value(list, n);
    +     var curr = ds_map_find_first(map);
    +     while (is_string(curr))
        {
    -         global.Name[n] = ds_map_find_value(map, "name");
    -         curr = ds_map_find_next(map, curr);
    +         global.Name[n] = ds_map_find_value(map, "name");
    +         curr = ds_map_find_next(map, curr);
        }
    }
    ds_map_destroy(resultMap);

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_encode.htm b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_encode.htm index e6fd74438..721e3843d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_encode.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_encode.htm @@ -4,7 +4,7 @@ json_encode - + @@ -52,7 +52,7 @@

    hiscore_map = ds_map_create();
    for (i = 0; i < 10; i ++;)
    {
    -     ds_map_add(hiscore_map, name[i], score[i]);
    +     ds_map_add(_hiscore_map, name[i], score[i]);
    }
    str = json_encode(hiscore_map);
    get[0] = http_post_string("http://www.angusgames.com/game?game_id=" + string(global.game_id), str)
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_parse.htm b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_parse.htm index 8392cd797..ab3bf41a1 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_parse.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_parse.htm @@ -4,7 +4,7 @@ json_parse - + @@ -44,7 +44,7 @@

    リターンです。

    json = "{\"myObj\": { \"apples\":10, \"oranges\":12, \"potatoes\":100000, \"avocados\":0 }, \"myArray\":[0, 1, 2, 2, 4, 0, 1, 5, 1]}";

    - data = json_parse(json);
    + var data = json_parse(json);
    show_debug_message(data);

    上記のコードは、有効なJSONstring を含む新しいobject を作成し、 json_parse() を呼び出してstringGML struct に変換しています。

    @@ -61,27 +61,27 @@

    data = json_parse(json);

    // Check if the struct has myObj variable
    - if variable_struct_exists(data, "myObj")
    + if (struct_exists(data, "myObj"))
    {
        // Check if it's a struct
    -     if is_struct(data.myObj)
    +     if (is_struct(data.myObj))
        {
            // Print all struct members to the log
    -         var _names = variable_struct_get_names(data.myObj);
    +         var _names = struct_get_names(data.myObj);
            var _str = "";
            for (var i = 0; i < array_length(_names); i++;)
            {
    -             _str = _names[i] + ": " + string(variable_struct_get(data.myObj, _names[i]));
    +             _str = _names[i] + ": " + string(struct_get(data.myObj, _names[i]));
                show_debug_message(_str);
            }
        }
    }

    // Check if the struct has myArray variable
    - if variable_struct_exists(data, "myArray")
    + if (struct_exists(data, "myArray"))
    {
        // Check if it's an array
    -     if is_array(data.myArray)
    +     if (is_array(data.myArray))
        {
            show_debug_message(data.myArray);
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_stringify.htm b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_stringify.htm index 3a4c5e49d..1c741dbc5 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_stringify.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/json_stringify.htm @@ -4,7 +4,7 @@ json_stringify - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/load_csv.htm b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/load_csv.htm index 2200bb22c..9b1ff9d03 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/load_csv.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Encoding_And_Hashing/load_csv.htm @@ -49,7 +49,7 @@

    {
        for (var j = 0; j < hh; j++;)
        {
    -         draw_text(xx, yy, string(file_grid[# i, j]));
    +         draw_text(xx, yy, file_grid[# i, j]);
            yy += 32;
        }
        yy = 32;
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Text_Files/file_text_open_from_string.htm b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Text_Files/file_text_open_from_string.htm index ff8dd34f7..e5d12b7e2 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Text_Files/file_text_open_from_string.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/File_Handling/Text_Files/file_text_open_from_string.htm @@ -58,5 +58,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/GXC/File_System/gxc_file_sync.htm b/Manual/contents/GameMaker_Language/GML_Reference/GXC/File_System/gxc_file_sync.htm new file mode 100644 index 000000000..47eb1aa4d --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/GXC/File_System/gxc_file_sync.htm @@ -0,0 +1,80 @@ + + + + + + gxc_file_sync + + + + + + + + + + +

    gxc_file_sync

    +

    This asynchronous function synchronises the changes to the file system on the GX.games platform.

    +

    You should call this function whenever more than one game, e.g. a Live Wallpaper and a Game Strip, writes to and reads from the file system and you want to get the changes made by the other game in the current one.

    +

    Because of the type of file system used by GameMaker when running on GX.games, the changes made by one game will not automatically be picked up by the other. To retrieve these changes and to synchronise the state of the file system in both games you call this function.

    +

    The function takes a callback function that's called when the synchronisation has completed.

    +

     

    +

    Syntax:

    +

    gxc_file_sync([callback]);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    callbackMethod or Script Function  The callback method to execute when the sync is complete
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example:

    +

    Create Event

    +

    confirm = function()
    + {
    +     show_debug_message("Successfully synced file system changes!");
    + }
    +
    + alarm_time = 60;
    + alarm[0] = alarm_time; +

    +

    Alarm Event

    +

    gxc_file_sync(confirm);
    + alarm[0] = alarm_time;

    +

    The above code first creates a method in an object's Create event that shows a debug message and sets alarm[0] to 60 steps. In the Alarm event a file sync is performed with a call to gxc_file_sync and the alarm is set to countdown again.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_description.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_description.htm index 5901802b8..27bc61913 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_description.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_description.htm @@ -4,7 +4,7 @@ gamepad_get_description - + @@ -40,13 +40,14 @@

    var gp_num = gamepad_get_device_count();
    for (var i = 0; i < gp_num; i++;)
    {
    -     if gamepad_is_connected(i)
    +     var _gamepad = gamepads[i];
    +     if (gamepad_is_connected(_gamepad))
        {
    -         draw_text(32, 32 + (i * 32), gamepad_get_description(i));
    +         draw_text(32, 32 + (i * 32), gamepad_get_description(_gamepad));
        }
        else
        {
    -         draw_text(32, 32 + (i * 32), "No Gamepad Connected");
    +         draw_text(32, 32 + (i * 32), "Gamepad not found");
        }
    }

    上記のコードは、loop 、すべてのゲームパッド・スロットに接続されたデバイスをチェックし、ゲームパッドがスロットに接続されているかどうかに基づいて、画面にテキストを描画します。

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_device_count.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_device_count.htm index 8f7529a8d..50d328366 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_device_count.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_get_device_count.htm @@ -4,7 +4,7 @@ gamepad_get_device_count - + @@ -29,7 +29,7 @@

    var gp_num = gamepad_get_device_count();
    for (var i = 0; i < gp_num; i++;)
    {
    -     if gamepad_is_connected(i)
    +     if (gamepad_is_connected(i))
        {
            global.gp[i] = true;
        }
    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_set_axis_deadzone.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_set_axis_deadzone.htm index 337a36778..1fd1e2897 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_set_axis_deadzone.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_set_axis_deadzone.htm @@ -4,7 +4,7 @@ gamepad_set_axis_deadzone - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_button.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_button.htm index 42f102b96..b3f317aa2 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_button.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_button.htm @@ -4,7 +4,7 @@ mouse_button - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_check_button.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_check_button.htm index cebaaec57..b9e4902e4 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_check_button.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_check_button.htm @@ -4,7 +4,7 @@ mouse_check_button - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_lastbutton.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_lastbutton.htm index 855104e06..f3f088135 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_lastbutton.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_lastbutton.htm @@ -4,7 +4,7 @@ mouse_lastbutton - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_y.htm b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_y.htm index d368ef3c5..645c91351 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_y.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_y.htm @@ -1,5 +1,4 @@ - @@ -12,11 +11,7 @@ - - - -

    mouse_y

    この読み取り専用変数は、room 内のマウスの現在の y 軸位置を返す。

    @@ -48,5 +43,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Garbage_Collection/gc_target_frame_time.htm b/Manual/contents/GameMaker_Language/GML_Reference/Garbage_Collection/gc_target_frame_time.htm index c9e89f7b5..e7817d11e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Garbage_Collection/gc_target_frame_time.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Garbage_Collection/gc_target_frame_time.htm @@ -4,7 +4,7 @@ gc_target_frame_time - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/cursor_sprite.htm b/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/cursor_sprite.htm index 2aa34fffa..d11409588 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/cursor_sprite.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/cursor_sprite.htm @@ -8,7 +8,7 @@ - + @@ -40,10 +40,10 @@

    © CopyrightYoYo Games Ltd. 2022 All Rights Reserved
    \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_change.htm b/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_change.htm new file mode 100644 index 000000000..8d8af9fb3 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_change.htm @@ -0,0 +1,141 @@ + + + + + + game_change + + + + + + + + + + +

    game_change

    +

    This function ends the current game and launches another game that's included in the Included Files.

    +

    It allows you to have a main game from which you can launch other games that you keep in a different GameMaker project. The function can be called again in the launched game to return back to the main game.

    +

    The function is supported on the Windows, macOS, PS4, PS5 and Switch platforms.

    +

     This function only works in VM builds.

    +

     GameMaker names the .win file differently depending on whether your game is running from the IDE or from the final executable (created using Create Executable in The Build Menu). When running from the IDE the name will be $"{game_project_name}.win", if not it will be "data.win". You should always make sure to refer to the right name, e.g. by setting up a different configuration.

    +

     Since the child games' external files are included in the main game's datafiles, they can be accessed from the main game as well.

    +

    Usage Notes

    +
      +
    • Each of the games to be launched by the main game should be included in a subdirectory of the Included Files: the game's data.win file and other external included files should go into this folder. This folder structure could look as follows (essentially a copy of the contents in the final game's directory, without the executable file):  +
        +
      • game1 +
          +
        • game1.win
        • +
        • bgm_groovy.ogg
        • +
        • texgroup1_0.yytex
        • +
        • options.ini
        • +
        +
      • +
      • game2 +
          +
        • game2.win
        • +
        • game_data.json
        • +
        • options.ini
        • +
        +
      • +
      • ...
      • +
      +
    • +
    • This function only works on certain platforms, and on some platforms it will only work in a packaged build.
    • +
    • All saves, achievements, etc. will be done under the title ID set by the launcher project.
    • +
    • As this function ends the current game before launching the new one, the Game End event is triggered for the current game and the Game Start event is triggered for the game that is being launched.
    • +
    +

    Argument Values Per Platform

    +
    +

    The table below provides an example of the working directory and launch parameters to be provided on each of the supported platforms: 

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PlatformWorking DirectoryLaunch Parameters
    Windows"/game2""-game game2.win"
    macOS"game2"""
    PS4/PS5"""-game /app0/games/game2/game.win"
    Switch"rom:/game2/"""
    +
    +
    +

     

    +

    Syntax:

    +

    game_change(working_directory, launch_parameters);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    working_directoryStringThe working directory of the game to be launched
    launch_parametersStringThe command-line parameters to pass to the game to be launched
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example 1: Launching an Included Game (on Windows)

    +

    game_change("/chapter3", "-game chapter3.win");

    +

    The above code runs from the launcher game and launches the "Chapter 3" game, which is stored in a subdirectory "chapter3"  under Included Files.

    +

     

    +

    Example 2: Returning to the Main/Launcher Game (on Windows)

    +

    game_change("/../", "-game main_game.win");

    +

    The code above runs from a game that was launched from the launcher game and returns to the main/launcher game. The double dots .. indicate that the game's working directory is one above the current working directory.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_set_speed.htm b/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_set_speed.htm index 2b2dc9485..a189c3d6b 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_set_speed.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/General_Game_Control/game_set_speed.htm @@ -65,11 +65,11 @@

    リターンです。

    if os_browser == browser_not_a_browser
    {
    -     game_set_speed(60, gamespeed_fps);
    +     game_set_speed(60, gamespeed_fps);
    }
    else
    {
    -     game_set_speed(30, gamespeed_fps);
    +     game_set_speed(30, gamespeed_fps);
    }

    上記のコードでは、ゲームがブラウザで実行されているかどうかを確認し、それに応じてゲーム速度をFPS値として設定しています。

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/Number_Functions.htm b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/Number_Functions.htm index 733a1eb9a..f0efeca8a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/Number_Functions.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/Number_Functions.htm @@ -20,12 +20,12 @@

    ナンバーファンクション

    この整数と浮動小数点数の区別は、クロスプラットフォーム開発を行う上で非常に重要です。Windows PCで行った計算の精度と、モバイルデバイスで行った同じ計算の精度は同じではありません。つまり、例えば比較を行う際には特に注意が必要です。

    if (image_index == 1)
    {
    -     do something...
    +     // Do something...
    }

    上記の例では、例えば image_speed を 0.25 に設定していた場合、4 ステップ後に image_index の値が 1 になると思っても、浮動小数点演算の仕組み上 1.0000002 のような値になり、評価が true にならないことがあります。このようなタイプのエラーはデバッグがかなり難しくなるので、常に注意して、前もって計画的に他の方法で値をチェックしたり、適切な階乗や丸め関数(以下にリストアップ)を使ってチェックする数を整数に変換するのがよいでしょう(浮動小数点数の数学とこれが問題になる理由については、ここを参照してください)。例えば、上記のコードは次のように書くことができます。

    if (floor(image_index) == 1)
    {
    -     do something...
    +     // Do something...
    }

    また、YoYo Compilerのターゲットを使用する場合、すべての式と関数は左から右に評価されますが、他のすべてのターゲットプラットフォームでは、右から左に評価されるため、例えばこのような場合、プラットフォームによって異なる結果になることを意味します。

    val = max(num, ++num, num++);

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_get_epsilon.htm b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_get_epsilon.htm index 855d7ded2..1747f8df9 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_get_epsilon.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_get_epsilon.htm @@ -4,7 +4,7 @@ math_get_epsilon - + @@ -26,7 +26,7 @@

    リターンです。

    var e = math_get_epsilon();
    - if e != 0.000001
    + if (e != 0.000001)
    {
        math_set_epsilon(0.000001);
    }

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_set_epsilon.htm b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_set_epsilon.htm index 6c8230f1a..5fef29229 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_set_epsilon.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/math_set_epsilon.htm @@ -4,7 +4,7 @@ math_set_epsilon - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/sqrt.htm b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/sqrt.htm index c918ba03d..8f988188d 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/sqrt.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Number_Functions/sqrt.htm @@ -1,5 +1,4 @@ - @@ -13,11 +12,7 @@ - - - -

    自乗

    ある数字に自分自身をかけると、その数字の2乗が得られるが、逆にその数字の平方根を求めたいこともある。そこで、与えられた正の値に対してどのような数値が掛け合わされたかを知るために、次のようにします。 @@ -62,5 +57,5 @@

    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/collision_point.htm b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/collision_point.htm index 9a8c4f952..2ce8857dc 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/collision_point.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/collision_point.htm @@ -63,7 +63,7 @@

    リターンです。

    if collision_point(x, y, obj_Cursor, false, true)
    {
    -     score += 10S;
    +     score += 10;
    }

    ここでは、object "obj_Cursor" のコードを持つobject の位置のポイントをチェックしています。もしあれば、score変数に10を加算している。

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_empty.htm b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_empty.htm index 8f73ea469..1feab71cc 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_empty.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_empty.htm @@ -4,7 +4,7 @@ place_empty - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_meeting.htm b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_meeting.htm index 0f55fadfe..ba5209a0f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_meeting.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Collisions/place_meeting.htm @@ -52,7 +52,10 @@

    リターンです。

    if keyboard_check(vk_left)
    {
    -     if !place_meeting(x - 5, y, obj_wall) x -=5;
    +     if (!place_meeting(x - 5, y, obj_wall))
    +     {
    +         x -= 5;
    +     }
    }

    上記のコードでは、インスタンスの左側に衝突がないかどうかをチェックし、衝突がなければインスタンスを移動させます。

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Movement/move_and_collide.htm b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Movement/move_and_collide.htm new file mode 100644 index 000000000..4dfe0e09d --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Movement/move_and_collide.htm @@ -0,0 +1,126 @@ + + + + + + move_and_collide + + + + + + + + + + +

    move_and_collide

    +

    This function moves the instance by the given distance on the X and Y axes, while avoiding the given object.

    +

    It allows your instance to move while navigating slopes or small steps that would otherwise prevent it from being able to move.

    +

    The function returns an array containing the IDs of the instances it collided with.

    +

    How Does It Work?

    +

    The function will move your instance step-by-step, checking for collisions at each step/iteration. The obj argument is the object or instance it should avoid (like a wall object), and by default the function moves your instance in 4 steps (which you can change with the num_iterations argument).

    +

    At each iteration, it moves your instance by point_distance(0, 0, dx, dy)/num_iterations pixels in the given direction, and then checks for collisions. If num_iterations is 4, and you want to move (8, 0),  it will move your instance by 2 pixels each iteration before checking for collisions.

    +

    If a collision is found during an iteration, it will try to move around it by moving your instance the same amount in a direction perpendicular to dx, dy, or toward the vector given in the optional xoff, yoff arguments.

    +

    If, at any iteration, the function finds a collision in the direction dx, dy and is able to move around it (either in a perpendicular direction or in the xoff, yoff direction), movement in that other direction will be counted as an iteration.

    +

    Speed Limit

    +

    The optional max_x_move and max_y_move arguments let you specify the maximum distance your instance can move on the X and Y axes.

    +

    This serves to avoid a common problem in platformers, where the downward velocity (gravity) of the player is added to its horizontal speed when it hits the ground, making it walk faster for one frame.

    +

     This function uses the sprite collision mask of the instance to check for collisions (see The Sprite Editor for more info).

    +

     

    +

    Syntax:

    +

    move_and_collide(dx, dy, obj, [num_iterations], [xoff], [yoff], [max_x_move], [max_y_move]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    dxRealThe distance to try to move along the X axis
    dyRealThe distance to try to move along the Y axis
    objObject Asset or Instance IDThe object index or instance ID to avoid, or the keyword all to avoid all objects
    num_iterationsReal  The number of steps to take, e.g. if (dx, dy) is (10, 0) and the number of steps to take is 5, then every iteration the instance will move the instance by 10/5 = 2 pixels before checking collisions. The default value is 4.
    xoffReal  The x component of the direction in which to move in case of a collision; specify 0 to use the default behaviour (perpendicular direction of movement)
    yoffReal  The y component of the direction in which to move in case of a collision; specify 0 to use the default behaviour (perpendicular direction of movement)
    max_x_moveReal  The maximum speed the instance should move on the X axis; specify -1 for no limit (which is the default behaviour)
    max_y_moveReal  The maximum speed the instance should move on the Y axis; specify -1 for no limit (which is the default behaviour)
    +

     

    +

    Returns:

    +

    Array of Instance IDs

    +

     

    +

    Example 1: Basic Movement

    +

    move_and_collide(8, 0, all);

    +

    The above code will try to move the calling instance to the right 8 pixels and avoid instances of any object (indicated by the all keyword). Since the num_iterations argument is not provided, the number of iterations is 4.

    +

     

    +

    Example 2: Showing Instances Collided With

    +

    var _colliding_instances = move_and_collide(speed_x, speed_y, obj_terrain);
    +
    + for (var i = 0; i < array_length(_colliding_instances); i++)
    + {
    +     var _collider = _colliding_instances[i];
    +     with (_collider)
    +     {
    +         show_debug_message("Collision with instance {0}", id);
    +     }
    + } +

    +

    The above code executes the move_and_collide function in the calling instance. It tries to move it using the custom speed_x and speed_y variables, and tries to avoid instances of obj_terrain. The instances that the calling instance collides with are stored in a temporary array _colliding_instances and shown using a for loop and show_debug_message.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_create_socket_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_create_socket_ext.htm index ffc685350..1e5c8b409 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_create_socket_ext.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_create_socket_ext.htm @@ -4,7 +4,7 @@ network_create_socket_ext - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_destroy.htm b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_destroy.htm index 3f987ba6d..7fb4cfefe 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_destroy.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_destroy.htm @@ -4,7 +4,7 @@ network_destroy - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_broadcast.htm b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_broadcast.htm index c55f34b7f..769a4164e 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_broadcast.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_broadcast.htm @@ -4,7 +4,7 @@ network_send_broadcast - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_raw.htm b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_raw.htm index 6c7702151..c12846c9a 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_raw.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_raw.htm @@ -4,7 +4,7 @@ network_send_raw - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_udp_raw.htm b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_udp_raw.htm index 2f074e99e..f714dbd28 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_udp_raw.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_send_udp_raw.htm @@ -4,7 +4,7 @@ network_send_udp_raw - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_set_config.htm b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_set_config.htm index 33acf9077..50245c542 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_set_config.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Networking/network_set_config.htm @@ -9,8 +9,8 @@ - - + + @@ -58,6 +58,16 @@

    ネットワーク設定

    既存のTCPソケットのSO_LINGER タイムアウト値を0に設定する The socket ID to target + + network_config_enable_multicast + Enables multicast support for UDP + The socket ID to target + + + network_config_disable_multicast + Disables multicast support for UDP + The socket ID to target +


    @@ -119,6 +129,8 @@

    © CopyrightY network_config_enable_reliable_udp network_config_disable_reliable_udp network_config_avoid_time_wait +network_config_enable_multicast +network_config_disable_multicast --> + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_concat.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_concat.htm new file mode 100644 index 000000000..4091e0453 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_concat.htm @@ -0,0 +1,73 @@ + + + + + + string_concat + + + + + + + + + + +

    string_concat

    +

    This function concatenates (joins together) the string representations of all arguments that are passed to it, and returns the result as a new string.

    +

    Arguments that are not strings will have the string() function run on them implicitly. See Conversion From Non-String Types for information on how those data types are converted.

    +

    If you want to join strings with certain characters between them, use string_join().

    +

     

    +

    Syntax:

    +

    string_concat(value1 [, value2, ... max_val]);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    value1AnyThe first value to concatenate
    [, value2, ... max_val]Any  Additional values to concatenate
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    result = string_concat("W", "o", "r", "d", "s");

    +

    The above code calls string_concat on a series of letters to make a word. The new string is stored in a variable result.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_concat_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_concat_ext.htm new file mode 100644 index 000000000..c11abdeae --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_concat_ext.htm @@ -0,0 +1,78 @@ + + + + + + string_concat_ext + + + + + + + + + + +

    string_concat_ext

    +

    This function concatenates (joins together) the string representations of all elements in the given array, and returns the result as a new string.

    +

    Values that are not strings will have the string() function run on them implicitly. See Conversion From Non-String Types for information on how those data types are converted.

    +

     

    +

    Syntax:

    +

    string_concat_ext(values_array, [offset], [length]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    values_arrayArrayThe array of values to concatenate
    offsetReal  The offset, or starting index, in the array to start concatenating elements. Setting a negative value will count from the end of the array. The starting index will then be array_length(array) + offset. See: Offset And Length
    lengthReal  The number of array elements to concatenate, starting at the offset. A negative value will traverse the array backwards (i.e. in descending order of indices, e.g. 2, 1, 0 instead of 2, 3, 4). See: Offset And Length
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    var _some_letters = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"];
    + var _concat = string_concat_ext(_some_letters, -5, -3);

    +

    The above code first creates an array with the first ten letters of the alphabet and stores it in a temporary variable _some_letters. It then calls string_concat_ext on this array with an offset (starting position) of -5 (at the position of the letter "f") and a length of -3 (3 elements going from right to left).

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_ends_with.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_ends_with.htm new file mode 100644 index 000000000..fb22b60a6 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_ends_with.htm @@ -0,0 +1,75 @@ + + + + + + string_ends_with + + + + + + + + + + +

    string_ends_with

    +

    This function checks if a string ends with a given substring. It returns true if it does, or false if it doesn't.

    +

     

    +

    Syntax:

    +

    string_ends_with(str, substr);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    strStringThe string to check for the occurrence of the given substring at the end
    substrStringThe substring that the string should end with
    +

     

    +

    Returns:

    +

    Boolean

    +

     

    +

    Example:

    +

    var _message = "Hello World.";
    + if string_ends_with(_message, ".") || string_ends_with(_message, "?") || string_ends_with(_message, "!")
    + {
    +     show_debug_message("The message is a valid sentence.");
    + }

    +

    The above code first defines a string and stores it in a temporary variable _message. It then makes three calls to the function string_ends_with to check if the string ends with one of the following three punctuation marks: ".", "?" or "!". If the message ends in any of those, it shows a debug message.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_ext.htm new file mode 100644 index 000000000..236506d5e --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_ext.htm @@ -0,0 +1,79 @@ + + + + + + string_ext + + + + + + + + + + +

    string_ext

    +

    This function creates a new string, allowing you to insert placeholders in the main "format string", and to specify an array containing the values to be inserted into those placeholders.

    +

    When only one argument is provided to the function, this argument is considered to be a value, which will be converted to a string from its original data type. When the second argument is given, the first argument is considered a Format String and the second argument an array that contains values to be inserted into the format string.

    +

    Format String

    +

    For information on format strings, see: string()

    +

    This function works in a similar manner, but instead of the values being passed as separate arguments, they're passed as an array in the second argument.

    +

     

    +

    Syntax:

    +

    string_ext(value_or_format [, values]);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    value_or_formatAny (if value) or String (if format)The value to be turned into a string.
    valuesArray  An array of values to be inserted at the placeholder positions.
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    numbers = [59, 23, 656, 8, 54];
    + array_sort(numbers, true);
    +
    + var _str = string_ext("The three lowest numbers are: {0}, {1} and {2}", numbers); +

    +

    The above code first defines an array with some numbers, and sorts them in an ascending order. It then uses that array in a string_ext() to call to insert its first three numbers into a format string.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_foreach.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_foreach.htm new file mode 100644 index 000000000..b1d34e5ff --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_foreach.htm @@ -0,0 +1,100 @@ + + + + + + string_foreach + + + + + + + + + + +

    string_foreach

    +

    This function executes a callback function on all characters of the given string.

    +

    The function optionally takes in a starting position and a length that define the range of characters over which to iterate, and the direction of iteration (left-to-right or right-to-left).

    +

    The callback function will receive two arguments for each character in the string: the character itself, and its position in the string.

    +
    +

     

    +

    Syntax:

    +

    string_foreach(string, function, [pos], [length]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    stringStringThe string to iterate over
    functionFunctionThe function to execute for each of the characters in the range, with arguments character and position
    posReal  The starting position (default is 1 for strings). Negative values count from the end of the string (e.g. -1 is the position of the last character, -2 is the position of the one before last character, etc.). 0 is treated the same as 1.
    lengthReal  The number of characters to iterate over and the direction in which to iterate (left-to-right (positive value) or right-to-left (negative value)).
    +

     

    +

    Returns:

    +

    N/A

    +

     

    +

    Example 1:

    +

    function debug_character(character, position)
    + {
    +     show_debug_message(character);
    + }
    +
    + string_foreach("test", debug_character); +

    +

    The above code first defines a function debug_character that prints the character to the log using show_debug_message. It then calls the function string_foreach on a string "test" to execute the debug_character function on all its characters.

    +

     

    +

    Example 2:

    +

    function debug_extended(character, position)
    + {
    +     show_debug_message("{0}: {1}", position, character);
    + }
    +
    + string_foreach("1234567890", debug_extended, -1, -infinity); +

    +

    The above code first defines a function debug_extended that shows a debug message with both the position and the character in it. Then, string_foreach is called with the debug_extended function on the string "1234567890". Because the offset is -1, the first character on which the function will execute is the last one ("0"). The characters are traversed in a descending order because of the negative length ("0", "9", "8", "7", "6", ..., "1").

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_join.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_join.htm new file mode 100644 index 000000000..af99e0e0f --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_join.htm @@ -0,0 +1,77 @@ + + + + + + string_join + + + + + + + + + + +

    string_join

    +

    This function joins together the string representations of all arguments that are passed to it, inserting the given "delimiter" between each argument. The function returns the joined string.

    +

    Arguments that are not strings will have the string() function run on them implicitly. See Conversion From Non-String Types for information on how those data types are converted.

    +

     

    +

    Syntax:

    +

    string_join(delimiter, value1 [, value2, ... max_val]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    delimiterStringThe string to insert between the values
    value1AnyThe first value to join
    [, value2, ... max_val]Any  The other values to join
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    countdown_message = string_join("... ", "Ready", "Set", "Go!");

    +

    The above code calls string_join to create a new string from a few phrases, joined together by the string "... ". The result is stored in a variable named countdown_message.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_join_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_join_ext.htm new file mode 100644 index 000000000..0d96c74f5 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_join_ext.htm @@ -0,0 +1,92 @@ + + + + + + string_join_ext + + + + + + + + + + +

    string_join_ext

    +

    This function joins together the string representations of all values in the given array (or part of the array), inserting the given "delimiter" between each value. The function returns the joined string.

    +

    Values that are not strings will have the string() function run on them implicitly. See Conversion From Non-String Types for information on how those data types are converted.

    +

     

    +

    Syntax:

    +

    string_join_ext(delimiter, values_array, [offset], [length]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    delimiterStringThe string to insert between the values
    values_arrayArrayThe array containing the values to join together
    offsetReal  The offset, or starting index, in the array to start joining elements. Setting a negative value will count from the end of the array. The starting index will then be array_length(array) + offset. See: Offset And Length
    lengthReal  The number of array elements to concatenate, starting at the offset. A negative value will traverse the array backwards (i.e. in descending order of indices, e.g. 2, 1, 0 instead of 2, 3, 4). See: Offset And Length
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example 1:

    +

    var _words = string_join_ext(" ", ["This", "example", "joins", "words"]);

    +

    The above code joins the words in the array into a single string using a space as the delimiter.

    +

     

    +

    Example 2:

    +

    var _buffer = buffer_create(1, buffer_grow, 1);
    + var _text_lines = ["This", "file", "will", "have", "multiple", "lines"];
    + var _file_contents = string_join_ext("\r\n", _text_lines);
    + buffer_write(_buffer, buffer_text, _file_contents);
    + buffer_save(_buffer, save_dir + "/" + "text.txt");
    + buffer_delete(_buffer);

    +

    The above code first creates a grow buffer and assigns it to a temporary variable _buffer. It then creates an array with a number of elements and stores that in another variable _text_lines. It then calls string_join_ext on the array with a separator "\r\n", which results in new lines between all the given strings.

    +

    It writes the resulting string to the buffer as a buffer_text value and then saves the contents of the buffer to a file named "text.txt" in a directory save_dir. Finally it deletes the buffer to prevent memory leaks.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_split.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_split.htm new file mode 100644 index 000000000..62fb8b273 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_split.htm @@ -0,0 +1,102 @@ + + + + + + string_split + + + + + + + + + + +

    string_split

    +

    This function splits a string into separate strings using the given delimiter. The separated strings are returned in a new array.

    +

    The delimiter string is the boundary (either a single character or a string of characters) which causes the string to split.

    +

    For example, if the string is "This is the string", it can be split by using a single space character " " as the delimiter. The resulting array will look like this: ["This", "is", "the", "string"], with the original string being "split" wherever the delimiter was present.

    +

    The delimiter itself is never included in the resulting strings.

    +

    Also see: string_split_ext

    +

     

    +

    Syntax:

    +

    string_split(string, delimiter, [remove_empty], [max_splits]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    stringStringThe string to split using the given delimiter
    delimiterStringThe delimiter to use
    remove_emptyBoolean  This parameter determines if empty array elements should be removed from the array or not (default is false). It can be useful for those situations where two delimiters are right next to each other in the string, with nothing in between. By default, in this case, an empty string is added to the array (representing the empty string between those two delimiters). If you don't want these empty strings in the array then you should set this parameter to true instead.
    max_splitsReal  This parameter determines the maximum number of splits to make. Any delimiters that come after max_splits become part of the last string, e.g. splitting "1|2|3|4|5" with a max_splits of 3 and | as the delimiter will return ["1", "2", "3", "4|5"].
    +

     

    +

    Returns:

    +

    Array

    +

     

    +

    Example 1:

    +

    file_path = "C:/Users/someone/Documents/data.json";
    +
    + var _path_parts = string_split(file_path, "/");
    +
    + show_debug_message(_path_parts);
    +
    + drive_name = _path_parts[0];
    + file_name = array_last(_path_parts); +

    +

    The above code first creates a string path that stores a path to a file. It then calls string_split on the path with a forward slash "/" as the delimiter and stores the array it returns in a temporary variable _path_parts.

    +

    Then it shows a debug message showing the contents of the _path_parts array. Finally it stores the first array entry (the drive letter) in a variable drive_name and the last array entry (the name of the file) in a variable file_name.

    +

     

    +

    Example 2:

    +

    the_string = "abc|def||ghi|jkl|mno|pqrs|tuv|wxyz";
    + string_parts = string_split(the_string, "|", true, 5);
    +
    + show_debug_message_ext("{0}, {1}, {2}, {3}, {4}", string_parts); +

    +

    The above code creates a string the_string and splits it into a total of 5 (the value of max_splits) separate strings using string_split. By setting remove_empty to true, empty array elements such as the white space between the delimiter after "def" and the delimiter before "ghi" is first removed. Finally it displays a debug message using show_debug_message_ext, printing the first five slots in the array.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_split_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_split_ext.htm new file mode 100644 index 000000000..2900a12d5 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_split_ext.htm @@ -0,0 +1,83 @@ + + + + + + string_split_ext + + + + + + + + + + +

    string_split_ext

    +

    This function splits a string into into separate strings using any of the delimiters in an array. The resulting strings are returned in a new array.

    +

    The delimiter array contains all possible values at which the string is split. For example, you can have a string that you want to split "Name,Age;Height|Description". In the end you want the individual words but there are multiple delimiter characters, which you can specify in an array: [",", ";", "|"]. The result of string_split_ext on the given string with this array will then be ["Name", "Age", "Height", "Description"].

    +

    Also see: string_split

    +

     

    +

    Syntax:

    +

    string_split_ext(string, delimiter_array, [remove_empty], [max_splits]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    stringStringThe string to split using any of the provided delimiters
    delimiter_arrayArray of StringAn array with the delimiters on which to split the string
    remove_emptyBoolean  This parameter determines if empty array elements should be removed from the array or not (default is false). It can be useful for those situations where two delimiters are right next to each other in the string, with nothing in between. By default, in this case, an empty string is added to the array (representing the empty string between those two delimiters). If you don't want these empty strings in the array then you should set this parameter to true instead.
    max_splitsReal  This parameter determines the maximum number of splits to make. Any delimiters that come after max_splits become part of the last string, e.g. splitting "1|2|3|4|5" with a max_splits of 3 and | as the delimiter will return ["1", "2", "3", "4|5"].
    +

     

    +

    Returns:

    +

    Array

    +

     

    +

    Example:

    +

    words = string_split_ext("here,there;everywhere,and beyond", [",", ";"]);

    +

    The above code splits a string using two different delimiters "," and ";". It stores the resulting array in the variable words.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_starts_with.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_starts_with.htm new file mode 100644 index 000000000..ac9cf9a7e --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_starts_with.htm @@ -0,0 +1,75 @@ + + + + + + string_starts_with + + + + + + + + + + +

    string_starts_with

    +

    This function checks if a string starts with the given substring. It returns true if it does, or false if it doesn't.

    +

     

    +

    Syntax:

    +

    string_starts_with(str, substr);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    strStringThe string to check for the occurrence of the given substring at the start
    substrStringThe substring that the string should start with
    +

     

    +

    Returns:

    +

    Boolean

    +

     

    +

    Example:

    +

    var _message = "Hello world";
    + if string_starts_with(_message, "Hello")
    + {
    +     show_debug_message("Greeting successful!");
    + }

    +

    The above code first creates a string and stores it in a temporary variable _message. It then checks if the string starts with the string "Hello" and shows a debug message if that is the case.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim.htm new file mode 100644 index 000000000..41ed01043 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim.htm @@ -0,0 +1,76 @@ + + + + + + string_trim + + + + + + + + + + +

    string_trim

    +

    This function returns a new string with all leading and trailing white-space characters removed.

    +
    +

    +

    +
     
    +

    Syntax:

    +

    string_trim(str);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    strStringThe string to trim
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example 1:

    +

    clean_string = string_trim("     Text somewhere in the middle.    ");

    +

    The above code calls the function string_trim on a string that contains both leading and trailing spaces. The result is assigned to a local variable named clean_string.

    +

    Example 2:

    +

    var _string_from_literal = @"
    + The first line 
    + is followed by the second line
    + ";
    + clean_string = string_trim(_string_literal);

    +

    The above code first defines a string literal that contains newlines by prefixing it with the @ character. It assigns the new string to the temporary variable _string_from_literal. This string is then trimmed using string_trim and the result is stored in a new variable clean_string.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim_end.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim_end.htm new file mode 100644 index 000000000..1c157bf1e --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim_end.htm @@ -0,0 +1,68 @@ + + + + + + string_trim_end + + + + + + + + + + +

    string_trim_end

    +

    This function returns a new string with all trailing white-space characters removed.

    +
    +

     

    +

    Syntax:

    +

    string_trim_end(str);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    strStringThe string to trim
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    var _the_string = "A\nB\n\C\nD\n\n\n\n\n\n";
    + var _clean_string = string_trim_end(_the_string);

    +

    The above code first defines a string with many newlines at the end and stores it in a temporary variable _the_string. It then calls string_trim_end to remove all the newline characters at the end of the string (but not the ones between the letters) and stores the result in another temporary variable _clean_string.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim_start.htm b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim_start.htm new file mode 100644 index 000000000..b6a56e1b0 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Strings/string_trim_start.htm @@ -0,0 +1,69 @@ + + + + + + string_trim_start + + + + + + + + + + +

    string_trim_start

    +

    This function returns a new string with all leading white-space characters removed.

    +
    +

     

    +

    Syntax:

    +

    string_trim_start(str);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    strStringThe string to trim
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    var _string_with_a_bit_of_everything = "     \t\t\t\tHello World";
    + var _trimmed_string = string_trim_start(_string_with_a_bit_of_everything);
    + show_debug_message(_trimmed_string);

    +

    The above code first creates a temporary string named _string_with_a_bit_of_everything. This string contains a couple of leading spaces and tabs before the actual text. It then trims all whitespace from the start of the string by calling string_trim_start and the result is stored in a new temporary variable _trimmed_string. Finally this new string is shown in a debug message.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/call_cancel.htm b/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/call_cancel.htm index 8b625d9f5..b6873c666 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/call_cancel.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/call_cancel.htm @@ -3,7 +3,7 @@ - + call_cancel diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/time_source_create.htm b/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/time_source_create.htm index 88c119677..314f4facf 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/time_source_create.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Time_Sources/time_source_create.htm @@ -122,7 +122,7 @@

    例1.


    var _time_source = time_source_create(time_source_game, 300, time_source_units_frames, _my_method);

    - time_source_start(_time_source); + time_source_start(time_source);

    この例では、300フレーム後にインスタンスが自己破壊するようにしたい。

    このコードでは、まず、単純に instance_destroy().

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_concat.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_concat.htm new file mode 100644 index 000000000..1ee9c6f23 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_concat.htm @@ -0,0 +1,79 @@ + + + + + + array_concat + + + + + + + + + + +

    array_concat

    +

    This function takes multiple arrays as arguments, joins them together (in the order of the arguments), and returns the joined array.

    +

     

    +

    Syntax:

    +

    array_concat(array1, array2 [, array3, ... array_n]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    array1ArrayThe first array to concatenate
    array2ArrayThe second array to concatenate
    [array3, ... array_n]Array  Additional arrays to concatenate
    +

    +

    Returns:

    +

    Array (new array with all arrays concatenated)

    +

     

    +

    Example:

    +

    array_1 = [1, 2, 3];
    + array_2 = [4, 5, 6];
    + array_3 = [7, 8, 9];
    + new_array = array_concat(array_1, array_2, array_3);

    +

    The above code first creates three arrays: array_1, array_2 and array_3. It then joins the arrays together using array_concat and stores the result in new_array.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_create_ext.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_create_ext.htm new file mode 100644 index 000000000..ec4d08f36 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_create_ext.htm @@ -0,0 +1,97 @@ + + + + + + array_create_ext + + + + + + + + + + +

    array_create_ext

    +

    This function creates an array of the given size. For each element in the new array, it calls the given callback function, and applies the return value to that element.

    +

    Using this function you can initialise the array with values that change depending on the array index.

    +

    Callback function

    +
    +

    The callback function supplied in the second argument should take 1 argument, which is the index of the current array element. It can return any type of value, which is stored in the array at that index.

    +

    Syntax:

    +

    function(index);

    + + + + + + + + + + + + + +
    ArgumentTypeDescription
    indexRealThe current array index
    +
    +

     

    +

    Syntax:

    +

    array_create_ext(size, function);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    sizeRealThe size of the array
    functionFunctionThe callback function used to initialise each entry
    +

    Returns:

    +

    Array

    +

     

    +

    Example:

    +

    var _f = function(_index)
    + {
    +     return _index + 1;
    + }
    + array = array_create_ext(100, _f);
    + show_debug_message(array);

    +

    The above code first creates a temporary function _f that takes in an index as an argument, and returns that index with 1 added to it.

    +

    It then uses array_create_ext with the _f function which creates an array filled with the integer numbers from 1 to 100.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_map.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_map.htm new file mode 100644 index 000000000..ec2e4ebf9 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_map.htm @@ -0,0 +1,85 @@ + + + + + + array_map + + + + + + + + + + +

    array_map

    +

    This function returns a new array that is a modified version of the given array (or a range of it), based on a callback function.

    +

    You provide an array, and a Callback Method, which is called for each element in the given array. The callback function can return any value, which is applied to that index in a new copy of the array.

    +

    After the callback is executed for all elements, the modified array (or the affected range of it) is returned as a new array. The original array is not changed; for that, see array_map_ext.

    +

    Callback Function

    +
    +

    The callback function you pass into this function should take the following arguments:

    +

    Syntax:

    +

    function(element, index);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    elementAnyThe current array element
    indexRealThe current array index
    +

    This callback function should return a value of Any type that will be applied back to the array element.

    +
    +

     

    +
    +

     

    +

    Returns:

    +

    Array

    +

     

    +
     
    +

    Example:

    +

    var _numbers = [1, 2, 3, 4, 5];
    +
    + var _double = function (_element, _index)
    + {
    +     return _element * 2;
    + }
    +
    + var _numbers_doubled = array_map(_numbers, _double); +

    +

    The above code creates an array _numbers with numbers from 1 to 5.

    +

    It creates a function _double that takes the array element and index, and returns the element multiplied by 2.

    +

    This function is then used in an array_map call, which returns a modified version of the array with all numbers doubled: [2, 4, 6, 8, 10].

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_reverse.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_reverse.htm new file mode 100644 index 000000000..cddac3a87 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/array_reverse.htm @@ -0,0 +1,80 @@ + + + + + + array_reverse + + + + + + + + + + +

    array_reverse

    +

    This function returns a new array with all the elements from the given array (or a range of it) in a reversed order.

    +

    You can also reverse only a part of the array by supplying Offset And Length values. In this case the returned array will have a length corresponding to the range given by these values (e.g. if offset and length refer to a range of 5 elements then the new array will contain 5 elements).

    +

     

    +

    Syntax:

    +

    array_reverse(array, [offset], [length]);

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    arrayArrayThe array to reverse
    offsetReal  The offset, or the starting index, in the array. Setting a negative value will count from the end of the array. The starting index will then be array_length(array) + offset. See: Offset And Length
    lengthReal  The number of elements to traverse. A negative value will traverse the array backwards (i.e. in descending order of indices, e.g. 2 > 1 > 0 instead of 0 > 1 > 2). See: Offset And Length
    +

     

    +

    Returns:

    +

    Array

    +

     

    +

    Example:

    +

    countdown = [5, 4, 3, 2, 1, 0];
    +
    + countdown_reverse = array_reverse(countdown); +

    +

    The above code creates an array countdown. It then creates an array countdown_reverse with the same elements but reversed.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int32.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int32.htm index abb816153..9cb547713 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int32.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int32.htm @@ -4,7 +4,7 @@ is_int32 - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int64.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int64.htm index 184791a96..92d509dbb 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int64.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_int64.htm @@ -4,7 +4,7 @@ is_int64 - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_undefined.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_undefined.htm index e255c1750..b5bee0322 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_undefined.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/is_undefined.htm @@ -4,7 +4,7 @@ is_undefined - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_index.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_index.htm index 7424d4f08..7f3a065d1 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_index.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_index.htm @@ -4,7 +4,7 @@ method_get_index - + @@ -40,7 +40,7 @@

    リターンです。

    var _index = method_get_index(light_setup);
    - if _index != -1
    + if _index != undefined
    {
        show_debug_message(script_get_name(_index));
    }

    diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_self.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_self.htm index 5abfce7c4..79e07918f 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_self.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/method_get_self.htm @@ -4,7 +4,7 @@ method_get_self - + diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/nameof.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/nameof.htm new file mode 100644 index 000000000..c2225237e --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/nameof.htm @@ -0,0 +1,77 @@ + + + + + + nameof + + + + + + + + + + +

    nameof

    +

    This function returns the name of the argument you pass to it as a string.

    +

    More precisely, this function returns the name of the identifier that you pass to it; any name to identify something used in your GML code: an asset name, a variable name, a function name, the name of an enum (or of one of its members) or a macro name.

    +

    GameMaker resolves the values when Compiling the game, i.e. at compile time.

    +

     

    +

    Syntax:

    +

    nameof(name);

    + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    nameAnyThe variable of which to get the name
    +

     

    +

    Returns:

    +

    String

    +

     

    +

    Example:

    +

    show_debug_message("About to reveal internal names...");
    +
    + show_debug_message($"The enemy object is called: {nameof(obj_enemy)}");
    + show_debug_message($"{pi} is a special value, it is called {nameof(pi)}.");
    + show_debug_message($"The function to create a ds_list is called: {nameof(ds_list_create)}, or even: {nameof(ds_list_create())}");
    +
    + var _a = 77, _b = 66;
    + var _c = _a + _b;
    + show_debug_message($"The sum of {nameof(_a)} and {nameof(_b)} is {nameof(_c)}, or, using their values: {_a} + {_b} = {_c}"); +

    +

    The code above shows a few examples on how to use the nameof function. The name of various variables and functions in GML is looked up using the function and output in the debug log using show_debug_message.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_clone.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_clone.htm new file mode 100644 index 000000000..b5bb76b08 --- /dev/null +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_clone.htm @@ -0,0 +1,80 @@ + + + + + + variable_clone + + + + + + + + + + +

    variable_clone

    +

    This function clones the value you pass it and returns the new clone.

    +

    It clones nested structs and arrays up to a given depth (128 by default), which you can override by providing the optional depth parameter.

    +

     When cloning a struct created using a Constructor, the new struct will also be an instance of the original Constructor.

    +

     When cloning a struct that contains a method whose self exists within the struct being cloned, a copy of the function will be created and bound to the new struct, mirroring the relationships of the original.
    +
    + When cloning a method whose self does not exist in the struct being cloned, the new method will be unbound, i.e. its self will be undefined. +

    +

     The built-in Data Structures and Instances are not cloned; for this type of variable the actual value (data structure reference or instance reference, respectively) is copied.

    +

     Built-in structs, such as the structs related to sequences and animation curves, cannot be cloned using this function.

    +

     

    +

    Syntax:

    +

    variable_clone(value[, depth]);

    + + + + + + + + + + + + + + + + + + + + + + + +
    ArgumentTypeDescription
    valueAnyThe value to clone
    depthReal  The maximum depth level to clone the variable, in case this is e.g. a nested struct. The default is 128, the maximum possible value.
    +

     

    +

    Returns:

    +

    Any

    +

     

    +

    Example:

    +

    var _the_original = {a: "some text", b: [1, 2, 3, 4, 5], c: 6};
    + var _the_clone = variable_clone(_the_original);

    +

    The above code first defines a temporary struct variable _the_original. A clone is then created from this variable using variable_clone. The new variable is stored in another variable _the_clone.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_struct_remove.htm b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_struct_remove.htm index 33f2356fc..24daa81a7 100644 --- a/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_struct_remove.htm +++ b/Manual/contents/GameMaker_Language/GML_Reference/Variable_Functions/variable_struct_remove.htm @@ -62,9 +62,11 @@
    © CopyrightY \ No newline at end of file diff --git a/Manual/contents/IDE_Tools/Source_Control/Cloning_A_Repository.htm b/Manual/contents/IDE_Tools/Source_Control/Cloning_A_Repository.htm index d16d538f5..482e3f2db 100644 --- a/Manual/contents/IDE_Tools/Source_Control/Cloning_A_Repository.htm +++ b/Manual/contents/IDE_Tools/Source_Control/Cloning_A_Repository.htm @@ -1,4 +1,4 @@ - + @@ -40,11 +40,15 @@

    リポジトリのクローン

    © CopyrightYoYo Games Ltd. 2021 All Rights Reserved
    - + +--> + \ No newline at end of file diff --git a/Manual/contents/Quick_Start_Guide/Creating_Sound_Effects.htm b/Manual/contents/Quick_Start_Guide/Creating_Sound_Effects.htm index 491f0d342..c3ba1d800 100644 --- a/Manual/contents/Quick_Start_Guide/Creating_Sound_Effects.htm +++ b/Manual/contents/Quick_Start_Guide/Creating_Sound_Effects.htm @@ -54,5 +54,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Quick_Start_Guide/Creating_Sprites.htm b/Manual/contents/Quick_Start_Guide/Creating_Sprites.htm index 308c27192..89352f70a 100644 --- a/Manual/contents/Quick_Start_Guide/Creating_Sprites.htm +++ b/Manual/contents/Quick_Start_Guide/Creating_Sprites.htm @@ -78,5 +78,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/Quick_Start_Guide/Movement_And_Controls.htm b/Manual/contents/Quick_Start_Guide/Movement_And_Controls.htm index ccff3a268..3e939f3f2 100644 --- a/Manual/contents/Quick_Start_Guide/Movement_And_Controls.htm +++ b/Manual/contents/Quick_Start_Guide/Movement_And_Controls.htm @@ -38,7 +38,7 @@

    動きと制御

    Play Icon

    var _dist = point_distance(x, y, mouse_x, mouse_y);

    - if _dist <= speed
    + if (_dist <= speed)
    {
        speed = 0;
    } @@ -58,15 +58,15 @@

    動きと制御

    {
        x = x - 2;
    }
    - else if keyboard_check(vk_right)
    + else if (keyboard_check(vk_right))
    {
        x = x + 2;
    }
    - else if keyboard_check(vk_up)
    + else if (keyboard_check(vk_up))
    {
        y = y - 2;
    }
    - else if keyboard_check(vk_down)
    + else if (keyboard_check(vk_down))
    {
        y = y + 2;
    }

    @@ -78,15 +78,15 @@

    動きと制御

    {
        x = x - 2;
    }
    - if keyboard_check(vk_right)
    + if (keyboard_check(vk_right))
    {
        x = x + 2;
    }
    - if keyboard_check(vk_up)
    + if (keyboard_check(vk_up))
    {
        y = y - 2;
    }
    - if keyboard_check(vk_down)
    + if (keyboard_check(vk_down))
    {
        y = y + 2;
    }

    @@ -97,15 +97,15 @@

    動きと制御

    {
        x = x - 2;
    }
    - if keyboard_check(ord("D"))
    + if (keyboard_check(ord("D")))
    {
        x = x + 2;
    }
    - if keyboard_check(ord("W"))
    + if (keyboard_check(ord("W")))
    {
        y = y - 2;
    }
    - if keyboard_check(ord("S"))
    + if (keyboard_check(ord("S")))
    {
        y = y + 2;
    }

    @@ -134,8 +134,8 @@

    動きと制御

    GML VisualExample

    if gamepad_id > -1
    {
    -     var _h = gamepad_axis_value(gamepad_id, gp_axislh);
    -     var _v = gamepad_axis_value(gamepad_id, gp_axislv);
    +     var _h = gamepad_axis_value(gamepads[0], gp_axislh);
    +     var _v = gamepad_axis_value(gamepads[0], gp_axislv);
        x += _h * 4;
        y += _v * 4;
    }

    diff --git a/Manual/contents/Quick_Start_Guide/Objects_And_Instances.htm b/Manual/contents/Quick_Start_Guide/Objects_And_Instances.htm index 6ff68f26f..0db129766 100644 --- a/Manual/contents/Quick_Start_Guide/Objects_And_Instances.htm +++ b/Manual/contents/Quick_Start_Guide/Objects_And_Instances.htm @@ -29,6 +29,11 @@

    オブジェクトとインスタンス

    Add Sprite Icon

    上に表示されているのは、さまざまなイベントカテゴリーで、その中には他のサブカテゴリーが含まれています。ここでは、すべてのイベントを紹介するのではなく、最も重要な5つのイベントを簡単に説明します。

    + + + + + @@ -58,7 +63,7 @@

    オブジェクトとインスタンス

    The Asset Explorer

    - + For information on all other types of events, please see here.

    各イベントの詳細については、こちらをご覧ください。

    その後、リスト内のイベントをクリックして、object に追加することができます。

    diff --git a/Manual/contents/Quick_Start_Guide/Rooms.htm b/Manual/contents/Quick_Start_Guide/Rooms.htm index 0b2d78ece..3e761ca69 100644 --- a/Manual/contents/Quick_Start_Guide/Rooms.htm +++ b/Manual/contents/Quick_Start_Guide/Rooms.htm @@ -66,7 +66,7 @@

    客室数

    - + We won't go into much more details about the room editor here (for that we have this section of the manual), but we will briefly explain how to add instances to an Instance Layer, as you'll need to know that for the next section of the Quick Start Guide.

    ここでは、room エディタについてあまり詳しく説明しませんが(そのために、マニュアルのこのセクションがあります)、インスタンスレイヤにインスタンスを追加する方法について簡単に説明します。 クイックスタートガイドの次のセクションのために知っておいてください。

    diff --git a/Manual/contents/Quick_Start_Guide/What_Is_Programming_.htm b/Manual/contents/Quick_Start_Guide/What_Is_Programming_.htm index 7ebba1e56..5b5cfc84f 100644 --- a/Manual/contents/Quick_Start_Guide/What_Is_Programming_.htm +++ b/Manual/contents/Quick_Start_Guide/What_Is_Programming_.htm @@ -88,7 +88,7 @@

    プログラミングとは?


        reset the countdown variable to 30.

    - else:
    + else - meaning the countdown variable is more than zero:

        subtract one from the countdown variable.

    @@ -111,7 +111,7 @@

    プログラミングとは?

    else
    {

    -     if mouse_check_button_released(mb_left) == true
    +     if mouse_check_button_released(mb_left)
        {

            image_blend = c_white;
    diff --git a/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/GX_Games_Preferences.htm b/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/GX_Games_Preferences.htm new file mode 100644 index 000000000..bd3f7bcbd --- /dev/null +++ b/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/GX_Games_Preferences.htm @@ -0,0 +1,47 @@ + + + + + + GX.games + + + + + + + + + + +

    GX.games Preferences

    +

    The GX.games preferences have the following options:

    +

    +
      +
    • Emscripten SDK location: This is the location of the Emscripten SDK, required for YYC builds made for GX.games. Read Setting Up For GX.games for information on setting up the SDK.
    • +
    • Default Web Server Port: This lets you change the default port for the GX.games web server. Default value is 51264.
    • +
    • Default Web Server Address: Here you can change the default web server address for the GX.games web server. Default value is 127.0.0.1.
    • +
    • Default Web Server Allowed IPs: Here you can add in any allowed IPs for the web server and they will be set as default for all devices added through the Target Manager.
    • +
    +

     

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/HTML5.htm b/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/HTML5.htm index 1d1794376..5a39ff4f4 100644 --- a/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/HTML5.htm +++ b/Manual/contents/Setting_Up_And_Version_Information/Platform_Preferences/HTML5.htm @@ -33,14 +33,13 @@

    HTML5の環境設定

    +
    © Copyright YoYo Games Ltd. 2022 All Rights Reserved
    © CopyrightYoYo Games Ltd. 2022 All Rights Reserved
    - - - \ No newline at end of file + \ No newline at end of file diff --git a/Manual/contents/Setting_Up_And_Version_Information/Release_Notes.htm b/Manual/contents/Setting_Up_And_Version_Information/Release_Notes.htm index d8db32b74..317f8759e 100644 --- a/Manual/contents/Setting_Up_And_Version_Information/Release_Notes.htm +++ b/Manual/contents/Setting_Up_And_Version_Information/Release_Notes.htm @@ -9,8 +9,8 @@ - - + + diff --git a/Manual/contents/Settings/Game_Options/GX_Games.htm b/Manual/contents/Settings/Game_Options/GX_Games.htm new file mode 100644 index 000000000..433d1105a --- /dev/null +++ b/Manual/contents/Settings/Game_Options/GX_Games.htm @@ -0,0 +1,78 @@ + + + + + + GX.games + + + + + + + + + + +

    GX.games Game Options

    +

    The GX.games Game Options allow you to modify the properties for your game. The following sections are provided:

    +

    General

    +

    This window shows your GX.games sign-in status. You can click on the  Refresh icon to log in using your Opera account.

    +

    You then have the following options:

    +
      +
    • Select game: From this list, you can either select an existing game to update, or choose to upload a new game.
    • +
    • Game Name: This is your game's name (title) on GX.games.
      +
      + IMPORTANT In order for the upload to GX.games to succeed, it's important that you only use allowed characters in the game's name (which, by default, is set to your GameMaker project's name, so make sure to either choose a valid project name or change the game's name manually afterwards).
      +
      + If you upload a game with a title that has forbidden characters, you will get this error: Incorrect Data. Check the output
      +
      + The allowed characters are: +
        +
      • a-z, A-Z (with a support of local schemas such as å)
      • +
      • 0-9
      • +
      • whitespace
      • +
      • : - ! ? . , ' & ( )
      • +
      +
    • +
    • Version: This is the version of the game that was last uploaded. You can only change this field before your game has been uploaded to GX.games.
    • +
    • Next Version: This is the version number used for your next GX.games upload. You can only change this after your game has been uploaded to GX.games. You do not need to modify this manually for each upload, as GameMaker will automatically increment the last digit of the version number for you.
    • +
    • Register on GX.games: Click on this button to register a new entry on GX.games. This is only valid when "Select game" is set to "New game".
    • +
    • Select group: Before uploading a new game, you can select the studio that the game will belong to.
    • +
    • Edit Game on Opera: This opens GX.games DevCloud and takes you to your game's "Game details" page. This is only clickable when you're logged in and your game is uploaded.
    • +
    • Internal Share URL: This opens the private version of your game, only when it has been enabled on GX.games DevCloud.
    • +
    • Public Share URL: This opens the public version of your game, only when it has been enabled on GX.games DevCloud.
      +
      + Both of these URLs can be shared with others to allow them to play your game. +
    • +
    +

    Graphics

    +

    Here you can change the following details related to how your game will be displayed:

    +
      +
    • Display cursor: Controls whether the mouse cursor is visible when your game starts. Useful for games that don't require mouse input or use a custom mouse sprite.
    • +
    • Interpolate colours between pixels: Turns on linear interpolation, which basically "smooths" pixels. For crisp pixel graphics, it should be off, but if you have nice alpha blends and smoothed edged graphics it is better left on. This is on by default.
    • +
    • Scaling: Your game can be configured to scale the draw canvas automatically to maintain the aspect ratio within the browser, or you can select to have it run full scale. The full scale option will not full screen the game in the browser, but rather stretch what is drawn to fit the canvas size, as defined by the first room of the game. This is set to keep aspect ratio by default.
    • +
    +

    Finally there is the option to set the size of the texture page. The default (and most compatible) size is 2048x2048, but you can choose from anywhere between 256x256 up to 8192x8192. There is also a button marked Preview which will generate the texture pages for this platform and then open a window so that you can see how they look. This can be very useful if you wish to see how the texture pages are structured and to prevent having texture pages larger (or smaller) than necessary. For more information on texture pages, please see here.

    +

     

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/Settings/Game_Options/HTML5.htm b/Manual/contents/Settings/Game_Options/HTML5.htm index 572e2332e..d00dd7f87 100644 --- a/Manual/contents/Settings/Game_Options/HTML5.htm +++ b/Manual/contents/Settings/Game_Options/HTML5.htm @@ -4,7 +4,7 @@ HTML5 - + diff --git a/Manual/contents/Settings/Game_Options/Template_Info.htm b/Manual/contents/Settings/Game_Options/Template_Info.htm index 136cffe08..68e544920 100644 --- a/Manual/contents/Settings/Game_Options/Template_Info.htm +++ b/Manual/contents/Settings/Game_Options/Template_Info.htm @@ -25,14 +25,13 @@

    テンプレート情報

    +
    © Copyright YoYo Games Ltd. 2021 All Rights Reserved
    © CopyrightYoYo Games Ltd. 2021 All Rights Reserved
    - - - \ No newline at end of file + \ No newline at end of file diff --git a/Manual/contents/Settings/Game_Options/iOS.htm b/Manual/contents/Settings/Game_Options/iOS.htm index ed3a1e6c3..9777a65be 100644 --- a/Manual/contents/Settings/Game_Options/iOS.htm +++ b/Manual/contents/Settings/Game_Options/iOS.htm @@ -4,7 +4,7 @@ iOS - + diff --git a/Manual/contents/Settings/Runner_Details/Compiler_Batch_Files.htm b/Manual/contents/Settings/Runner_Details/Compiler_Batch_Files.htm index 698860e30..f8d2fd1fe 100644 --- a/Manual/contents/Settings/Runner_Details/Compiler_Batch_Files.htm +++ b/Manual/contents/Settings/Runner_Details/Compiler_Batch_Files.htm @@ -72,6 +72,14 @@

    実行

    このscriptTexturesDir という環境変数を受け取り、生成されたpathtextures を格納します。 + + Platform-Specific Steps + + + pre_gradle_step.bat + pre_gradle_step.sh + Android This is executed when the files necessary for the Android tools have been created, but before Gradle is called. You can use this step to access and modify the Android files yourself, before the Android tools compile it into a final executable. +

    これらのscript ファイルは、すべてのターゲット・プラットフォームでビルドする際にサポートされます。

    diff --git a/Manual/contents/Settings/Texture_Information/Dynamic_Textures.htm b/Manual/contents/Settings/Texture_Information/Dynamic_Textures.htm new file mode 100644 index 000000000..572536743 --- /dev/null +++ b/Manual/contents/Settings/Texture_Information/Dynamic_Textures.htm @@ -0,0 +1,83 @@ + + + + + + Dynamic Textures + + + + + + + + + + + +

    Dynamic Textures

    +

    In the Texture Group settings, you can mark a group as "Default" or "Dynamic".

    +

    How Textures Work

    +
    +

    "Default" Groups

    +

    A Default Texture Group is included in your final game's package (WAD file). Any such texture groups are loaded into RAM as soon as the game starts, and pre-fetched into VRAM when required or asked.

    +

    "Dynamic" Groups

    +

    A Dynamic Texture Group is not loaded when the game starts. It's either loaded when required (i.e. when an image from it is drawn) or when you load it manually.

    +

    You load a Dynamic Texture Group into RAM manually by calling texturegroup_load(). By default, this function will also decompress the group and pre-fetch it into VRAM.

    +

    You can disable pre-fetching by setting the function's second argument to false. This will leave you to manually pre-fetch it later, or have it fetched automatically when an image is drawn from it (the latter is not recommended due to it being synchronous).

    +

    You can also unload a texture group using texturegroup_unload(), which will remove it from memory and place it back into disk in its original, compressed form.

    +

     Before a Dynamic Texture Group is loaded, you can't run operations that require reading its contained assets, such as duplicating a sprite (this will trigger the texture group to load but the function will still fail as it can't load immediately). You can however read texture information such as UVs and TPE.

    +

    Dynamic Group Modes

    +

    Using texturegroup_set_mode() you can set the "mode" for Dynamic groups to either "Implicit" (default) or "Explicit". This changes whether Dynamic groups can be loaded automatically.

    +

    This setting is global and can't be applied per-group.

    +

    Implicit

    +

    texturegroup_set_mode(false, ...)

    +

    This is the default setting. This enables automatic loading of Dynamic groups, so when an image from an unloaded Dynamic group is drawn, it will trigger the loading of that Texture Group.
    +
    + This may cause a small freeze as the texture is loaded into VRAM and decompressed, so making use of implicit loading is not recommended.
    +
    + When a Texture Group is triggered implicitly, only the required Texture Page is loaded. For example, if your unloaded Texture Group has 4 Texture Pages, and you attempt to draw something from Texture Page 2, only that page will be loaded, and Texture Pages 1, 3 and 4 will remain on disk. +

    +

    Explicit

    +

    texturegroup_set_mode(true, ...)

    +

    This setting disables automatic loading of Dynamic groups, meaning you have to load them manually. When you try drawing an image from a Texture Group that hasn't been loaded, the image will not draw, and an error will be printed to the output log.
    +
    + You can set a "fallback" sprite in texturegroup_set_mode() which would be drawn in place of a texture that hasn't been loaded. +

    +

    +

    Textures being unloaded at runtime, showing the fallback sprite

    +

    When the fallback sprite is displayed, its whole texture page is drawn, so it's recommended to enable Separate Texture Page for your fallback sprite, preventing unintended graphics from appearing. The texture page for the fallback sprite is automatically loaded even if it's set as a Dynamic page.

    +

    The fallback sprite used in the example above was created as a gradient checkerboard, so you can tell which part of the fallback texture is being drawn at any moment, and what scale it's being drawn at, which may help diagnose texture-related issues.

    +

    +

    Paths and Modding

    +

    In the Texture Groups settings, you can set the path where the Dynamic group will be placed within the final game directory. Without a set path, the textures will be placed at the root of the game's directory.

    +

    If you set the group format to "PNG", the exported texture files will become directly editable, allowing them to be modified by players.

    +

    More Functions

    +

    Here are some more functions relating to Dynamic groups:

    +
      +
    • texturegroup_set_mode(): In addition to setting the mode, you can also enable debugging with this function, which will display information about all Texture Pages on-screen:
      + +
    • +
    • texturegroup_get_status(): This returns the status of a texture group, telling you whether it's loaded, unloaded, currently loading, or fetched into VRAM.
    • +
    +

     

    +

     

    +

     

    + + + + + + \ No newline at end of file diff --git a/Manual/contents/Settings/The_Room_Manager.htm b/Manual/contents/Settings/The_Room_Manager.htm index feee62c9a..d44e756a5 100644 --- a/Manual/contents/Settings/The_Room_Manager.htm +++ b/Manual/contents/Settings/The_Room_Manager.htm @@ -79,5 +79,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Code_Snippets.htm b/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Code_Snippets.htm index 2fde78461..02563c9e0 100644 --- a/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Code_Snippets.htm +++ b/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Code_Snippets.htm @@ -1,4 +1,4 @@ - + @@ -59,10 +59,14 @@

    コードスニペット

    © CopyrightYoYo Games Ltd. 2022 All Rights Reserved
    - + +--> + \ No newline at end of file diff --git a/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Feather_Directives.htm b/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Feather_Directives.htm new file mode 100644 index 000000000..e9ced750f --- /dev/null +++ b/Manual/contents/The_Asset_Editors/Code_Editor_Properties/Feather_Directives.htm @@ -0,0 +1,142 @@ + + + + + + + Feather Directives + + + + + + + + + +

    Feather Directives

    +

    Feather Directives are comments that affect how Feather treats your GML Code, including which Feather rules it applies, the Profile it uses and whether strict type validation is applied.

    +

    By default, Feather directives apply to the current script and to the functions declared inside of it, unless you supply a target path.

    +
    +

    See Also (placeholder)

    +
      +
    1. Topic List
    2. +
    +
    +

    General

    +

    A Feather directive has the following syntax: 

    +

    // Feather command parameters [in PATH]

    +

    It is a regular script comment that starts with Feather, followed by the command and its parameters. Optionally, it may take a path to a script, object or group in The Asset Browser to which the directive is applied.

    +

    Ignoring Feather Rules

    +

    Specific feather rules can be ignored using the directive Feather ignore or Feather disable

    +

    // Feather ignore  GM1010
    + // Feather disable GM1010

    +

    For example, consider the following piece of code: 

    +

    // Feather ignore GM1010
    + result = 5 + "5";

    +

    With Strict Type mode enabled, Feather normally shows a "GM1010 - Cannot perform '+' operation between types 'real' and 'string' message. With the directive above, Feather will ignore messages of this type, in that particular script.

    +

    The directive only affects lines after the comment itself, so any statements before the comment will still show warnings.

    +

    Ignoring Once

    +

    The GM message can be ignored only once by adding once:

    +

    // Feather ignore once GM1010

    +

    This command makes Feather ignore the first occurrence of this type of message but not the ones that come after that: 

    +

    // Feather ignore once GM1010
    + result = 5 + "5";    // ignored
    + result = 6 + "6";    // error

    +

    Restoring

    +

    Finally, you can re-enable the GM message using restore / enable

    +

    // Feather restore GM1010
    + // Feather enable  GM1010

    +

    Profiles

    +

    This directive sets the profile for the script: 

    +

    // Feather use syntax-errors
    +// Feather use type-errors
    +// Feather use all
    +// Feather use none

    +

     This Feather directive corresponds to the Profile preference in the Feather Preferences.

    +

    Type Validation Mode

    +

    This directive sets the type validation mode to use from either strict or relaxed: 

    +

    /// Feather use strict
    +/// Feather use relaxed

    +

     This Feather directive corresponds to the Strict Type mode preference in the Feather Preferences.

    +

    Combined Directives

    +

    You can also set the profile and type validation mode in a single line: 

    +

    /// Feather use all, strict

    +

    The above comment will make Feather look for All errors and use Strict Type mode.

    +

    Path

    +

    Optionally you can provide a path using the in directive to apply a Feather directive to a specific script, object or group in The Asset Browser. This can be placed in the main script of an external library of functions, though you can place it in any other script, e.g. a blank "FeatherConfig" script.

    +

     Having numerous rules using paths may cause performance issues, the exception being paths set specifically to * alone.

    +

    You can use the following special symbols in your paths: 

    +
      +
    • / - When used in the beginning of a path, points to the root of the Asset Browser
    • +
    • . - When used in the beginning of a path, points to the current script's folder
    • +
    • * is a wildcard that matches everything inside the preceding directory
    • +
    +

    This way you can define paths to assets in the Asset Browser, for example:

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    PathApplies To
    /Scripts/*All assets in /Scripts
    /*All assets
    ./*All assets in the current folder and subfolders
    /Foo/Bar/obj_managerobj_manager in the /Foo/Bar folder
    +

    Examples: 

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    DirectiveEffect
    // Feather ignore GM2017 in *Ignores all Naming Rule violations in the whole project
    // Feather ignore GM1064 in ./*Ignores GM1064 in the current folder and all subfolders
    // Feather use type-errors in /Objects/System/*Sets the profile to type-errors in specifically the Objects/System folder
    // Feather use all in /Objects/System/obj_controllerSets the profile to all in obj_controller
    +

     No consistent result is guaranteed if you have two directives that enable and disable a Feather message on the same path.

    +

     

    +

     

    + + + \ No newline at end of file diff --git a/Manual/contents/The_Asset_Editors/Extension_Creation/Android_Extensions.htm b/Manual/contents/The_Asset_Editors/Extension_Creation/Android_Extensions.htm index 325c3a800..ab946cc97 100644 --- a/Manual/contents/The_Asset_Editors/Extension_Creation/Android_Extensions.htm +++ b/Manual/contents/The_Asset_Editors/Extension_Creation/Android_Extensions.htm @@ -45,8 +45,8 @@

    コードインジェクション

    YYAndroidGradle
    YYAndroidGradleEnd
    YYAndroidGradleAndroid
    - YYAndroidGradleDependencies 
    - YYAndroidGradleProperties

    + YYAndroidGradleDependencies 
    + YYAndroidGradleProperties
    YYAndroidManifestAttributes
    YYAndroidManifestApplicationAttributes
    YYAndroidManifestActivityAttributes
    diff --git a/Manual/contents/The_Asset_Editors/Extension_Creation/HTML5_Extensions.htm b/Manual/contents/The_Asset_Editors/Extension_Creation/HTML5_Extensions.htm new file mode 100644 index 000000000..fb9b4d811 --- /dev/null +++ b/Manual/contents/The_Asset_Editors/Extension_Creation/HTML5_Extensions.htm @@ -0,0 +1,130 @@ + + + + + + HTML5 Code Injection + + + + + + + + + + +

    HTML5 Code Injection

    +

    You can inject custom HTML into your game's index.html file through extensions. This is done by clicking on "HTML5" under "Platform Settings" in an extension's editor:

    +

    +

    Insertion Tags

    +

    In the "Code Injection" window, you can add custom HTML for your index.html file. Such HTML is inserted into different parts of the index.html file by using the following tags:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TagDescription
    GM_HTML5_PreHeadHTML is inserted after the <head> tag
    GM_HTML5_PostHeadHTML is inserted after the </head> tag
    GM_HTML5_MetaInside <head>, after <meta> tags
    GM_HTML5_PreStyleHTML is inserted inside <head> </head>, but before <style>
    GM_HTML5_PostStyleHTML is inserted inside <head> </head>, but after </style>
    GM_HTML5_StyleWithin <style> </style> tags; must be CSS code
    GM_HTML5_PreBodyHTML is inserted before the <body> tag
    GM_HTML5_PostBodyHTML is inserted after the </body> tag
    +

    Here is an example of HTML code injected into some of the above tags:

    +

    +

    Multiple extensions may inject code into the same tag, however the order of their insertions into the final HTML file cannot be guaranteed.

    +

    Variables

    +

    Within your injected HTML5 code, you may use variables that GameMaker provides. You can see such variables in the example above, wrapped inside ${ }.

    +

    You can also read your custom extension options by using the ${YYEXTOPT_HTML5Injection_OPTIONNAME} syntax.

    +

    The following built-in variables can be used with the ${VARIABLE} syntax:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    VariableDescription
    GM_HTML5_BrowserTitleThe title of the browser window
    GM_HTML5_BackgroundColourThe background colour of the page
    GM_HTML5_GameWidthThe width of the game's canvas (in pixels)
    GM_HTML5_GameHeightThe height of the game's canvas (in pixels)
    GM_HTML5_GameFolderThe path to the game's folder (containing the index.html file)
    GM_HTML5_GameFilenameThe name of the HTML file
    GM_HTML5_CacheBustA random value used for cache-busting; can be added as a URL parameter in custom links to prevent the browser from getting the cached version of a file
    +

    Template HTML File

    +

    You can get the template index.html file from the runtime directory, under runtime-[version]/html5/index.html. Here you can view the template file to understand where the tags are inserted. You can make a modified copy and use it for your game instead of the default file, by adding it as an Included File and selecting it in the HTML5 Game Options.

    +

    The template HTML file will contain some tags starting with GM_HTML5_Inject*. These are used by GameMaker to inject values from the HTML5 Game Options, and as such can't be used for inserting custom code.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/The_Asset_Editors/Extension_Creation/iOS_Extensions.htm b/Manual/contents/The_Asset_Editors/Extension_Creation/iOS_Extensions.htm index c464d08d8..41e0eb513 100644 --- a/Manual/contents/The_Asset_Editors/Extension_Creation/iOS_Extensions.htm +++ b/Manual/contents/The_Asset_Editors/Extension_Creation/iOS_Extensions.htm @@ -68,6 +68,7 @@

    コードインジェクション

    YYIosScriptPhase
    YYIosCFBundleURLSchemesArray
    YYIosLSApplicationQueriesSchemesArray
    + YYIosPrivacyManifest

    YYTvosPlist
    YYTvosEntitlements
    @@ -77,7 +78,8 @@

    コードインジェクション

    YYTvosBuildSettingsInjection
    YYTvosScriptPhase
    YYTvosCFBundleURLSchemesArray
    - YYTvosLSApplicationQueriesSchemesArray + YYTvosLSApplicationQueriesSchemesArray
    + YYTvosPrivacyManifest

    コードが注入されるruntime の位置は、タグの種類によって異なります。

    @@ -116,6 +118,10 @@

    コードインジェクション

    + + + +
    {RUNTIME}TemplateProject${YXCodeProjName}.xcodeproj
    xcshareddata}${YXCodeProjName}.xcschemes
    PrivacyManifest{RUNTIME}\ios\TemplateProject\${YYXCodeProjName}\Supporting Files\PrivacyInfo.xcprivacy

    注意これらのpaths はVM用のみです。YYCの場合、注入されたコードは {RUNTIME}\yyc\ ディレクトリに入ります。paths はVM用のものと同じかどうかはわかりません。

    diff --git a/Manual/contents/The_Asset_Editors/Object_Properties/Object_Variables.htm b/Manual/contents/The_Asset_Editors/Object_Properties/Object_Variables.htm index 0d6079a89..2a30f7393 100644 --- a/Manual/contents/The_Asset_Editors/Object_Properties/Object_Variables.htm +++ b/Manual/contents/The_Asset_Editors/Object_Properties/Object_Variables.htm @@ -73,5 +73,5 @@
    © CopyrightY - - \ No newline at end of file + + \ No newline at end of file diff --git a/Manual/contents/The_Asset_Editors/Object_Properties/Wallpaper_Config_Event.htm b/Manual/contents/The_Asset_Editors/Object_Properties/Wallpaper_Config_Event.htm new file mode 100644 index 000000000..5e0421fa8 --- /dev/null +++ b/Manual/contents/The_Asset_Editors/Object_Properties/Wallpaper_Config_Event.htm @@ -0,0 +1,55 @@ + + + + + + + Wallpaper Events + + + + + + + + + +

    Wallpaper Events

    +

    There are two events used for making Live Wallpapers.

    +

    +

    Wallpaper Config

    +

    This event runs whenever a setting for the wallpaper is changed in the companion app.

    +

    You get the updated wallpaper settings in the wallpaper_config variable.

    +

    wallpaper_config

    +

    This variable is a struct containing your sections. Each section is a struct containing the options and sections within that section.

    +

    To access an option from this struct, you would use this syntax: 

    +

    wallpaper_config.section_name.option_name

    +

    Or, when using nested sections: 

    +

    wallpaper_config.section1_name.section2_name.option_name

    +

    Here is an example using the same settings defined on the wallpaper_set_config page: 

    +

    var _new_colour = wallpaper_config.colours.blendColor;
    + obj_clock.colour = _new_colour;

    +

    Wallpaper Subscription Data

    +

    This event is triggered when information is received on a metric that you are subscribed to. For details on what is included in this event, see Receiving Metrics.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/The_Asset_Editors/Room_Properties/FX/All_Filter_Effect_Types.htm b/Manual/contents/The_Asset_Editors/Room_Properties/FX/All_Filter_Effect_Types.htm index 6290e43f5..57f24e036 100644 --- a/Manual/contents/The_Asset_Editors/Room_Properties/FX/All_Filter_Effect_Types.htm +++ b/Manual/contents/The_Asset_Editors/Room_Properties/FX/All_Filter_Effect_Types.htm @@ -517,11 +517,11 @@

    FXの種類とパラメータ

    - - - - - + + + + + diff --git a/Manual/contents/The_Asset_Editors/Sequence_Properties/Broadcast_Messages.htm b/Manual/contents/The_Asset_Editors/Sequence_Properties/Broadcast_Messages.htm index 03331a5f7..e75be626c 100644 --- a/Manual/contents/The_Asset_Editors/Sequence_Properties/Broadcast_Messages.htm +++ b/Manual/contents/The_Asset_Editors/Sequence_Properties/Broadcast_Messages.htm @@ -9,8 +9,8 @@ - - + + diff --git a/Manual/contents/The_Asset_Editors/Sprite_Properties/Sprite_Strips.htm b/Manual/contents/The_Asset_Editors/Sprite_Properties/Sprite_Strips.htm new file mode 100644 index 000000000..900d86814 --- /dev/null +++ b/Manual/contents/The_Asset_Editors/Sprite_Properties/Sprite_Strips.htm @@ -0,0 +1,48 @@ + + + + + + Strip Images + + + + + + + + + + +

    Strip Images

    +

    You can use "strip images" to easily import animated sprites into GameMaker.

    +

    A strip image contains multiple frames, laid out horizontally, starting from the left. The name of a strip image file must end with "_stripN", where "N" is the number of frames in the animation.

    +

    The above strip image contains 5 frames. Its filename is PlayerSprite_strip5.png, indicating it has 5 frames, which GameMaker uses to divide it into separate sub-images.

    +

    You can save this image and drag it into GameMaker right now, and it will be imported as an animation:

    +

    You can import a strip image via the "Import" button in the Sprite Editor, by dragging it into the IDE, or loading it at runtime with sprite_add().

    +

    The width of the final sprite will be equal to the total width of the strip image divided by the number of frames in its filename. For example, a 250px-wide strip with 5 frames will result in a 50px-wide image.

    +

    Fonts

    +

    You can create a strip image to be used as a font, where each character is a frame in the strip image.

    +

    Such a strip image can be loaded at runtime using font_add_sprite().

    +

    Saving Strip Images

    +

    You can save a sprite as a strip image file at runtime using sprite_save_strip(). This sprite may have previously been loaded via the IDE, at runtime with sprite_add(), or built from a surface.

    +

     

    +

     

    + + + + + \ No newline at end of file diff --git a/Manual/contents/assets/Images/Asset_Editors/FXs/gaussian_blur.png b/Manual/contents/assets/Images/Asset_Editors/FXs/gaussian_blur.png new file mode 100644 index 000000000..4ac0e3c20 Binary files /dev/null and b/Manual/contents/assets/Images/Asset_Editors/FXs/gaussian_blur.png differ diff --git a/Manual/contents/assets/Images/Asset_Editors/basic_collisions_image.png b/Manual/contents/assets/Images/Asset_Editors/basic_collisions_image.png index b9f3ff527..f2fcc7207 100644 Binary files a/Manual/contents/assets/Images/Asset_Editors/basic_collisions_image.png and b/Manual/contents/assets/Images/Asset_Editors/basic_collisions_image.png differ diff --git a/Manual/contents/assets/Images/IDE Tools/SCM_StagedChanges.png b/Manual/contents/assets/Images/IDE Tools/SCM_StagedChanges.png index 84a1fd504..04a87b444 100644 Binary files a/Manual/contents/assets/Images/IDE Tools/SCM_StagedChanges.png and b/Manual/contents/assets/Images/IDE Tools/SCM_StagedChanges.png differ diff --git a/Manual/contents/assets/Images/IDE_Input/Help_Menu_Bug_Report_Bug_Ticket_Sample.png b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Bug_Report_Bug_Ticket_Sample.png new file mode 100644 index 000000000..61a223e4b Binary files /dev/null and b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Bug_Report_Bug_Ticket_Sample.png differ diff --git a/Manual/contents/assets/Images/IDE_Input/Help_Menu_Bug_Report_Packaging_Message.png b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Bug_Report_Packaging_Message.png new file mode 100644 index 000000000..244a5a963 Binary files /dev/null and b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Bug_Report_Packaging_Message.png differ diff --git a/Manual/contents/assets/Images/IDE_Input/Help_Menu_Report_Bug_Anonymous.png b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Report_Bug_Anonymous.png new file mode 100644 index 000000000..9cf50c77f Binary files /dev/null and b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Report_Bug_Anonymous.png differ diff --git a/Manual/contents/assets/Images/IDE_Input/Help_Menu_Report_Bug_Window.png b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Report_Bug_Window.png new file mode 100644 index 000000000..b5648c4ca Binary files /dev/null and b/Manual/contents/assets/Images/IDE_Input/Help_Menu_Report_Bug_Window.png differ diff --git a/Manual/contents/assets/Images/IDE_Input/Window_Menu.png b/Manual/contents/assets/Images/IDE_Input/Window_Menu.png index 3f05df5d8..c450ee4c2 100644 Binary files a/Manual/contents/assets/Images/IDE_Input/Window_Menu.png and b/Manual/contents/assets/Images/IDE_Input/Window_Menu.png differ diff --git a/Manual/contents/assets/Images/Icons/Sprite_Origin_Pointer.png b/Manual/contents/assets/Images/Icons/Sprite_Origin_Pointer.png new file mode 100644 index 000000000..d2fbb684d Binary files /dev/null and b/Manual/contents/assets/Images/Icons/Sprite_Origin_Pointer.png differ diff --git a/Manual/contents/assets/Images/Introduction/MP_BuyAsset.png b/Manual/contents/assets/Images/Introduction/MP_BuyAsset.png index 70e072c9d..99d5c0996 100644 Binary files a/Manual/contents/assets/Images/Introduction/MP_BuyAsset.png and b/Manual/contents/assets/Images/Introduction/MP_BuyAsset.png differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_DnD_Conditional_Multiple.png b/Manual/contents/assets/Images/QS_Guide/QS_DnD_Conditional_Multiple.png new file mode 100644 index 000000000..eb1216841 Binary files /dev/null and b/Manual/contents/assets/Images/QS_Guide/QS_DnD_Conditional_Multiple.png differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_1.png b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_1.png new file mode 100644 index 000000000..102d8a8e1 Binary files /dev/null and b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_1.png differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_2.png b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_2.png new file mode 100644 index 000000000..c6cbc3dc7 Binary files /dev/null and b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_2.png differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_3.png b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_3.png new file mode 100644 index 000000000..3803a8484 Binary files /dev/null and b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_3_3.png differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_4_3.png b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_4_3.png index 4cb6c697f..fc9f9f1dd 100644 Binary files a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_4_3.png and b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_4_3.png differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_DnD_3_1.png b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_DnD_3_1.png deleted file mode 100644 index b5bc4b7cf..000000000 Binary files a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_DnD_3_1.png and /dev/null differ diff --git a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_DnD_3_2.png b/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_DnD_3_2.png deleted file mode 100644 index 6326f4b56..000000000 Binary files a/Manual/contents/assets/Images/QS_Guide/QS_MovementExample_DnD_3_2.png and /dev/null differ diff --git a/Manual/contents/assets/Images/Scripting_Reference/Additional_Information/Files_SaveAreas.png b/Manual/contents/assets/Images/Scripting_Reference/Additional_Information/Files_SaveAreas.png index aad389c16..069aef744 100644 Binary files a/Manual/contents/assets/Images/Scripting_Reference/Additional_Information/Files_SaveAreas.png and b/Manual/contents/assets/Images/Scripting_Reference/Additional_Information/Files_SaveAreas.png differ diff --git a/Manual/contents/assets/Images/Scripting_Reference/GML/Reference/Drawing/primitive_types.png b/Manual/contents/assets/Images/Scripting_Reference/GML/Reference/Drawing/primitive_types.png index adb367f11..a370acddd 100644 Binary files a/Manual/contents/assets/Images/Scripting_Reference/GML/Reference/Drawing/primitive_types.png and b/Manual/contents/assets/Images/Scripting_Reference/GML/Reference/Drawing/primitive_types.png differ diff --git a/Manual/contents/assets/Images/Setup_And_Version/Getting_Started_Crash_Report.png b/Manual/contents/assets/Images/Setup_And_Version/Getting_Started_Crash_Report.png index e94ca1ecd..5ba0cf22a 100644 Binary files a/Manual/contents/assets/Images/Setup_And_Version/Getting_Started_Crash_Report.png and b/Manual/contents/assets/Images/Setup_And_Version/Getting_Started_Crash_Report.png differ diff --git a/Manual/contents/assets/Images/Setup_And_Version/GitHub_Closed.png b/Manual/contents/assets/Images/Setup_And_Version/GitHub_Closed.png new file mode 100644 index 000000000..e0850440c Binary files /dev/null and b/Manual/contents/assets/Images/Setup_And_Version/GitHub_Closed.png differ diff --git a/Manual/contents/assets/Images/Setup_And_Version/Platform_Preferences/GX_Games_Prefs.png b/Manual/contents/assets/Images/Setup_And_Version/Platform_Preferences/GX_Games_Prefs.png new file mode 100644 index 000000000..636ba643a Binary files /dev/null and b/Manual/contents/assets/Images/Setup_And_Version/Platform_Preferences/GX_Games_Prefs.png differ diff --git a/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences.png b/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences.png index b92bd213d..c9b7b7efd 100644 Binary files a/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences.png and b/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences.png differ diff --git a/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences_Expanded.png b/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences_Expanded.png index 849e8c499..150b780e7 100644 Binary files a/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences_Expanded.png and b/Manual/contents/assets/Images/Setup_And_Version/Preferences/Redefine_Keys_Preferences_Expanded.png differ diff --git a/Manual/contents/assets/Images/Setup_And_Version/Preferences/Text_Editor_Prefs.png b/Manual/contents/assets/Images/Setup_And_Version/Preferences/Text_Editor_Prefs.png index be804128e..69b71baf6 100644 Binary files a/Manual/contents/assets/Images/Setup_And_Version/Preferences/Text_Editor_Prefs.png and b/Manual/contents/assets/Images/Setup_And_Version/Preferences/Text_Editor_Prefs.png differ diff --git a/Manual/contents/assets/css/default.css b/Manual/contents/assets/css/default.css index dfe587f64..7b60a6e60 100644 --- a/Manual/contents/assets/css/default.css +++ b/Manual/contents/assets/css/default.css @@ -40,7 +40,7 @@ font-family: 'open_sanslight_italic'; src: url('../fonts/opensans-lightitalic-webfont.woff2') format('woff2'), url('../fonts/opensans-lightitalic-webfont.woff') format('woff'); font-weight: normal; - font-style: normal + font-style: normal; } @font-face { font-family: 'open_sansregular'; @@ -82,9 +82,9 @@ h1 { color: #FFFFFF; box-shadow: 0px 0px 5px #181818; } -@media screen and (max-width:600px){ +@media screen and (max-width:600px) { h1 { - background-repeat: repeat, repeat; + background-repeat: repeat, repeat; } } h2 { @@ -98,7 +98,7 @@ h2 { margin-top: 2em; margin-bottom: 10px; } -h1 + h2 { +h1+h2 { margin-top: 0px; } h3 { @@ -193,17 +193,21 @@ p.code_heading { padding-right: 10px; padding-bottom: 5px; padding-left: 10px; - margin-top: 10px; - margin-bottom: -20px; + margin-top: 20px; + margin-bottom: -10px; border-width: 5px; border-style: solid; border-color: #282828; - width: auto; - display: inline-block; border-top-left-radius: 15px; border-top-right-radius: 15px; border-bottom-right-radius: 15px; border-bottom-left-radius: 15px; + display: block; + width: fit-content; + position: relative; +} +p.code_heading+p.code_heading { + margin-top: 13px; } p.code, p.code_plain, @@ -226,15 +230,14 @@ pre { line-height: 1.25; overflow-wrap: break-word; } -h4 + p.code, -h4 + p.code_plain, -p.code_heading + p.code, -p.code_heading + p.code_plain -{ +h4+p.code, +h4+p.code_plain, +p.code_heading+p.code, +p.code_heading+p.code_plain { margin-top: 1px; } -p.code + p.code_heading, -p.code_plain + p.code_heading { +p.code+p.code_heading, +p.code_plain+p.code_heading { margin-top: -10px; } p.note { @@ -263,7 +266,7 @@ p.note_heading { font-weight: 800; font-style: italic; } -p.note_heading + p.note { +p.note_heading+p.note { margin-bottom: 40px; padding-top: 16px; } @@ -411,10 +414,10 @@ a.glossterm { color: #E28F4B; } h1 a.glossterm:before { - content:"("; + content: "("; } h1 a.glossterm:after { - content:")"; + content: ")"; } h1 a.glossterm { margin-left: 0.2em; @@ -534,7 +537,9 @@ img.center { margin-right: auto; position: relative; } -img.center_shadow, img.left_shadow, img.right_shadow { +img.center_shadow, +img.left_shadow, +img.right_shadow { display: block; margin-top: 5px; max-width: 70%; @@ -544,7 +549,8 @@ img.center_shadow, img.left_shadow, img.right_shadow { position: relative; box-shadow: 4px 4px 10px 2px #000; } -img.left_shadow, img.right_shadow { +img.left_shadow, +img.right_shadow { display: block; position: relative; max-width: auto; @@ -640,7 +646,6 @@ div.clear { background: #444444; padding: 10px; border-radius: 0.5em 0.5em 0 0; - display: flex; flex-direction: row; flex-wrap: nowrap; @@ -650,12 +655,8 @@ div.clear { div.clear a { font-weight: normal; } -div.clear:nth-child(1) { - -} -div.clear:nth-child(2) { - -} +div.clear:nth-child(1) {} +div.clear:nth-child(2) {} div.dropspotnote { font-style: italic; margin-left: 85px; @@ -889,7 +890,7 @@ ol.AlphaNumeric>li>ol>li>ol>li>ol>li { } ol.AlphaNumeric>li>ol>li>ol>li>ol>li:before { counter-increment: item4; - content: "("counter(item4, decimal)")"; + content: "(" counter(item4, decimal)")"; text-align: right; position: absolute; left: calc(-1 * var(--prefix-size) - var(--prefix-gap)); @@ -909,7 +910,7 @@ ol.AlphaNumeric>li>ol>li>ol>li>ol>li>ol { } ol.AlphaNumeric>li>ol>li>ol>li>ol>li>ol>li:before { counter-increment: item5; - content: "("counter(item5, lower-alpha)")"; + content: "(" counter(item5, lower-alpha)")"; text-align: right; position: absolute; left: calc(-1 * var(--prefix-size) - var(--prefix-gap)); @@ -936,7 +937,7 @@ ol.AlphaNumeric>li>ol>li>ol>li>ol>li>ol>li>ol { } ol.AlphaNumeric>li>ol>li>ol>li>ol>li>ol>li>ol>li:before { counter-increment: item6; - content: "("counter(item6, lower-roman)")"; + content: "(" counter(item6, lower-roman)")"; text-align: right; position: absolute; left: calc(-1 * var(--prefix-size) - var(--prefix-gap)); diff --git a/Manual/contents/assets/scripts/gml.js b/Manual/contents/assets/scripts/gml.js index 491433502..042ee4738 100644 --- a/Manual/contents/assets/scripts/gml.js +++ b/Manual/contents/assets/scripts/gml.js @@ -1267,6 +1267,7 @@ export default function(hljs) { "mean", "median", + "merge_color", "merge_color", "merge_color", "merge_colour", @@ -1783,6 +1784,7 @@ export default function(hljs) { "string_count", "string_delete", "string_digits", + "string_ext", "string_format", "string_hash_to_newline", "string_height", @@ -2112,8 +2114,10 @@ export default function(hljs) { "asset_font", "asset_object", "asset_path", + "asset_particlesystem", "asset_room", "asset_script", + "asset_sequence", "asset_shader", "asset_sound", "asset_sprite", diff --git a/Manual/contents/assets/snippets/FX_Limitations.hts b/Manual/contents/assets/snippets/FX_Limitations.hts new file mode 100644 index 000000000..b1687dbc7 --- /dev/null +++ b/Manual/contents/assets/snippets/FX_Limitations.hts @@ -0,0 +1,19 @@ + + + + + + + + FX_Limitations + + + +

    Limitations

    +

    There are some limitations to keep in mind when using filters/effects:

    +
      +
    • Filters/effects will not work when the application surface is disabled. It's enabled by default, and you shouldn't usually require disabling it, however you may do so to gain performance on mobile devices. In such cases you wouldn't be able to use filters/effects as they require the surface texture for shader manipulations.
    • +
    • Filters/effects that take a texture image, require that image to be on a separate texture page. You can set this through the sprite editor.
    • +
    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/GML_Not_real_array.hts b/Manual/contents/assets/snippets/GML_Not_real_array.hts new file mode 100644 index 000000000..69e4baa4c --- /dev/null +++ b/Manual/contents/assets/snippets/GML_Not_real_array.hts @@ -0,0 +1,14 @@ + + + + + + + + GML_Not_real_array + + + +

     This variable does not hold a real GML array, so you cannot run any array functions on it or serialise it (convert it to a string). The only operation you can run on it is accessing a value at an index, with the GML_Not_real_array[index] syntax.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Gamepad_button_constants.hts b/Manual/contents/assets/snippets/Gamepad_button_constants.hts new file mode 100644 index 000000000..c49dbdb0a --- /dev/null +++ b/Manual/contents/assets/snippets/Gamepad_button_constants.hts @@ -0,0 +1,88 @@ + + + + + + + + Gamepad_button_constants + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Gamepad Button Constant
    ConstantDescription
    gp_face1Top button 1 (this maps to the "A" on an Xbox controller and the cross on a PS controller)
    gp_face2Top button 2 (this maps to the "B" on an Xbox controller and the circle on a PS controller)
    gp_face3Top button 3 (this maps to the "X" on an Xbox controller and the square on a PS controller)
    gp_face4Top button 4 (this maps to the "Y" on an Xbox controller and the triangle on a PS controller)
    gp_shoulderlLeft shoulder button
    gp_shoulderlbLeft shoulder trigger
    gp_shoulderrRight shoulder button
    gp_shoulderrbRight shoulder trigger
    gp_selectThe select button (on a PS controller, this triggers when you press the touchpad down)
    gp_startThe start button (this is the "options" button on a PS controller)
    gp_sticklThe left stick pressed (as a button)
    gp_stickrThe right stick pressed (as a button)
    gp_paduD-pad up
    gp_paddD-pad down
    gp_padlD-pad left
    gp_padrD-pad right
    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/HTML5_Not_Available.hts b/Manual/contents/assets/snippets/HTML5_Not_Available.hts new file mode 100644 index 000000000..da37cd073 --- /dev/null +++ b/Manual/contents/assets/snippets/HTML5_Not_Available.hts @@ -0,0 +1,13 @@ + + + + + + + Note_Not_Available_On_HTML5 + + + +

    This functionality is not available for the HTML5 target platform.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Icon_Mouse_LMB_Alt.hts b/Manual/contents/assets/snippets/Icon_Mouse_LMB_Alt.hts new file mode 100644 index 000000000..425e2f02f --- /dev/null +++ b/Manual/contents/assets/snippets/Icon_Mouse_LMB_Alt.hts @@ -0,0 +1,14 @@ + + + + + + + + Icon_Mouse_LMB_Alt + + + +

    Lmb

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Icon_Mouse_MMB_Alt.hts b/Manual/contents/assets/snippets/Icon_Mouse_MMB_Alt.hts new file mode 100644 index 000000000..8620ca0a0 --- /dev/null +++ b/Manual/contents/assets/snippets/Icon_Mouse_MMB_Alt.hts @@ -0,0 +1,14 @@ + + + + + + + + Icon_Mouse_MMB_Alt + + + +

    Mmb

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Icon_Mouse_RMB_Alt.hts b/Manual/contents/assets/snippets/Icon_Mouse_RMB_Alt.hts new file mode 100644 index 000000000..2aef023ad --- /dev/null +++ b/Manual/contents/assets/snippets/Icon_Mouse_RMB_Alt.hts @@ -0,0 +1,14 @@ + + + + + + + + Icon_Mouse_RMB_Alt + + + +

    Rmb

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Important_Timeline_deprecated.hts b/Manual/contents/assets/snippets/Important_Timeline_deprecated.hts new file mode 100644 index 000000000..38ac8072a --- /dev/null +++ b/Manual/contents/assets/snippets/Important_Timeline_deprecated.hts @@ -0,0 +1,14 @@ + + + + + + + + Important_Timeline_deprecated + + + +

     Timelines have been replaced by Sequences and currently only exist for legacy purposes. Moments can be programmed in a Sequence for functions to be executed at given frames in the Sequence.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/JSON_Filter_Function_Description.hts b/Manual/contents/assets/snippets/JSON_Filter_Function_Description.hts new file mode 100644 index 000000000..ec2547160 --- /dev/null +++ b/Manual/contents/assets/snippets/JSON_Filter_Function_Description.hts @@ -0,0 +1,18 @@ + + + + + + + + JSON_Filter_Function_Description + + + +

    Filter Function 

    +

    The function optionally takes a Function, which runs once for each value in the structure, including all nested structs/arrays and all the values inside them.

    +

    It takes two arguments (key, value) where key is the struct key name (String) or array index (Real), and value is what's stored in that key/index.

    +

    The filter function must always return a value. It can return a new value, which replaces the key's value in the final converted format returned by json_filter_function_description. If no new value should be returned for a particular key, the function must return the original value.

    +

     When overriding a key's value in the filter function (using return), make sure you check its type first, as the filter function runs for the root structure and any nested structures as well, meaning accidentally overriding them will result in a broken final structure. See Example 3 at the bottom.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Networking_dont_mix_raw_reg.hts b/Manual/contents/assets/snippets/Networking_dont_mix_raw_reg.hts new file mode 100644 index 000000000..3d59ff466 --- /dev/null +++ b/Manual/contents/assets/snippets/Networking_dont_mix_raw_reg.hts @@ -0,0 +1,9 @@ + + + + + + + Networking_dont_mix_raw_reg + +

    You must not mix the use of regular and raw functions in your game, as doing so will cause issues. This means for a connection made with network_connect, you must use network_send_packet, and for network_connect_raw, use network_send_raw.

    \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Action_Only_For_Draw_Events.hts b/Manual/contents/assets/snippets/Note_Action_Only_For_Draw_Events.hts new file mode 100644 index 000000000..7e82f3bd4 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Action_Only_For_Draw_Events.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Action_Only_For_Draw_Events + + + +

     This action is only for use in the various Draw Events, and will not draw anything if used elsewhere.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Audio_Device_OS_Might_Normalise_Audio.hts b/Manual/contents/assets/snippets/Note_Audio_Device_OS_Might_Normalise_Audio.hts new file mode 100644 index 000000000..5c14aa763 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Audio_Device_OS_Might_Normalise_Audio.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Audio_Device_OS_Might_Normalise_Audio + + + +

     Audio devices and/or operating systems can sometimes attempt to change the audio's amplitude in order to protect the user from what would otherwise be very loud sounds, for example by normalising the audio stream or by clipping the amplitude to 1. How this is handled is specific to the audio device or OS that's handling your game's audio. As a result, increasing gains might have an inconsistent effect.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_DS_Destroy_Always_Set_To_Minus_One.hts b/Manual/contents/assets/snippets/Note_DS_Destroy_Always_Set_To_Minus_One.hts new file mode 100644 index 000000000..19ea45768 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_DS_Destroy_Always_Set_To_Minus_One.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_DS_Destroy_Always_Set_To_Minus_One + + + +

     You should always set the variable that held the data structure reference to -1 after calling this function, since the reference will no longer be valid.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_DS_Destroy_When_No_Longer_Needed.hts b/Manual/contents/assets/snippets/Note_DS_Destroy_When_No_Longer_Needed.hts new file mode 100644 index 000000000..71aaa40b6 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_DS_Destroy_When_No_Longer_Needed.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_DS_Destroy_When_No_Longer_Needed + + + +

     As with all dynamic resources, data structures take up memory and so should always be destroyed when no longer needed to prevent memory leaks which will slow down and eventually crash your game.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_DS_List_Mark_Moves.hts b/Manual/contents/assets/snippets/Note_DS_List_Mark_Moves.hts new file mode 100644 index 000000000..ba4a17755 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_DS_List_Mark_Moves.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_DS_List_Mark_Moves + + + +

     If the position that has been marked changes within the list, the "mark" will move with it, so if you have marked position 3 in the list (for example) and then insert 2 more items below it so it moves up to position 5, it will still be marked as a list.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_DS_Use_ds_exists_To_Check_For_Existence.hts b/Manual/contents/assets/snippets/Note_DS_Use_ds_exists_To_Check_For_Existence.hts new file mode 100644 index 000000000..f9219cf53 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_DS_Use_ds_exists_To_Check_For_Existence.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_DS_Use_ds_exists_To_Check_For_Existence + + + +

     If you need to check if a data structure exists, you can use the ds_exists function.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_DS_Write_Output_Is_Not_Human_Readable.hts b/Manual/contents/assets/snippets/Note_DS_Write_Output_Is_Not_Human_Readable.hts new file mode 100644 index 000000000..790fe9123 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_DS_Write_Output_Is_Not_Human_Readable.hts @@ -0,0 +1,13 @@ + + + + + + + Note_DS_Write_Output_Is_Not_Human_Readable + + + +

     The returned string is not a human readable string, but rather a dump of the contents of the data structure.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Depth_Values_Are_Approximate.hts b/Manual/contents/assets/snippets/Note_Depth_Values_Are_Approximate.hts new file mode 100644 index 000000000..c2110d3b9 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Depth_Values_Are_Approximate.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Depth_Values_Are_Approximate + + + +

     Depth values are approximate. If you try to draw things at depth values close to the maximum depth and minimum depth, they may not be drawn due to inaccuracies introduced by the calculations.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Dialog_For_Debug_Only.hts b/Manual/contents/assets/snippets/Note_Dialog_For_Debug_Only.hts new file mode 100644 index 000000000..c30242367 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Dialog_For_Debug_Only.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Dialog_For_Debug_Only + + + +

     This function is for debugging and testing use only and should not be used in released games. For that purpose you should create a custom user interface to receive input from players so that you have complete control over how the dialogs look and behave.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_File_Handling_Limitations.hts b/Manual/contents/assets/snippets/Note_File_Handling_Limitations.hts new file mode 100644 index 000000000..066a6af6b --- /dev/null +++ b/Manual/contents/assets/snippets/Note_File_Handling_Limitations.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_File_Handling_Limitations + + + +

     Depending on the target platform that is chosen you are limited as to where you can save and load files from. See The File System for more information.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_GDK_Doesnt_Support_Lastchar_String.hts b/Manual/contents/assets/snippets/Note_GDK_Doesnt_Support_Lastchar_String.hts new file mode 100644 index 000000000..cfee71427 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_GDK_Doesnt_Support_Lastchar_String.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_GDK_Doesnt_Support_Lastchar_String + + + +

     On Xbox GDK, this variable will not contain any input. See this Helpdesk article for more info.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_GM_Managed_Structs.hts b/Manual/contents/assets/snippets/Note_GM_Managed_Structs.hts new file mode 100644 index 000000000..8fa59b40e --- /dev/null +++ b/Manual/contents/assets/snippets/Note_GM_Managed_Structs.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_GM_Managed_Structs + + + +

    This is a built-in struct, and as such GameMaker has more control over its contents. This means access to its members is limited and some values may change automatically if invalid values were assigned. You may also have to create and destroy this struct through built-in functions provided by GameMaker instead of the new and delete operators.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_HTML5_Only.hts b/Manual/contents/assets/snippets/Note_HTML5_Only.hts new file mode 100644 index 000000000..19343eeef --- /dev/null +++ b/Manual/contents/assets/snippets/Note_HTML5_Only.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_HTML5_Only + + + +

     This function is for HTML5 only.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Important_Floating_Point_Precision.hts b/Manual/contents/assets/snippets/Note_Important_Floating_Point_Precision.hts new file mode 100644 index 000000000..50257dc18 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Important_Floating_Point_Precision.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Important_Floating_Point_Precision + + + +

     Due to floating point precision issues, checking to see if two values are exactly equal may return false, since one may be exactly 1, while the other may be 1.00000000000001. This can be avoided by using the Decimal To Integer action before checking or using the "greater than" or "less than" expressions.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Instances_In_Sequence_Shouldnt_Update_Transform_Vars.hts b/Manual/contents/assets/snippets/Note_Instances_In_Sequence_Shouldnt_Update_Transform_Vars.hts new file mode 100644 index 000000000..6678271c9 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Instances_In_Sequence_Shouldnt_Update_Transform_Vars.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Instances_In_Sequence_Shouldnt_Update_Transform_Vars + + + +

     If your sequence has any instances in it, these instances shouldn't change their image_xscale  / image_yscaleimage_anglexy variables as they will be overwritten when the sequence updates each step after starting to be played. You can check in_sequence and only update the properties of such an instance when this variable is false.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_JSON_Parse_Nesting_Limit.hts b/Manual/contents/assets/snippets/Note_JSON_Parse_Nesting_Limit.hts new file mode 100644 index 000000000..e57e6bad2 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_JSON_Parse_Nesting_Limit.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_JSON_Parse_Nesting_Limit + + + +

     The maximum nesting limit of the JSON string to be parsed or decoded is 128.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Layer_Position_Doesnt_Affect_Instances.hts b/Manual/contents/assets/snippets/Note_Layer_Position_Doesnt_Affect_Instances.hts new file mode 100644 index 000000000..368d2577d --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Layer_Position_Doesnt_Affect_Instances.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Layer_Position_Doesnt_Affect_Instances + + + +

     This function doesn't affect the position at which Instances on that layer are drawn - they remain at their (xy) position - unless those instances are controlled by a sequence (see in_sequence for more info).

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Lighting_Max_Hardware_Lights.hts b/Manual/contents/assets/snippets/Note_Lighting_Max_Hardware_Lights.hts new file mode 100644 index 000000000..37b798a70 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Lighting_Max_Hardware_Lights.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Lighting_Max_Hardware_Lights + + + +

     There are only 8 hardware lights available, so only 8 defined lights can be enabled at any one time (although more can be defined).

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Load_Save_Game_Legacy.hts b/Manual/contents/assets/snippets/Note_Load_Save_Game_Legacy.hts new file mode 100644 index 000000000..5da7ffa84 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Load_Save_Game_Legacy.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Load_Save_Game_Legacy + + + +

     For a more comprehensive approach to loading and saving your game data, see the File Actions and Buffer Actions.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Matrix_Stack_Size.hts b/Manual/contents/assets/snippets/Note_Matrix_Stack_Size.hts new file mode 100644 index 000000000..8166a0fcb --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Matrix_Stack_Size.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Matrix_Stack_Size + + + +

     The matrix stack has a maximum size of 50 items.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Networking_TCP_like.hts b/Manual/contents/assets/snippets/Note_Networking_TCP_like.hts new file mode 100644 index 000000000..e6e221c84 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Networking_TCP_like.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Networking_TCP_like + + + +

     This function uses a TCP-like socket (i.e. network_socket_tcp). It may work with other socket types as well, but this isn't guaranteed.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Networking_UDP_like.hts b/Manual/contents/assets/snippets/Note_Networking_UDP_like.hts new file mode 100644 index 000000000..8a26f5a18 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Networking_UDP_like.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Networking_UDP_like + + + +

     This function uses a UDP-like socket (i.e. network_socket_udp). It may work with other socket types as well, but this isn't guaranteed.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Particle_Type_Colour_Only_Affects_New.hts b/Manual/contents/assets/snippets/Note_Particle_Type_Colour_Only_Affects_New.hts new file mode 100644 index 000000000..160ef41e7 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Particle_Type_Colour_Only_Affects_New.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Particle_Type_Colour_Only_Affects_New + + + +

     Existing particles of the given type are unaffected.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Physics_Variable_Only_Available_In_Collision_Event.hts b/Manual/contents/assets/snippets/Note_Physics_Variable_Only_Available_In_Collision_Event.hts new file mode 100644 index 000000000..9c03f1532 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Physics_Variable_Only_Available_In_Collision_Event.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Physics_Variable_Only_Available_In_Collision_Event + + + +

     This variable is only available in the collision event of a physics-enabled instance.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Primitives_Enable_WebGL_On_HTML5.hts b/Manual/contents/assets/snippets/Note_Primitives_Enable_WebGL_On_HTML5.hts new file mode 100644 index 000000000..a539ac277 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Primitives_Enable_WebGL_On_HTML5.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Primitives_Enable_WebGL_On_HTML5 + + + +

     These functions do not work with the HTML5 module unless you have enabled WebGL in the Game Options.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Regular_Mouse_Functions.hts b/Manual/contents/assets/snippets/Note_Regular_Mouse_Functions.hts new file mode 100644 index 000000000..953680c00 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Regular_Mouse_Functions.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Regular_Mouse_Functions + + + +

    For regular mouse functions see the section on Mouse Input.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_See_Guide_To_Using_JSON.hts b/Manual/contents/assets/snippets/Note_See_Guide_To_Using_JSON.hts new file mode 100644 index 000000000..549a6ec8a --- /dev/null +++ b/Manual/contents/assets/snippets/Note_See_Guide_To_Using_JSON.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_See_Guide_To_Using_JSON + + + +

     See Guide To Using JSON for detailed information on how to work with JSON in GameMaker.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Selected_Layer_Must_Be_Tile_Map_Layer.hts b/Manual/contents/assets/snippets/Note_Selected_Layer_Must_Be_Tile_Map_Layer.hts new file mode 100644 index 000000000..0598c2bb2 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Selected_Layer_Must_Be_Tile_Map_Layer.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Selected_Layer_Must_Be_Tile_Map_Layer + + + +

     The layer selected must have been defined as a Tile Map Layer in The Room Editor, otherwise you may get errors.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Shape_Shader_Attributes_Are_Different.hts b/Manual/contents/assets/snippets/Note_Shape_Shader_Attributes_Are_Different.hts new file mode 100644 index 000000000..cd8ed0d04 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Shape_Shader_Attributes_Are_Different.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Shape_Shader_Attributes_Are_Different + + + +

     If you want to draw a shape using a shader, you should be aware that most shaders expect the following inputs: vertex, texture, colour. However, when using this function, only vertex and colour data are being passed in, and so the shader may not draw anything (or draw something but not correctly). If you need to draw shapes in this way then the shader should be customised with this in mind.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Sound_Editor_Volume_Is_Asset_Gain.hts b/Manual/contents/assets/snippets/Note_Sound_Editor_Volume_Is_Asset_Gain.hts new file mode 100644 index 000000000..9742a4c49 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Sound_Editor_Volume_Is_Asset_Gain.hts @@ -0,0 +1,15 @@ + + + + + + + + Note_Sound_Editor_Volume_Is_Asset_Gain + + + +

    The default asset-level gain is the value of the "Volume" slider in The Sound Editor

    +

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Sprite_Prefetch_To_Avoid_Performance_Hit.hts b/Manual/contents/assets/snippets/Note_Sprite_Prefetch_To_Avoid_Performance_Hit.hts new file mode 100644 index 000000000..10acc6c6e --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Sprite_Prefetch_To_Avoid_Performance_Hit.hts @@ -0,0 +1,16 @@ + + + + + + + + Note_Sprite_Prefetch_To_Avoid_Performance_Hit + + + +

     There is a performance hit as the texture is uploaded to texture memory on most devices, so it's recommended that you call Note_Sprite_Prefetch_To_Avoid_Performance_Hit + on any required graphics at the start of a level to avoid any stalls. +

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Surface_Check_That_It_Exists.hts b/Manual/contents/assets/snippets/Note_Surface_Check_That_It_Exists.hts new file mode 100644 index 000000000..7cde132ee --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Surface_Check_That_It_Exists.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Surface_Function_Silently_Fails + + + +

     If you have not previously set a render target with the function surface_set_target, calling this function will throw a fatal error.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Texture_Repeat_Requires_PowerOfTwo.hts b/Manual/contents/assets/snippets/Note_Texture_Repeat_Requires_PowerOfTwo.hts new file mode 100644 index 000000000..83be7a745 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Texture_Repeat_Requires_PowerOfTwo.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Texture_Repeat_Requires_PowerOfTwo + + + +

     For a texture to repeat it must be a power of two in size, i.e.: 32x32, 128x128, etc.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Tip_Map_Key_Can_Be_Any.hts b/Manual/contents/assets/snippets/Note_Tip_Map_Key_Can_Be_Any.hts new file mode 100644 index 000000000..e3287df70 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Tip_Map_Key_Can_Be_Any.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Tip_Map_Key_Can_Be_Any + + + +

     The key isn't limited to strings and can be of any type, including a struct.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Triggers_Audio_Playback_Event.hts b/Manual/contents/assets/snippets/Note_Triggers_Audio_Playback_Event.hts new file mode 100644 index 000000000..aa88e1d99 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Triggers_Audio_Playback_Event.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Triggers_Audio_Playback_Event + + + +

     An Audio Playback Ended event is triggered for the sound when it stops playing.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Variable_Contains_Path_Including_Final_Slash.hts b/Manual/contents/assets/snippets/Note_Variable_Contains_Path_Including_Final_Slash.hts new file mode 100644 index 000000000..2af662def --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Variable_Contains_Path_Including_Final_Slash.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Variable_Contains_Path_Including_Final_Slash + + + +

     The Note_Variable_Contains_Path_Including_Final_Slash variable stores the path including the final slash.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Warning_GM_FileSystem_Sandboxed.hts b/Manual/contents/assets/snippets/Note_Warning_GM_FileSystem_Sandboxed.hts new file mode 100644 index 000000000..22394cd63 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Warning_GM_FileSystem_Sandboxed.hts @@ -0,0 +1,13 @@ + + + + + + + Note_Warning_GM_FileSystem_Sandboxed + + + +

     This function may not work as you expect due to GameMaker being sandboxed! Please see the section on The File System for more information.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Warning_Static_Struct_Call_Once.hts b/Manual/contents/assets/snippets/Note_Warning_Static_Struct_Call_Once.hts new file mode 100644 index 000000000..1732632b0 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Warning_Static_Struct_Call_Once.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_Warning_Static_Struct_Call_Once + + + +

     You can't access a static variable from a function that was never called, as static variables are initialised on the first call to a function. Trying to do so will give you an error and crash your game.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_Windows_MacOS_Linux_Only.hts b/Manual/contents/assets/snippets/Note_Windows_MacOS_Linux_Only.hts new file mode 100644 index 000000000..768c9e230 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_Windows_MacOS_Linux_Only.hts @@ -0,0 +1,13 @@ + + + + + + + Note_Windows_MacOS_Linux_Only + + + +

     This function is only available on the Windows, macOS and Linux platforms.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_clipboard_support.hts b/Manual/contents/assets/snippets/Note_clipboard_support.hts index 158b991e8..efbd67233 100644 --- a/Manual/contents/assets/snippets/Note_clipboard_support.hts +++ b/Manual/contents/assets/snippets/Note_clipboard_support.hts @@ -3,12 +3,17 @@ - + Note_clipboard_support -

    NOTE This function is only valid on the Windows, Android, MacOS, iOS, HTML5 and Opera GX targets. On HTML5, clipboards are not supported on Firefox without the use of an extension, and are not supported on Internet Explorer at all.

    +

    NOTE This function is only valid on the Windows, Android, MacOS, iOS, HTML5 and Opera GX targets.
    +
    + On HTML5, clipboards are not supported on Firefox without the use of an extension, and are not supported on Internet Explorer at all.
    +
    + Additionally, clipboard functionality may be affected by browser permissions and the user may need to allow clipboard permissions when prompted, otherwise the clipboard may not function. +

    \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_disables_clipping_masks.hts b/Manual/contents/assets/snippets/Note_disables_clipping_masks.hts new file mode 100644 index 000000000..44419bf11 --- /dev/null +++ b/Manual/contents/assets/snippets/Note_disables_clipping_masks.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_disables_clipping_masks + + + +

     Disabling this will disable Clipping Masks in Sequences as that feature makes use of the stencil buffer.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Note_display_result_not_reliable_before_draw.hts b/Manual/contents/assets/snippets/Note_display_result_not_reliable_before_draw.hts new file mode 100644 index 000000000..b9b55f10b --- /dev/null +++ b/Manual/contents/assets/snippets/Note_display_result_not_reliable_before_draw.hts @@ -0,0 +1,14 @@ + + + + + + + + Note_display_result_not_reliable_before_draw + + + +

     When your application_surface is larger than the display's size (roughly), and you call this function before the current room's initialisation has finished, e.g. in a global script, a room's Creation Code or an instance's Create event, the value returned may not be accurate. For accurate results in such cases, call this in a Draw event.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Primitive_Type_Constants.hts b/Manual/contents/assets/snippets/Primitive_Type_Constants.hts new file mode 100644 index 000000000..346895a84 --- /dev/null +++ b/Manual/contents/assets/snippets/Primitive_Type_Constants.hts @@ -0,0 +1,53 @@ + + + + + + + + Primitive_Type_Constants + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Primitive Type Constant
    ConstantDescription
    pr_pointlistA point list - A point is drawn for every vertex.
    pr_linelistA line list - A line is drawn between the first and the second vertex, between the third and fourth vertex, etc.
    pr_linestripA line strip - A line is drawn between the first and the second vertex, between the second and the third vertex, the third and the fourth vertex, etc.
    pr_trianglelistA triangle list - A triangle is drawn for the first, second and third vertex, then for the fourth, fifth and sixth vertex, etc.
    pr_trianglestripA triangle strip - A triangle is drawn for the first, second and third vertex, then for the second, third and fourth vertex, etc.
    pr_trianglefanA triangle fan - Every two vertices connect to the first vertex to make a triangle.
    +
    +  This primitive type is not natively supported on some platforms and there could be a performance hit if you use it. +
    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Spine_data_update.hts b/Manual/contents/assets/snippets/Spine_data_update.hts new file mode 100644 index 000000000..4223e2fe0 --- /dev/null +++ b/Manual/contents/assets/snippets/Spine_data_update.hts @@ -0,0 +1,14 @@ + + + + + + + + Spine_data_update + + + +

    This data is updated only after the skeletal sprite is drawn.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/String_conversion_rules.hts b/Manual/contents/assets/snippets/String_conversion_rules.hts new file mode 100644 index 000000000..efce89afc --- /dev/null +++ b/Manual/contents/assets/snippets/String_conversion_rules.hts @@ -0,0 +1,17 @@ + + + + + + + + String_conversion_rules + + + +

    Values of type Real that are an integer will have no decimal places in the string. Values of type Real that have a fractional part will have two decimal places in the string. If you need more decimal places in the output string you can use the function string_format.

    +

    Values of type Struct or Instance will be converted to a string using that struct's or instance's toString() Method if one exists, or converted to a string implicitly.

    +

    Values of type Handle will be converted to a string that shows the handle info:  .

    +

    Values of type Array will be converted to a string of the format [element1, element2, element3, element4, element5], i.e. the concatenation of all elements in the array. If any of the elements in the array is a struct or an instance then its  will be called to convert it to a string.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Table_Gpu_blend_modes.hts b/Manual/contents/assets/snippets/Table_Gpu_blend_modes.hts new file mode 100644 index 000000000..c42110c19 --- /dev/null +++ b/Manual/contents/assets/snippets/Table_Gpu_blend_modes.hts @@ -0,0 +1,42 @@ + + + + + + + + Table_Gpu_blend_modes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ConstantDescriptionExtended Blend Mode
    bm_normalNormal blending (the default blend mode).(bm_src_alpha, bm_inv_src_alpha)
    bm_addAdditive blending. Luminosity values of light areas are added.(bm_src_alpha, bm_one)
    bm_subtractSubtractive blending. Luminosity values of light areas are subtracted.(bm_zero, bm_inv_src_colour)
    bm_maxMax blending. Similar to additive blending.(bm_src_alpha, bm_inv_src_colour)
    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Table_Gpu_blend_modes_ext.hts b/Manual/contents/assets/snippets/Table_Gpu_blend_modes_ext.hts new file mode 100644 index 000000000..8e1ebd559 --- /dev/null +++ b/Manual/contents/assets/snippets/Table_Gpu_blend_modes_ext.hts @@ -0,0 +1,65 @@ + + + + + + + + Table_Gpu_blend_modes_ext + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ConstantBlend factor (Red, Green, Blue, Alpha)
    bm_zero(0, 0, 0, 0)
    bm_one(1, 1, 1, 1)
    bm_src_colour(Rs, Gs, Bs, As)
    bm_inv_src_colour(1-Rs, 1-Gs, 1-Bs, 1-As)
    bm_src_alpha(As, As, As, As)
    bm_inv_src_alpha(1-As, 1-As, 1-As, 1-As)
    bm_dest_alpha(Ad, Ad, Ad, Ad)
    bm_inv_dest_alpha(1-Ad, 1-Ad, 1-Ad, 1-Ad)
    bm_dest_colour(Rd, Gd, Bd, Ad)
    bm_inv_dest_colour(1-Rd, 1-Gd, 1-Bd, 1-Ad)
    bm_src_alpha_sat(f, f, f, 1) where f = min(As, 1-Ad)
    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/Video_formats.hts b/Manual/contents/assets/snippets/Video_formats.hts new file mode 100644 index 000000000..c9f6b9855 --- /dev/null +++ b/Manual/contents/assets/snippets/Video_formats.hts @@ -0,0 +1,9 @@ + + + + + + + Video_formats + +

    Windows, macOS, GX.games, Android, iOS, and HTML5 use the RGBA model for videos. All other platforms use the YUV model.

    \ No newline at end of file diff --git a/Manual/contents/assets/snippets/audio_play_sound_last_arguments.hts b/Manual/contents/assets/snippets/audio_play_sound_last_arguments.hts index 566016fc6..171273f89 100644 --- a/Manual/contents/assets/snippets/audio_play_sound_last_arguments.hts +++ b/Manual/contents/assets/snippets/audio_play_sound_last_arguments.hts @@ -3,7 +3,7 @@ - + audio_play_sound_last_arguments diff --git a/Manual/contents/assets/snippets/buffer_data_type_constants.hts b/Manual/contents/assets/snippets/buffer_data_type_constants.hts new file mode 100644 index 000000000..6e5d884b3 --- /dev/null +++ b/Manual/contents/assets/snippets/buffer_data_type_constants.hts @@ -0,0 +1,93 @@ + + + + + + + + buffer_data_type_constants + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Buffer Data Type Constant
    ConstantDescriptionDatatype Returned
    buffer_u8An unsigned, 8bit integer. This is a positive value from 0 to 255.int32
    buffer_s8A signed, 8bit integer. This can be a positive or negative value from -128 to 127 (0 is classed as positive).int32
    buffer_u16An unsigned, 16bit integer. This is a positive value from 0 - 65,535.int32
    buffer_s16A signed, 16bit integer. This can be a positive or negative value from -32,768 to 32,767 (0 is classed as positive).int32
    buffer_u32An unsigned, 32bit integer. This is a positive value from 0 to 4,294,967,295.int64
    buffer_s32A signed, 32bit integer. This can be a positive or negative value from -2,147,483,648 to 2,147,483,647 (0 is classed as positive).int32
    buffer_u64An unsigned 64bit integer. This is a positive value from 0 to 18,446,744,073,709,551,615.int64
    buffer_f16A 16bit float. This can be a positive or negative value within the range of +/- 65504.number (real)
    buffer_f32A 32bit float. This can be a positive or negative value within the range of +/-16777216.number (real)
    buffer_f64A 64bit float.number (real)
    buffer_boolA boolean value, can only be either 1 or 0 (true or false). It is stored in a single byte (8bit)int32
    buffer_stringA string of any size, including a final null terminating characterstring
    buffer_textA string of any size, without the final null terminating characterstring
    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/changing_room_stops_instance_creation.hts b/Manual/contents/assets/snippets/changing_room_stops_instance_creation.hts index cd1fa7c17..abfa02d02 100644 --- a/Manual/contents/assets/snippets/changing_room_stops_instance_creation.hts +++ b/Manual/contents/assets/snippets/changing_room_stops_instance_creation.hts @@ -3,12 +3,15 @@ - + changing_room_stops_instance_creation -

    NOTE You will not be able to create new instances in the same event after this function has been called.

    +

    NOTE You will not be able to create new instances of objects in the same event after this function is called. There is one exception: if the object you're creating an instance of is already marked persistent, or its persistent variable is set to true in the variable struct passed into the instance_create_*() function, it will be created.
    +
    + In the latter case (making the new instance persistent through the variable struct), the Variable Definitions for that instance will not be executed. +

    \ No newline at end of file diff --git a/Manual/contents/assets/snippets/network_socket_types_server.hts b/Manual/contents/assets/snippets/network_socket_types_server.hts new file mode 100644 index 000000000..89b79725a --- /dev/null +++ b/Manual/contents/assets/snippets/network_socket_types_server.hts @@ -0,0 +1,41 @@ + + + + + + + + network_socket_types + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Socket Type Constant
    ConstantDescription
    network_socket_tcpCreate a socket using TCP.
    network_socket_udpCreate a socket using UDP.
    network_socket_wsCreate a WebSocket using TCP. (NOTE: Use Async functions for connecting through WebSockets)
    +

    NOTE Secure WebSockets are not supported when creating a server, only as a client.

    + + \ No newline at end of file diff --git a/Manual/contents/assets/snippets/tag_read_only.hts b/Manual/contents/assets/snippets/tag_read_only.hts new file mode 100644 index 000000000..5293ec629 --- /dev/null +++ b/Manual/contents/assets/snippets/tag_read_only.hts @@ -0,0 +1,14 @@ + + + + + + + + tag_read_only + + + +

    READ-ONLY

    + + \ No newline at end of file diff --git a/Manual/publish/skins/Charcoal_Grey/toc_book_closed_mobile.png b/Manual/publish/skins/Charcoal_Grey/toc_book_closed_mobile.png new file mode 100644 index 000000000..bb90528c9 Binary files /dev/null and b/Manual/publish/skins/Charcoal_Grey/toc_book_closed_mobile.png differ diff --git a/Manual/publish/templates/PDF English/Common.plt b/Manual/publish/templates/PDF English/Common.plt new file mode 100644 index 000000000..439a91bb4 --- /dev/null +++ b/Manual/publish/templates/PDF English/Common.plt @@ -0,0 +1,14 @@ + + + + + Common Page Layout + +
    +
      + + + + +
    +
    \ No newline at end of file diff --git a/Manual/publish/templates/PDF English/pdf.tpl b/Manual/publish/templates/PDF English/pdf.tpl new file mode 100644 index 000000000..6a6125481 --- /dev/null +++ b/Manual/publish/templates/PDF English/pdf.tpl @@ -0,0 +1,30 @@ + + + pdf + PDF English + 2022.0.0 + Common + + + + + + Continued on page %page-num% + Continued from page %page-num% + true + false + dotted + false + true + 4 + false + true + false + false + true + false + false + false + false + RGB + \ No newline at end of file diff --git a/Manual/publish/templates/PDF/pdf.tpl b/Manual/publish/templates/PDF/pdf.tpl new file mode 100644 index 000000000..0dfee8329 --- /dev/null +++ b/Manual/publish/templates/PDF/pdf.tpl @@ -0,0 +1,30 @@ + + + pdf + PDF + 2022.0.0 + pdf + + + + + + Continued on page %page-num% + Continued from page %page-num% + true + false + dotted + false + true + 4 + true + true + false + false + true + false + false + false + false + RGB + \ No newline at end of file diff --git a/Manual/toc/Default.toc b/Manual/toc/Default.toc index 08942ff94..8c8b602e1 100644 --- a/Manual/toc/Default.toc +++ b/Manual/toc/Default.toc @@ -11,18 +11,6 @@ - - - - - - - - - - - - @@ -217,6 +205,7 @@ + @@ -246,6 +235,7 @@ + @@ -260,6 +250,17 @@ + + + + + + + + + + + @@ -1748,19 +1749,19 @@ - + - + @@ -2127,6 +2128,7 @@ + @@ -2144,7 +2146,6 @@ - diff --git a/Manual/variable/Default.var b/Manual/variable/Default.var index 0f0a78d99..9fe74d186 100644 --- a/Manual/variable/Default.var +++ b/Manual/variable/Default.var @@ -1,13 +1,13 @@ - - - -Variables - - - - -Animation Curve Library + + Variables + + + + Animation Curve Library + + + @@ -17,17 +17,26 @@ © Copyright YoYo Games Ltd. 2022 All Rights Reserved - - -for <strong>debugging and testing use only</strong> and should not be used in released games. For that purpose you should create a custom user interface to receive input from players so that you have complete control over how the dialogs look and behave. + + + for <strong>debugging and testing use only</strong> and should not be used in released games on desktop OSes. For that purpose you should create a custom user interface to receive input from players so that you have complete control over how the dialogs look and behave. + + + - - -GameMaker + + + GameMaker + + + - - -GML Code + + + GML Code + + + @@ -37,345 +46,605 @@ Nine Slicing - - -PLACEHOLDER + + + PLACEHOLDER + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm#variable">Any</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm#variable">Any</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Arrays.htm">Array</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Arrays.htm">Array</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Maths_And_Numbers/Matrix_Functions/Matrix_Functions.htm">Matrix Array</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Matrix_Functions/Matrix_Functions.htm">Matrix Array</a> + + + - - -<a target="_blank" href="The_Asset_Editors/The_Asset_Editors.htm">Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/The_Asset_Editors.htm">Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Animation_Curves.htm">Animation Curve Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Animation_Curves.htm">Animation Curve Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Extensions.htm">Extension Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Extensions.htm">Extension Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Fonts.htm">Font Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Fonts.htm">Font Asset</a> + + + <a target="_blank" href="The_Asset_Editors/Objects.htm">Object Asset</a> - - -<a target="_blank" href="The_Asset_Editors/Paths.htm">Path Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Paths.htm">Path Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Rooms.htm">Room Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Rooms.htm">Room Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Scripts.htm">Script Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Scripts.htm">Script Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Sequences.htm">Sequence Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Sequences.htm">Sequence Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Shaders.htm">Shader Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Shaders.htm">Shader Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Sounds.htm">Sound Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Sounds.htm">Sound Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Sprites.htm">Sprite Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Sprites.htm">Sprite Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Tile_Sets.htm">Tile Set Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Tile_Sets.htm">Tile Set Asset</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Timelines.htm">Timeline Asset</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Timelines.htm">Timeline Asset</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">Boolean</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">Boolean</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Variables/Constants.htm">Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Variables/Constants.htm">Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Stats_And_Leaderboards/xboxlive_achievement_load_leaderboard.htm">Xbox Live Achievement Filter Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Stats_And_Leaderboards/xboxlive_achievement_load_leaderboard.htm">Xbox Live Achievement Filter Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_channel_new.htm">Animation Curve Interpolation Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_channel_new.htm">Animation Curve Interpolation Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_type.htm">Asset Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Assets_And_Tags/asset_get_type.htm">Asset Type Constant</a> + + + <a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Objects/Object_Events/event_perform_async.htm">Async Event Type Constant</a> - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Buffers/audio_create_buffer_sound.htm">Audio Channel Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Buffers/audio_create_buffer_sound.htm">Audio Channel Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/audio_falloff_set_model.htm">Audio Falloff Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/audio_falloff_set_model.htm">Audio Falloff Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_collision_mask.htm">Bounding Box Kind (Shape) Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_collision_mask.htm">Bounding Box Kind (Shape) Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_set_bbox_mode.htm">Bounding Box Mode Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Manipulation/sprite_set_bbox_mode.htm">Bounding Box Mode Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/os_browser.htm">Browser Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/os_browser.htm">Browser Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Buffers/buffer_write.htm">Buffer Data Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Buffers/buffer_write.htm">Buffer Data Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Buffers/buffer_seek.htm">Buffer Seek Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Buffers/buffer_seek.htm">Buffer Seek Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Buffers/buffer_create.htm">Buffer Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Buffers/buffer_create.htm">Buffer Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Colour_And_Alpha/Colour_And_Alpha.htm">Colour</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Colour_And_Alpha/Colour_And_Alpha.htm">Colour</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_cullmode.htm">Culling Mode Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_cullmode.htm">Culling Mode Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_cursor.htm">Cursor Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Cameras_And_Display/The_Game_Window/window_get_cursor.htm">Cursor Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/os_device.htm">Device Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/os_device.htm">Device Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_orientation.htm">Display Orientation Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_orientation.htm">Display Orientation Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_timing_method.htm">Display Timing Method Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Cameras_And_Display/display_get_timing_method.htm">Display Timing Method Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode.htm">Blend Mode Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode.htm">Blend Mode Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext.htm">Blend Mode Factor Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_blendmode_ext.htm">Blend Mode Factor Constant</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_set_blendequation.htm">Blend Mode Equation Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Text/draw_set_halign.htm">Horizontal Alignment Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Text/draw_set_halign.htm">Horizontal Alignment Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin.htm">Primitive Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Primitives/draw_primitive_begin.htm">Primitive Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Text/draw_set_valign.htm">Vertical Alignment Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Text/draw_set_valign.htm">Vertical Alignment Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm">Vertex Data Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm">Vertex Data Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm">Vertex Usage Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_add_custom.htm">Vertex Usage Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_zfunc.htm">Comparison Function Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/GPU_Control/gpu_get_zfunc.htm">Comparison Function Constant</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Depth_And_Stencil_Buffer/The_Depth_And_Stencil_Buffer.htm#stencil_op_constant">Stencil Op Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/ds_exists.htm">DS Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/ds_exists.htm">DS Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/effect_create_above.htm">Effect Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Particles/effect_create_above.htm">Effect Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Objects/Object_Events/event_perform.htm">Event Number Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Objects/Object_Events/event_perform.htm">Event Number Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Objects/Object_Events/event_perform.htm">Event Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Objects/Object_Events/event_perform.htm">Event Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/external_define.htm">External Data Type Constant (ty_*)</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/external_define.htm">External Data Type Constant (ty_*)</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/external_define.htm">External Call Type Constant (dll_*)</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/external_define.htm">External Call Type Constant (dll_*)</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/File_Handling/File_System/file_find_first.htm">File Attribute Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/File_Handling/File_System/file_find_first.htm">File Attribute Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_axis_value.htm">Gamepad Axis Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/Gamepad_Input.htm">Gamepad Axis Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/gamepad_axis_value.htm">Gamepad Button Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/GamePad_Input/Gamepad_Input.htm">Gamepad Button Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/General_Game_Control/game_get_speed.htm">Game Speed Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/General_Game_Control/game_get_speed.htm">Game Speed Constant</a> + + + - - -IAP Constant + + + IAP Constant + + + - - -IAP Event Constant + + + IAP Event Constant + + + - - -IAP Status Constant + + + IAP Status Constant + + + - - -IAP Store Load Constant + + + IAP Store Load Constant + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_element_type.htm">Layer Element Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_element_type.htm">Layer Element Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get.htm">Light Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Lighting/draw_light_get.htm">Light Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Maths_And_Numbers/Matrix_Functions/matrix_get.htm">Matrix Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Matrix_Functions/matrix_get.htm">Matrix Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_get_tex_mip_enable.htm">Mipmapping Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_get_tex_mip_enable.htm">Mipmapping Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_set_tex_mip_filter.htm">Mipmapping Filter Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Mipmapping/gpu_set_tex_mip_filter.htm">Mipmapping Filter Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_check_button.htm">Mouse Button Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/Mouse_Input/mouse_check_button.htm">Mouse Button Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Networking/network_set_config.htm">Network Config Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Networking/network_set_config.htm">Network Config Constant</a> + + + - - -Network Event Type Constant + + + Network Event Type Constant + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Networking/network_send_raw.htm">Network Send Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Networking/network_send_raw.htm">Network Send Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Networking/network_create_socket.htm">Socket Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Networking/network_create_socket.htm">Socket Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Nine_Slice_Struct.htm">Nine Slice Edge Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Nine_Slice_Struct.htm">Nine Slice Edge Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Nine_Slice_Struct.htm">Tile Mode Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Nine_Slice_Struct.htm">Tile Mode Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/os_check_permission.htm">Permission State Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/os_check_permission.htm">Permission State Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/os_type.htm">OS Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/os_type.htm">OS Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_shape.htm">Particle Shape Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_shape.htm">Particle Shape Constant</a> + + + <a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_region.htm">Particle Emitter Distribution Constant</a> - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_region.htm">Particle Emitter Shape Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_region.htm">Particle Emitter Shape Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Paths/Path_Variables/path_endaction.htm">Path End Action Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Paths/Path_Variables/path_endaction.htm">Path End Action Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/The_Physics_World/physics_world_draw_debug.htm">Physics Debug Flag</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/The_Physics_World/physics_world_draw_debug.htm">Physics Debug Flag</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Joints/Physics_Joint_Constants.htm">Physics Joint Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Joints/Physics_Joint_Constants.htm">Physics Joint Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_get_data.htm">Physics Particle Data Flag Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_get_data.htm">Physics Particle Data Flag Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_create.htm">Physics Particle Flag Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_create.htm">Physics Particle Flag Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_group_begin.htm">Physics Particle Group Flag Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_group_begin.htm">Physics Particle Group Flag Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Data_Struct.htm">Sequence Audio Key Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Data_Struct.htm">Sequence Audio Key Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm">Sequence Direction Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm">Sequence Direction Constant</a> + + + @@ -393,405 +662,744 @@ <a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_speed_type.htm">Sprite Speed Constant</a> - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_mask.htm">Tile Mask Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get_mask.htm">Tile Mask Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Time_Sources/Built_In_Time_Sources.htm">Time Source Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Time_Sources/Built_In_Time_Sources.htm">Time Source Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Time_Sources/Time_Source_Expiry_Types.htm">Time Source Expiry Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Time_Sources/Time_Source_Expiry_Types.htm">Time Source Expiry Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Time_Sources/Time_Source_States.htm">Time Source State Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Time_Sources/Time_Source_States.htm">Time Source State Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Time_Sources/Time_Source_Units.htm">Time Source Unit Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Time_Sources/Time_Source_Units.htm">Time Source Unit Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Maths_And_Numbers/Date_And_Time/date_get_timezone.htm">Time Zone Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Date_And_Time/date_get_timezone.htm">Time Zone Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/uwp_check_privilege.htm">UWP Privilege Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/uwp_check_privilege.htm">UWP Privilege Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/uwp_check_privilege.htm">UWP Privilege Result Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/uwp_check_privilege.htm">UWP Privilege Result Constant</a> + + + - - -Video Format Constant + + + Video Format Constant + + + - - -Video Status Constant + + + Video Status Constant + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/keyboard_virtual_show.htm">Virtual Keyboard Autocapitalization Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/keyboard_virtual_show.htm">Virtual Keyboard Autocapitalization Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/keyboard_virtual_show.htm">Virtual Keyboard Return Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/keyboard_virtual_show.htm">Virtual Keyboard Return Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/keyboard_virtual_show.htm">Virtual Keyboard Type Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/keyboard_virtual_show.htm">Virtual Keyboard Type Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/Keyboard_Input/Keyboard_Input.htm">Virtual Key Constant (vk_*)</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/Keyboard_Input/Keyboard_Input.htm">Virtual Key Constant (vk_*)</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_agegroup_for_user.htm">Xbox Age Group Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_agegroup_for_user.htm">Xbox Age Group Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Saving_Data/xboxlive_get_file_error.htm">Xbox File Error Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Saving_Data/xboxlive_get_file_error.htm">Xbox File Error Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Match_Making/xboxlive_matchmaking_create.htm">Xbox Match Visibility Constant</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Match_Making/xboxlive_matchmaking_create.htm">Xbox Match Visibility Constant</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Variable_Functions/ref_create.htm">Reference</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Script_Functions.htm">Function</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Script_Functions.htm">Function</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/OS_And_Compiler/external_define.htm">External Function</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/OS_And_Compiler/external_define.htm">External Function</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Script_Functions.htm">Script Function</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Script_Functions.htm">Script Function</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_sampler_index.htm">Shader Sampler Handle</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_sampler_index.htm">Shader Sampler Handle</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_uniform.htm">Shader Uniform Handle</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Shaders/shader_get_uniform.htm">Shader Uniform Handle</a> + + + - - -ID + + + ID + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asynchronous_Functions/Asynchronous_Functions.htm">Async Request ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Asynchronous_Functions.htm">Async Request ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Emitters/audio_emitter_create.htm">Audio Emitter ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Emitters/audio_emitter_create.htm">Audio Emitter ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Groups/Audio_Groups.htm">Audio Group ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Groups/Audio_Groups.htm">Audio Group ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Listeners/Audio_Listeners.htm">Audio Listener ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Listeners/Audio_Listeners.htm">Audio Listener ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Buffers/audio_create_play_queue.htm">Audio Queue ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Buffers/audio_create_play_queue.htm">Audio Queue ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Synchronisation/audio_create_sync_group.htm">Audio Sync Group ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/Audio_Synchronisation/audio_create_sync_group.htm">Audio Sync Group ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Buffers/buffer_create.htm">Buffer ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Buffers/buffer_create.htm">Buffer</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_create_buffer.htm">Vertex Buffer ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_create_buffer.htm">Vertex Buffer</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/camera_create.htm">Camera ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Cameras_And_Display/Cameras_And_Viewports/camera_create.htm">Camera ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Web_And_HTML5/clickable_add.htm">Clickable ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Web_And_HTML5/clickable_add.htm">Clickable ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/Data_Structures.htm">Any DS ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/Data_Structures.htm">Any DS Reference</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_create.htm">DS Grid ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Grids/ds_grid_create.htm">DS Grid</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_create.htm">DS List ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Lists/ds_list_create.htm">DS List</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_create.htm">DS Map ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Maps/ds_map_create.htm">DS Map</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_create.htm">DS Priority ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Priority_Queues/ds_priority_create.htm">DS Priority</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_create.htm">DS Queue ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Queues/ds_queue_create.htm">DS Queue</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_create.htm">DS Stack ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Data_Structures/DS_Stacks/ds_stack_create.htm">DS Stack</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Background_Layers/layer_background_get_id.htm">Background Element ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Background_Layers/layer_background_get_id.htm">Background Element ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm">Instance Element ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm">Instance Element ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_create.htm">Sequence Element ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sequence_Layers/layer_sequence_create.htm">Sequence Element ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_get_id.htm">Sprite Element ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Sprite_Layers/layer_sprite_get_id.htm">Sprite Element ID</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Text_Functions/layer_text_get_id.htm">Text Element ID</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Text_Functions/layer_text_halign.htm">Text Horizontal Alignment Constant</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Text_Functions/layer_text_valign.htm">Text Vertical Alignment Constant</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_get_id.htm">Tile Map Element ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/layer_tilemap_get_id.htm">Tile Map Element ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/File_Handling/Binary_Files/file_bin_open.htm">Binary File ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/File_Handling/Binary_Files/file_bin_open.htm">Binary File ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/File_Handling/Text_Files/file_text_open_read.htm">Text File ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/File_Handling/Text_Files/file_text_open_read.htm">Text File ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Cameras_And_Display/gif_open.htm">GIF ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Cameras_And_Display/gif_open.htm">GIF ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Instances/Instance_Variables/id.htm">Instance ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Instances/Instance_Variables/id.htm">Object Instance</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_id.htm">Layer ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_id.htm">Layer</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm">Layer Element ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/General_Layer_Functions/layer_get_all_elements.htm">Layer Element ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Movement_And_Collisions/Motion_Planning/mp_grid_create.htm">MP Grid ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Movement_And_Collisions/Motion_Planning/mp_grid_create.htm">MP Grid ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Networking/network_create_socket.htm">Network Socket ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Networking/network_create_socket.htm">Network Socket ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Instance_Keywords.htm">noone</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Instance_Keywords.htm">noone</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_create.htm">Particle Emitter ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Emitters/part_emitter_create.htm">Particle Emitter ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Systems/part_system_create.htm">Particle System ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Systems/part_system_create.htm">Particle System Instance</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_create.htm">Particle Type ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Particles/Particle_Types/part_type_create.htm">Particle Type ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_create.htm">Physics Particle ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_create.htm">Physics Particle ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_group_end.htm">Physics Particle Group ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Soft_Body_Particles/physics_particle_group_end.htm">Physics Particle Group ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Fixtures/physics_fixture_create.htm">Physics Fixture ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Fixtures/physics_fixture_create.htm">Physics Fixture ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Physics/Joints/Joints.htm">Physics Joint ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Physics/Joints/Joints.htm">Physics Joint ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asynchronous_Functions/Push_Notifications/push_get_first_local_notification.htm">Push Notification ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asynchronous_Functions/Push_Notifications/push_get_first_local_notification.htm">Push Notification ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Audio/audio_play_sound.htm">Sound Instance ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Audio/audio_play_sound.htm">Sound Instance ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_create.htm">Surface ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Surfaces/surface_create.htm">Surface</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Time_Sources/time_source_create.htm">Time Source ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Time_Sources/time_source_create.htm">Time Source</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_end.htm">Vertex Format ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Drawing/Primitives/vertex_format_end.htm">Vertex Format</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/virtual_key_add.htm">Virtual Key ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Game_Input/Virtual_Keys_And_Keyboards/virtual_key_add.htm">Virtual Key ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_pad_for_user.htm">Xbox Pad ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_pad_for_user.htm">Xbox Pad ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_sponsor_for_user.htm">Xbox Sponsor ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_sponsor_for_user.htm">Xbox Sponsor ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_get_user.htm">Xbox User ID</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/UWP_And_XBox_Live/Users_And_Accounts/xboxlive_get_user.htm">Xbox User ID</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">infinity</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">infinity</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Method_Variables.htm">Method</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Method_Variables.htm">Method</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">NaN</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">NaN</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">Pointer</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">Pointer</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Debugging/dbg_section.htm">Debug Section Pointer</a> + + + + + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Debugging/dbg_view.htm">Debug View Pointer</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">pointer_null</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">pointer_null</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_texture.htm">Texture</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sprites/Sprite_Information/sprite_get_texture.htm">Texture</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">Real</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">Real</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Maths_And_Numbers/Date_And_Time/date_current_datetime.htm">Datetime</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Maths_And_Numbers/Date_And_Time/date_current_datetime.htm">Datetime</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">int64 (signed 64-bit integer)</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">int64 (signed 64-bit integer)</a> + + + - - --1 + + + -1 + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get.htm">Tile Data</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Tile_Map_Layers/tilemap_get.htm">Tile Data</a> + + + - - -Time Source + + + Time Source + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Data_Types.htm">String</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Data_Types.htm">String</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Overview/Structs.htm">Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Overview/Structs.htm">Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_get.htm">Animation Curve Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_get.htm">Animation Curve Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_get_channel.htm">Animation Curve Channel Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_get_channel.htm">Animation Curve Channel Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_point_new.htm">Animation Curve Point Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Animation_Curves/animcurve_point_new.htm">Animation Curve Point Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Debugging/exception_unhandled_handler.htm">Exception Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Debugging/exception_unhandled_handler.htm">Exception Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm">Font Info Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm">Font Info Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm">Font Glyph Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Fonts/font_get_info.htm">Font Glyph Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Rooms/Filter_Effect_Layers/fx_create.htm">FX Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Rooms/Filter_Effect_Layers/fx_create.htm">FX Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Garbage_Collection/gc_get_stats.htm">GC Stats Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Garbage_Collection/gc_get_stats.htm">GC Stats Struct</a> + + + - - -<a target="_blank" href="The_Asset_Editors/Sequence_Properties/Broadcast_Messages.htm">Message Event Struct</a> + + + <a target="_blank" href="contents/The_Asset_Editors/Sequence_Properties/Broadcast_Messages.htm">Message Event Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Events_Moments_Broadcast.htm">Moment Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Events_Moments_Broadcast.htm">Moment Struct</a> + + + <a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sprites/Nine_Slice_Struct.htm">Nine Slice Struct</a> - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm#activeTracks">Sequence Active Track Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm#activeTracks">Sequence Active Track Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm">Sequence Instance Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm">Sequence Instance Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Struct.htm">Sequence Keyframe Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Struct.htm">Sequence Keyframe Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Data_Struct.htm">Sequence Keyframe Data Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Data_Struct.htm">Sequence Keyframe Data Struct</a> + + + - - -<a target="_blank" href="GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Object_Struct.htm">Sequence Object Struct</a> + + + <a target="_blank" href="contents/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Object_Struct.htm">Sequence Object Struct</a> + + + diff --git a/Manual/variable/vars-temp.xml b/Manual/variable/vars-temp.xml deleted file mode 100644 index a60cbcc82..000000000 --- a/Manual/variable/vars-temp.xml +++ /dev/null @@ -1,814 +0,0 @@ - - - - -Variables - - - - -Variable - - - -Array - - - -Matrix Array - - - -Asset - - - -Animation Curve Asset - - - -Extension Asset - - - -Font Asset - - - -Object Asset - - - -Path Asset - - - -Room Asset - - - -Script Asset - - - -Sequence Asset - - - -Shader Asset - - - -Sound Asset - - - -Sprite Asset - - - -Tile Set Asset - - - -Timeline Asset - - - -Boolean - - - -Constant - - - -Xbox Live Achievement Filter Constant - - - -Animation Curve Interpolation Type Constant - - - -Asset Type Constant - - - -Async Event Type Constant - - - -Audio Channel Type - - - -Audio Falloff Type - - - -Bounding Box Kind (Shape) Constant - - - -Bounding Box Mode Constant - - - -Browser Type Constant - - - -Buffer Data Type Constant - - - -Buffer Seek Constant - - - -Buffer Type Constant - - - -Colour - - - -Culling Mode Constant - - - -Cursor Constant - - - -Device Type Constant - - - -Display Orientation Constant - - - -Display Timing Method Constant - - - -Blend Mode Constant - - - -Blend Mode Factor Constant - - - -Horizontal Alignment Constant - - - -Primitive Type Constant - - - -Vertical Alignment Constant - - - -Vertex Data Type Constant - - - -Vertex Usage Type Constant - - - -Comparison Function Constant - - - -DS Type Constant - - - -Effect Type Constant - - - -Event Number Constant - - - -Event Type Constant - - - -External Data Type Constant (ty_*) - - - -External Call Type Constant (dll_*) - - - -File Attribute Constant - - - -Gamepad Axis Constant - - - -Gamepad Button Constant - - - -Game Speed Constant - - - -IAP Constant - - - -IAP Event Constant - - - -IAP Status Constant - - - -IAP Store Load Constant - - - -Layer Element Type Constant - - - -Light Type Constant - - - -Matrix Type Constant - - - -Mipmapping Constant - - - -Mipmapping Filter Constant - - - -Mouse Button Constant - - - -Network Config Constant - - - -Network Event Type Constant - - - -Network Send Type Constant - - - -Socket Type Constant - - - -Nine Slice Edge Constant - - - -Nine Slice Slice Type Constant - - - -Permission State Constant - - - -OS Type Constant - - - -Particle Shape Constant - - - -Particle Emitter Distribution Constant - - - -Particle Emitter Shape Constant - - - -Path End Action Constant - - - -Physics Debug Constant - - - -Physics Joint Constant - - - -Physics Motor Constants - - - -Physics Particle Data Flag Constant - - - -Physics Particle Flag Constant - - - -Physics Particle Group Flag Constant - - - -Physics Reaction Constant - - - -Sequence Audio Key Constant - - - -Sequence Direction Constant - - - -Sequence Interpolation Type Constant - - - -Sequence Play Mode Constant - - - -Sequence Text Alignment Constant - - - -Sequence Track Type Constant - - - -Sprite Speed Constant - - - -Steam Leaderboard Display Type Constant - - - -Steam Leaderboard Sorting Constant - - - -Steam Overlay Constant - - - -Steam UGC File Type Constant - - - -Steam UGC List Constant - - - -Steam UGC Match Constant - - - -Steam UGC Query Constant - - - -Steam UGC Result Constant - - - -Steam UGC Sort Order Constant - - - -Steam UGC Visibility Constant - - - -Tile Mask Constant - - - -Time Zone Constant - - - -UWP Privilege Constant - - - -UWP Privilege Result Constant - - - -Virtual Keyboard Autocapitalization Type Constant - - - -Virtual Keyboard Return Type Constant - - - -Virtual Keyboard Type Constant - - - -Virtual Key Constant (vk_*) - - - -Xbox Age Group Constant - - - -Xbox File Error Constant - - - -Function - - - -External Function - - - -Script Function - - - -Shader Sampler Handle - - - -Shader Uniform Handle - - - -ID - - - -Async Request ID - - - -Audio Emitter ID - - - -Audio Group ID - - - -Audio Listener ID - - - -Audio Queue ID - - - -Audio Sync Group ID - - - -Buffer ID - - - -Vertex Buffer ID - - - -Camera ID - - - -Clickable ID - - - -Any DS ID - - - -DS Grid ID - - - -DS List ID - - - -DS Map ID - - - -DS Priority ID - - - -DS Queue ID - - - -DS Stack ID - - - -Background Element ID - - - -Instance Element ID - - - -Sequence Element ID - - - -Sprite Element ID - - - -Tile Map Element ID - - - -Binary File ID - - - -Text File ID - - - -GIF ID - - - -Instance ID - - - -Layer ID - - - -Layer Element ID - - - -MP Grid ID - - - -Network Socket ID - - - -noone - - - -Particle Emitter ID - - - -Particle System ID - - - -Particle Type ID - - - -Physics Particle ID - - - -Physics Particle Group ID - - - -Physics Fixture ID - - - -Physics Joint ID - - - -Push Notification ID - - - -Sound Instance ID - - - -Handle - - - -Query Handle - - - -Surface ID - - - -Vertex Format ID - - - -Virtual Key ID - - - -Xbox Pad ID - - - -Xbox Sponsor ID - - - -Xbox User ID - - - -infinity - - - -Method - - - -NaN - - - -Pointer - - - -pointer_null - - - -Texture Pointer - - - -Real - - - -Datetime - - - -int64 (64-bit integer) - - - --1 - - - -Tile Data - - - -String - - - -Struct - - - -Animation Curve Struct - - - -Animation Curve Channel Struct - - - -Animation Curve Point Struct - - - -Exception Struct - - - -Font Info Struct - - - -Font Glyph Struct - - - -FX Struct - - - -GC Stats Struct - - - -Message Event Struct - - - -Moment Struct - - - -Nine Slice Struct - - - -Sequence Instance Struct - - - -Sequence Key Channel Struct - - - -Sequence Keyframe Struct - - - -Sequence Keyframe Data Struct - - - -Sequence Object Struct - - - -Sequence Track Struct - - - -Sprite Info Struct - - - -Animation Curve Track Evaluation Node Struct - - - -Struct Weak Reference - - - -undefined - - - -N/A - - - -Xbox Match Visibility Constant - - - -Texture Page Entry \ No newline at end of file