<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.nigrapedia.com/index.php?action=history&amp;feed=atom&amp;title=Noscript_Avoidance</id>
		<title>Noscript Avoidance - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.nigrapedia.com/index.php?action=history&amp;feed=atom&amp;title=Noscript_Avoidance"/>
		<link rel="alternate" type="text/html" href="http://www.nigrapedia.com/index.php?title=Noscript_Avoidance&amp;action=history"/>
		<updated>2026-05-23T22:42:08Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.2</generator>

	<entry>
		<id>http://www.nigrapedia.com/index.php?title=Noscript_Avoidance&amp;diff=2612&amp;oldid=prev</id>
		<title>Afroduck at 19:46, 5 August 2009</title>
		<link rel="alternate" type="text/html" href="http://www.nigrapedia.com/index.php?title=Noscript_Avoidance&amp;diff=2612&amp;oldid=prev"/>
				<updated>2009-08-05T19:46:59Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 19:46, 5 August 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A problem for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;launching &lt;/del&gt;followers, especially in sandboxes, is the &amp;quot;safe zones&amp;quot; with scripting disabled. The following is an avoidance subroutine you can integrate into scripts to make sure your object stops before getting trapped. It will stop under these circumtances:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A problem for followers, especially in sandboxes, is the &amp;quot;safe zones&amp;quot; with scripting disabled. The following is an avoidance subroutine you can integrate into scripts to make sure your object stops before getting trapped. It will stop under these circumtances:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Target goes into a noscript area.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Target goes into a noscript area.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Afroduck</name></author>	</entry>

	<entry>
		<id>http://www.nigrapedia.com/index.php?title=Noscript_Avoidance&amp;diff=2611&amp;oldid=prev</id>
		<title>Afroduck: New page: A problem for launching followers, especially in sandboxes, is the &quot;safe zones&quot; with scripting disabled. The following is an avoidance subroutine you can integrate into scripts to make sur...</title>
		<link rel="alternate" type="text/html" href="http://www.nigrapedia.com/index.php?title=Noscript_Avoidance&amp;diff=2611&amp;oldid=prev"/>
				<updated>2009-08-05T19:46:43Z</updated>
		
		<summary type="html">&lt;p&gt;New page: A problem for launching followers, especially in sandboxes, is the &amp;quot;safe zones&amp;quot; with scripting disabled. The following is an avoidance subroutine you can integrate into scripts to make sur...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;A problem for launching followers, especially in sandboxes, is the &amp;quot;safe zones&amp;quot; with scripting disabled. The following is an avoidance subroutine you can integrate into scripts to make sure your object stops before getting trapped. It will stop under these circumtances:&lt;br /&gt;
&lt;br /&gt;
* Target goes into a noscript area.&lt;br /&gt;
* Target leaves a noscript area but that area remains between the object and the target. The object will continue to wait until it has a safe vector to the target before moving again.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;br /&gt;
        // You can use a normal llSensorRepeat if you don't wish to use llGetObjectDetails.&lt;br /&gt;
&lt;br /&gt;
        list desu = llGetObjectDetails(gTargetKey, [OBJECT_POS]); //gTargetKey is the UUID of the current target stored as a global variable&lt;br /&gt;
        vector target = llList2Vector(desu, 0);&lt;br /&gt;
        vector here = llGetPos();&lt;br /&gt;
        vector distance = target - here; //Vector between object and the target&lt;br /&gt;
        float length = llVecMag(distance);&lt;br /&gt;
        vector normz = llVecNorm(distance);&lt;br /&gt;
        float mod_length = 4;&lt;br /&gt;
        if ( !(PARCEL_FLAG_ALLOW_SCRIPTS &amp;amp; llGetParcelFlags(target)) )&lt;br /&gt;
        {&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        while ( mod_length &amp;lt;= length )&lt;br /&gt;
        {&lt;br /&gt;
            integer frac_trap_check = llGetParcelFlags( here + (normz * mod_length) );&lt;br /&gt;
            if ( !(PARCEL_FLAG_ALLOW_SCRIPTS &amp;amp; frac_trap_check ) )&lt;br /&gt;
            {&lt;br /&gt;
               return;&lt;br /&gt;
            }&lt;br /&gt;
            mod_length = mod_length + 4;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        llSetPos( pos + offset );&lt;br /&gt;
&amp;lt;/lsl&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:LSL Subroutines]]&lt;/div&gt;</summary>
		<author><name>Afroduck</name></author>	</entry>

	</feed>