bitburner-src/doc/source/netscript/netscriptcodingcontractapi.rst
2019-01-08 21:26:20 -08:00

89 lines
2.9 KiB
ReStructuredText

.. _netscriptcodingcontractapi:
Netscript Coding Contract API
=============================
Netscript provides the following API for interacting with
:ref:`codingcontracts`.
**The Coding Contract API must be accessed through the 'codingcontract' namespace**
In :ref:`netscript1`::
codingcontract.getDescription("foo.cct", "home");
codingcontract.attempt(1, "foo.cct", "foodnstuff");
In :ref:`netscriptjs`::
ns.codingcontract.getDescription("foo.cct", "home");
ns.codingcontract.attempt(1, "foo.cct", "foodnstuff");
attempt
-------
.. js:function:: attempt(answer, fn[, hostname/ip=current ip])
:param answer: Solution for the contract
:param string fn: Filename of the contract
:param string hostname/ip: Hostname or IP of the server containing the contract.
Optional. Defaults to current server if not provided
Attempts to solve the Coding Contract with the provided solution.
:returns: Boolean indicating whether the solution was correct
getContractType
---------------
.. js:function:: getContractType(fn[, hostname/ip=current ip])
:param string fn: Filename of the contract
:param string hostname/ip: Hostname or IP of the server containing the contract.
Optional. Defaults to current server if not provided
Returns a name describing the type of problem posed by the Coding Contract.
(e.g. Find Largest Prime Factor, Total Ways to Sum, etc.)
:returns: A string with the contract's problem type
getDescription
--------------
.. js:function:: getDescription(fn[, hostname/ip=current ip])
:param string fn: Filename of the contract
:param string hostname/ip: Hostname or IP of the server containing the contract.
Optional. Defaults to current server if not provided
Get the full text description for the problem posed by the Coding Contract
:returns: A string with the contract's text description
getData
-------
.. js:function:: getData(fn[, hostname/ip=current ip])
:param string fn: Filename of the contract
:param string hostname/ip: Hostname or IP of the server containing the contract.
Optional. Defaults to current server if not provided
Get the data associated with the specific Coding Contract. Note that this is
not the same as the contract's description. This is just the data that
the contract wants you to act on in order to solve
:returns: The specified contract's data
getNumTriesRemaining
--------------------
.. js:function:: getNumTriesRemaining(fn[, hostname/ip=current ip])
:param string fn: Filename of the contract
:param string hostname/ip: Hostname or IP of the server containing the contract.
Optional. Defaults to current server if not provided
Get the number of tries remaining on the contract before it
self-destructs.
:returns: Number indicating how many attempts are remaining