<?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>SetShape</title>
    <category>Objects</category>
    <version>5.1 OC</version>
    <syntax>
      <rtype>void</rtype>
      <params>
        <param>
          <type>int</type>
          <name>x</name>
          <desc>X offset of the new shape.</desc>
        </param>
        <param>
          <type>int</type>
          <name>y</name>
          <desc>Y offset of the new shape.</desc>
        </param>
        <param>
          <type>int</type>
          <name>width</name>
          <desc>Width of the new shape.</desc>
        </param>
        <param>
          <type>int</type>
          <name>height</name>
          <desc>Height of the new shape.</desc>
        </param>
      </params>
    </syntax>
    <desc>Changes the bounding rectangle of the object. This rectangle is used e.g. for collision or overlap detection. It does not affect object drawing.</desc>
    <remark>In various situations the engine will reset the object's shape to the definition value. This might overwrite changes made with SetShape. This will happen e.g. during object rotation but also when resuming a saved game. So this function should only be used for mainly static, unchanging objects and you should read just the shape manually in synchronization calls like OnSynchronized.</remark>
    <examples>
      <example>
        <code><funclink>FindObject</funclink>(<funclink>Find_ID</funclink>(Tree_Coniferous))-&gt;SetShape(-200,-300,400,600);</code>
        <text>Enlarges the area or distance from which you can chop down one coniferous tree.</text>
      </example>
    </examples>
    <related><funclink>SetVertex</funclink></related>
  </func>
  <author>Sven2</author><date>2003-06</date>
</funcs>
