<?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>PathFree</title>
    <category>Landscape</category>
    <version>5.1 OC</version>
    <syntax>
      <rtype>bool</rtype>
      <params>
        <param>
          <type>int</type>
          <name>x1</name>
          <desc>X coordinate of the start point</desc>
        </param>
        <param>
          <type>int</type>
          <name>y1</name>
          <desc>Y coordinate of the start point</desc>
        </param>
        <param>
          <type>int</type>
          <name>x2</name>
          <desc>X coordinate of the end point</desc>
        </param>
        <param>
          <type>int</type>
          <name>y2</name>
          <desc>Y coordinate of the end point</desc>
        </param>
      </params>
    </syntax>
    <desc>Determines whether the path from the start point to the end point is free, meaning that no solid material is intersected by a directly line between those points.</desc>
    <remark>All coordinates are global, even in local calls.</remark>
    <examples>
      <example>
        <code>// for all living beings in a circle with a radius of 500 around it
for(var living in <funclink>FindObjects</funclink>(<funclink>Find_OCF</funclink>(<funclink>OCF_Alive</funclink>),<funclink>Find_Distance</funclink>(500)))
{
	// incinerate if the path is free
	if(PathFree(GetX(),GetY(),GetX(living),GetY(living)))
		living-&gt;<funclink>Incinerate</funclink>();
}</code>
        <text>Eye of the beholder: Incinerates all living beings in a distance of maximum 500 pixels and if the beholder has a line-of-sight to it.</text>
      </example>
    </examples>
    <related>
      <funclink>GetMaterial</funclink>
      <funclink>GBackSolid</funclink>
      <funclink>GetPathLength</funclink>
    </related>
  </func>
  <author>Sven2</author><date>2002-08</date>
</funcs>
