Use skill: Difference between revisions

From Kolmafia
Jump to navigation Jump to search
imported>StDoodle
imported>Heeheehee
Correct the claim that use_skill returns different things depending on calling context, as opposed to type of parameters passed.
 
(15 intermediate revisions by 5 users not shown)
Line 1: Line 1:
'''[[string]] use_skill([[skill]] touse)'''<br>
There are two forms of this function. In a combat consult script, this returns a buffer, but otherwise it returns a boolean. Note both forms below.
'''[[boolean]] use_skill(int count, [[skill]] touse)'''


Attempts to use the skill listed as 'touse'.
{{
#vardefine:name|use_skill}}{{
#vardefine:return_type|boolean}}=Normal Use={{


The one returning a string is more helpful for battle as it will return the page html. Whereas the second will just say whether you have the skill or not.
FunctionPage|
name={{#var:name}}|


This example will attempt to cast the specified skill as many times as it can with the MP the character has left.<br>
function1={{Function|
<p><pre>
name={{#var:name}}|
effect chosen = $effect[Empathy];
aggregate={{#var:aggregate}}|
use_skill(my_mp()/mp_cost(to_skill(chosen)),to_skill(chosen));
return_type={{#var:return_type}}|
</pre></p>
return_also={{#var:return_also}}|
parameter1={{Param|int|casts}}|
parameter2={{Param|skill|to_use}}|
}}|
 
function2={{Function|
name={{#var:name}}|
aggregate={{#var:aggregate}}|
return_type={{#var:return_type}}|
return_also={{#var:return_also}}|
parameter1={{Param|int|casts}}|
parameter2={{Param|skill|to_use}}|
parameter3={{Param|string|target}}|
p1desc={{Pspan|casts}} is the number of casts|
p2desc={{Pspan|to_use}} is the skill to use|
p3desc={{Pspan|target}} is the recipient (optional, for use with buffs only)|
}}|
 
function_description=Attempts to cast the skill {{pspan|to_use}} a number of times specified by {{pspan|casts}}, or once if not specified. Defaults to casting on yourself, but you can specify a {{pspan|target}} for buffs.|
 
code1={{CodeSample|
title=Code Sample|
description=This example will attempt to cast the specified skill as many times as it can with the MP the character has left.|
code=
<syntaxhighlight>
effect chosen = $effect[ Empathy ];
use_skill( my_mp() / mp_cost( to_skill(chosen) ) , to_skill(chosen) );
</syntaxhighlight>}}|
 
cli_equiv=The CLI command "cast" functions similarly to the normal version of this function (with similar parameters).|
 
}}=In-combat Consulting={{
 
FunctionPage|
name={{#var:name}}|
 
function1={{Function|
name={{#var:name}}|
aggregate={{#var:aggregate}}|
return_type=buffer|
return_also={{#var:return_also}}|
parameter1={{Param|skill|to_use}}|
}}|
 
function2={{Function|
name={{#var:name}}|
aggregate={{#var:aggregate}}|
return_type=boolean|
return_also={{#var:return_also}}|
parameter1={{Param|int|casts}}|
parameter2={{Param|skill|to_use}}|
p1desc={{Pspan|casts}} is the (optional) number of casts|
p2desc={{Pspan|to_use}} is the skill to use|
}}|
 
function_description=If the two-argument form is used in-combat, it will loop the specified number of {{pspan|casts}} using the specified skill {{pspan|to_use}}, never reconsulting the script until the loop is complete or the monster is defeated.  The single-argument form will use the skill, then return the HTML response text.  One exception: this will not work with Lasagna Bandages, since it tries to cast the out-of-combat version of the skill.  Using {{f|visit_url}} is required for casting Lasagna Bandages in combat.|
 
}}
 
[[Category:Skills and Effects]][[Category:In-combat Consulting]]
{{RFI|Confirm: Is visit_url() still needed for Lasagna Bandages?}}

Latest revision as of 01:34, 26 March 2015

There are two forms of this function. In a combat consult script, this returns a buffer, but otherwise it returns a boolean. Note both forms below.

Normal Use

Function Syntax

boolean use_skill(int casts ,skill to_use )

boolean use_skill(int casts ,skill to_use ,string target )

  • casts is the number of casts
  • to_use is the skill to use
  • target is the recipient (optional, for use with buffs only)

Attempts to cast the skill to_use a number of times specified by casts, or once if not specified. Defaults to casting on yourself, but you can specify a target for buffs.

Code Sample

This example will attempt to cast the specified skill as many times as it can with the MP the character has left.

effect chosen = $effect[ Empathy ];
use_skill( my_mp() / mp_cost( to_skill(chosen) )  , to_skill(chosen) );

CLI Equivalent

The CLI command "cast" functions similarly to the normal version of this function (with similar parameters).

In-combat Consulting

Function Syntax

buffer use_skill(skill to_use )

boolean use_skill(int casts ,skill to_use )

  • casts is the (optional) number of casts
  • to_use is the skill to use

If the two-argument form is used in-combat, it will loop the specified number of casts using the specified skill to_use, never reconsulting the script until the loop is complete or the monster is defeated. The single-argument form will use the skill, then return the HTML response text. One exception: this will not work with Lasagna Bandages, since it tries to cast the out-of-combat version of the skill. Using visit_url() is required for casting Lasagna Bandages in combat.

Attention KoLmafia Experts!

We need your help; some details of this function's operation are unknown or unclear.

The following specific question has been raised:

  • Confirm: Is visit_url() still needed for Lasagna Bandages?