forked from Mirrors/openclonk
80 lines
3.3 KiB
XML
80 lines
3.3 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
<!DOCTYPE funcs
|
|
SYSTEM '../../../clonk.dtd'>
|
|
<?xml-stylesheet type="text/xsl" href="../../../clonk.xsl"?>
|
|
<funcs>
|
|
<func>
|
|
<title>SimFlight</title>
|
|
<category>Objects</category>
|
|
<subcat>Movement</subcat>
|
|
<version>5.1 OC</version>
|
|
<syntax>
|
|
<rtype>array</rtype>
|
|
<params>
|
|
<param>
|
|
<type>int</type>
|
|
<name>x</name>
|
|
<desc>X offset of the starting position. (NOT optional if used in <code>nil</code> object context)</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>y</name>
|
|
<desc>Y offset of the starting position. (NOT optional if used in <code>nil</code> object context)</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>xdir</name>
|
|
<desc>Initial horizontal speed. If not specified this will default to the object's horizontal speed. (NOT optional if used in <code>nil</code> object context)</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>ydir</name>
|
|
<desc>Initial vertical speed. If not specified this will default to the object's vertical speed. (NOT optional if used in <code>nil</code> object context)</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>min_density</name>
|
|
<desc>Minimum density of the material which will stop the projected trajectory. If not specified this will default to value 50 (solid material).</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>max_density</name>
|
|
<desc>Maximum density of the material which will stop the projected trajectory. If not specified this will default to value 100.</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>iterations</name>
|
|
<desc>Number of simulated frames for which the projection runs. If not specified or nonpositive the simulation will run indefinitely until material or the limits of the landscape are encountered.</desc>
|
|
<optional />
|
|
</param>
|
|
<param>
|
|
<type>int</type>
|
|
<name>precision</name>
|
|
<desc>Precision. Default 10 if not specified.</desc>
|
|
<optional />
|
|
</param>
|
|
</params>
|
|
</syntax>
|
|
<desc>Simulates the motion of a falling object with a given starting position and initial speed. The returned array will contain [int x_final, int y_final, int xdir_final, int ydir_final, int time_passed]. <br/> If the projected trajectory encounters a material of the specified density, the simulation will stop and time_passed will be non-negative. Otherwise, time_passed will be negative.</desc>
|
|
<examples>
|
|
<example>
|
|
<code>if (<funclink>GetAction</funclink>() == "Jump")
|
|
{
|
|
var end = SimFlight()
|
|
if (end[3] >= 80)
|
|
<funclink>Message</funclink>("Oh oh, this will be a rough impact!");
|
|
}</code>
|
|
<text>If the calling clonk is situated in mid-air and it appears that he will hit the ground at high speed, he will call out.</text>
|
|
</example>
|
|
</examples>
|
|
</func>
|
|
<author>Newton</author><date>2004-03</date>
|
|
<author>Peewee</author><date>2010-10</date>
|
|
</funcs>
|