gm-docs-parser 1.0.0

A collection of typings for GameMaker Studio 2 manual pages
Documentation
<?xml version="1.0" encoding="utf-8" ?>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head>

  <script type="text/javascript" language="JavaScript">
    //<![CDATA[
    function reDo() {
      if (innerWidth != origWidth || innerHeight != origHeight)
        location.reload();
    }
    if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
      origWidth = innerWidth;
      origHeight = innerHeight;
      onresize = reDo;
    }
    onerror = null;
  //]]>
  </script>
  <style type="text/css">/*<![CDATA[*/

    < !-- div.WebHelpPopupMenu {
      position: absolute;
      left: 0px;
      top: 0px;
      z-index: 4;
      visibility: hidden;
    }

    p.WebHelpNavBar {
      text-align: right;
    }

    -->
  
/*]]>*/</style>

  <script type="text/javascript">//<![CDATA[

    gRootRelPath = "../../..";
    gCommonRootRelPath = "../../..";
    gTopicId = "9.2.1.0_25";
  
//]]></script>

  <script type="text/javascript" src="../../../template/scripts/rh.min.js"></script>
  <script type="text/javascript" src="../../../template/scripts/common.min.js"></script>
  <script type="text/javascript" src="../../../template/scripts/topic.min.js"></script>
  <script type="text/javascript" src="../../../template/scripts/topicwidgets.min.js"></script>
<script type="text/javascript" src="../../../whxdata/projectsettings.js"></script>
  <link rel="stylesheet" type="text/css" href="../../../template/styles/topic.min.css"/>
  <link rel="stylesheet" type="text/css" href="../../../template/Charcoal_Grey/topicheader.css"/>
  <meta name="topic-status" content="Draft"/>

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>method</title>
  <meta name="generator" content="Adobe RoboHelp 2019"/>
  <link rel="stylesheet" href="../../../assets/css/default.css" type="text/css"/>
  <meta name="rh-authors" content="Mark Alexander"/>
  <meta name="topic-comment" content="Page explaining the function method"/>
  <meta name="rh-index-keywords" content="method"/>
  <meta name="search-keywords" content="method"/>
</head>

<body>
  <div class="topic-header rh-hide" id="rh-topic-header" onclick="rh._.goToFullLayout()">
    <div class="logo">
    </div>
    <div class="nav">
      <div class="title" title="method">
        <span>method</span>
      </div>
      <div class="gotohome" title="Click here to see this page in full context">
        <span>Click here to see this page in full context</span>
      </div>
    </div>
  </div>
  <div class="topic-header-shadow rh-hide" id="rh-topic-header-shadow"></div>



  <!--<div class="body-scroll" style="top: 150px;">-->
  <h1>method</h1>
  <p>With this function you can bind any function that has previously been defined to a given instance or struct, creating a <a href="../../GML_Overview/Method_Variables.htm">method variable</a> that can
    be used later. You supply the instance ID to use (it <i>must</i> be an instance that is active and in the room, and can&#39;t be an object ID) or a struct reference, as well as the ID of the function that you want to bind.
    The function will return a <a class="tooltip" title="In GameMaker, a method is the name given to a user-defined function that has been bound to an instance, so that the instance variable is the name of the funtion and what you use to call it.">method</a> which can be called from the variable it is assigned to (see the code example below). It is worth noting that you can bind built-in functions as well as user
    defined functions, and you can also supply <tt>undefined</tt> as the instance/struct argument meaning that the current <a href="../../GML_Overview/Instance_Keywords.htm"><tt>self</tt></a> scope will
    be used for the binding.</p>
  <p> </p>
  <h4>Syntax:</h4>
  <p class="code">method(struct_ref_or_instance_id, function);</p>
  <table>
    <tbody>
      <tr>
        <th>Argument</th>
        <th>Description</th>
      </tr>
      <tr>
        <td>struct_ref_or_instance_id</td>
        <td>The unique reference or ID value of the struct or instance to use (or <tt>undefined</tt> for <tt>self</tt>)</td>
      </tr>
      <tr>
        <td>function</td>
        <td>The ID of the function to use</td>
      </tr>
    </tbody>
  </table>
  <p> </p>
  <h4>Returns:</h4>
  <p class="code">Method</p>
  <p> </p>
  <h4>Example:</h4>
  <p class="code">var _inst = instance_position(mouse_x, mouse_y, obj_Enemy);<br/> if instance_exists(_inst)<br/>     {
    <br/>     enemy_func = method(_inst, enemy_ai);<br/>     }
  </p>
  <p>The above code will check to see if an instance exists at the given position and if it does then a function is bound to the instance and returned as the method variable &quot;enemy_func&quot;.</p>
  <p> </p>
  <p> </p>
  <p> </p>
  <div class="footer">
    <div class="buttons">
      <div class="clear">
        <div style="float:left">Back: <a href="Variable_Functions.htm">Variable Functions</a></div>
        <div style="float:right">Next: <a href="method_get_self.htm">method_get_self</a></div>
      </div>
    </div>
    <h5>© Copyright YoYo Games Ltd. 2020 All Rights Reserved</h5>
  </div>
  <!-- KEYWORDS
method
-->
  <!-- TAGS
method
-->

</body></html>