<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.osgrid.org/index.php?action=history&amp;feed=atom&amp;title=LlGetEnergy</id>
	<title>LlGetEnergy - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.osgrid.org/index.php?action=history&amp;feed=atom&amp;title=LlGetEnergy"/>
	<link rel="alternate" type="text/html" href="http://wiki.osgrid.org/index.php?title=LlGetEnergy&amp;action=history"/>
	<updated>2026-10-25T11:08:43Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>http://wiki.osgrid.org/index.php?title=LlGetEnergy&amp;diff=131&amp;oldid=prev</id>
		<title>Osgridadmin: Created page with &quot;== Function: float llGetEnergy( );== Returns a float that is how much energy is in the object as a percentage of maximum &lt;br&gt;&lt;br&gt; &#039;&#039;&#039;Examples&#039;&#039;&#039; &lt;br&gt; {|border=&quot;1&quot; cellpadding=...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.osgrid.org/index.php?title=LlGetEnergy&amp;diff=131&amp;oldid=prev"/>
		<updated>2017-12-31T22:19:10Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Function: float llGetEnergy( );== Returns a float that is how much energy is in the object as a percentage of maximum &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &amp;#039;&amp;#039;&amp;#039;Examples&amp;#039;&amp;#039;&amp;#039; &amp;lt;br&amp;gt; {|border=&amp;quot;1&amp;quot; cellpadding=...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Function: float llGetEnergy( );==&lt;br /&gt;
Returns a float that is how much energy is in the object as a percentage of maximum &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Examples&amp;#039;&amp;#039;&amp;#039; &amp;lt;br&amp;gt;&lt;br /&gt;
{|border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|&amp;lt;source lang=&amp;quot;lsl&amp;quot;&amp;gt;&lt;br /&gt;
// This script tests the energy use of most of the physics functions&lt;br /&gt;
// 18 March 2008 by Karzita Zabaleta&lt;br /&gt;
 &lt;br /&gt;
vector homePos;&lt;br /&gt;
integer timerCount = 0;&lt;br /&gt;
integer testCount = 0; &lt;br /&gt;
 &lt;br /&gt;
// move more than 10m&lt;br /&gt;
moveTo(vector origin, vector destination) {&lt;br /&gt;
    float dist = llVecDist(origin, destination);&lt;br /&gt;
    integer passes = llCeil( llLog(dist/10.0) / llLog(2.0) );&lt;br /&gt;
    integer i;&lt;br /&gt;
    list params = [PRIM_POSITION, destination];&lt;br /&gt;
    for (i=0; i&amp;lt;passes; i++) {&lt;br /&gt;
        params = (params=[]) + params + params;&lt;br /&gt;
    }&lt;br /&gt;
    // actually move the prim, now&lt;br /&gt;
    llSetPrimitiveParams(params);&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
returnHome()&lt;br /&gt;
{&lt;br /&gt;
    llSetStatus(STATUS_PHYSICS, FALSE);&lt;br /&gt;
    llSleep(0.2);&lt;br /&gt;
    moveTo(llGetPos(),homePos);&lt;br /&gt;
    llSetTimerEvent(0);&lt;br /&gt;
    llSetRot(ZERO_ROTATION);&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry() {&lt;br /&gt;
        homePos = llGetPos();&lt;br /&gt;
        llOwnerSay(&amp;quot;Mass is &amp;quot;+(string)llGetMass());&lt;br /&gt;
    }&lt;br /&gt;
    on_rez(integer _n) {&lt;br /&gt;
        llResetScript();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer n) {&lt;br /&gt;
        do {&lt;br /&gt;
          llSleep(0.5);&lt;br /&gt;
        } while (llGetEnergy() &amp;lt; 0.998);&lt;br /&gt;
        llSetPos( llGetPos()+&amp;lt;0,0,5&amp;gt;);&lt;br /&gt;
        llSetStatus(STATUS_PHYSICS,TRUE);&lt;br /&gt;
        llSetTimerEvent(1.0);&lt;br /&gt;
 &lt;br /&gt;
        vector impulse = &amp;lt;0,0,5&amp;gt;*llGetMass();&lt;br /&gt;
        if (testCount == 0) {&lt;br /&gt;
            llOwnerSay(&amp;quot;ApplyImpulse&amp;quot;);&lt;br /&gt;
            llApplyImpulse( impulse, TRUE ); &lt;br /&gt;
        } else if (testCount == 1) {&lt;br /&gt;
            llOwnerSay(&amp;quot;ApplyRotImpulse&amp;quot;);&lt;br /&gt;
            llApplyRotationalImpulse( impulse, TRUE);&lt;br /&gt;
        } else if (testCount == 2) {&lt;br /&gt;
            llOwnerSay(&amp;quot;PushObject&amp;quot;);&lt;br /&gt;
            llPushObject(llGetKey(), impulse, ZERO_VECTOR, TRUE); &lt;br /&gt;
        } else if (testCount == 3) {&lt;br /&gt;
            llSetForceAndTorque( ZERO_VECTOR, ZERO_VECTOR, TRUE ); &lt;br /&gt;
            llOwnerSay(&amp;quot;Force&amp;quot;);&lt;br /&gt;
            llSetForce( impulse, TRUE ); &lt;br /&gt;
        } else if (testCount == 4) {&lt;br /&gt;
            llSetForceAndTorque( ZERO_VECTOR, ZERO_VECTOR, TRUE ); &lt;br /&gt;
            llOwnerSay(&amp;quot;Torque&amp;quot;);&lt;br /&gt;
            llSetTorque( impulse, TRUE ); &lt;br /&gt;
        } else if (testCount == 5) {&lt;br /&gt;
            llSetForceAndTorque( ZERO_VECTOR, ZERO_VECTOR, TRUE ); &lt;br /&gt;
            llOwnerSay(&amp;quot;Force and Torque&amp;quot;);&lt;br /&gt;
            llSetForceAndTorque( impulse, impulse, TRUE ); &lt;br /&gt;
        } else if (testCount == 6) {&lt;br /&gt;
            llSetForceAndTorque( ZERO_VECTOR, ZERO_VECTOR, TRUE ); &lt;br /&gt;
            llOwnerSay(&amp;quot;MoveToTarget&amp;quot;);&lt;br /&gt;
            llMoveToTarget( impulse, 0.4 ); &lt;br /&gt;
        } else if (testCount == 7) {&lt;br /&gt;
            llStopMoveToTarget ( ); &lt;br /&gt;
            llOwnerSay(&amp;quot;RotLookAt&amp;quot;);&lt;br /&gt;
            llRotLookAt( llEuler2Rot(impulse*DEG_TO_RAD), 0.4, 0.4 ); &lt;br /&gt;
        } else if (testCount == 8) {&lt;br /&gt;
            llStopLookAt ( ); &lt;br /&gt;
            llOwnerSay(&amp;quot;LookAt&amp;quot;);&lt;br /&gt;
            llLookAt( impulse, 0.4, 0.4 ); &lt;br /&gt;
        } else if (testCount == 9) {&lt;br /&gt;
            llStopLookAt ( ); &lt;br /&gt;
            llOwnerSay(&amp;quot;Hover Height&amp;quot;);&lt;br /&gt;
            llSetHoverHeight( 5.0, TRUE, 0.5);&lt;br /&gt;
        } else if (testCount == 10) {&lt;br /&gt;
            llSetHoverHeight( 0, TRUE, 0.5);&lt;br /&gt;
            llOwnerSay(&amp;quot;Ground Repel&amp;quot;);&lt;br /&gt;
            llGroundRepel( 5, TRUE, 0.5);&lt;br /&gt;
        } else if (testCount == 11) {&lt;br /&gt;
            llGroundRepel( 0, TRUE, 0.5);&lt;br /&gt;
            llOwnerSay(&amp;quot;Buoyancy&amp;quot;);&lt;br /&gt;
            llSetBuoyancy( 0.997 );&lt;br /&gt;
        } else {&lt;br /&gt;
            llSetBuoyancy( 0.0 );&lt;br /&gt;
            llOwnerSay(&amp;quot;Done&amp;quot;);&lt;br /&gt;
            testCount=(-1);&lt;br /&gt;
        }&lt;br /&gt;
        llOwnerSay((string)timerCount+&amp;quot;. energy    :&amp;quot;+(string)llGetEnergy());&lt;br /&gt;
        timerCount = 0;&lt;br /&gt;
        testCount++;&lt;br /&gt;
    }&lt;br /&gt;
    timer() {&lt;br /&gt;
        llOwnerSay((string)timerCount+&amp;quot;. energy    :&amp;quot;+(string)llGetEnergy());&lt;br /&gt;
        timerCount++;&lt;br /&gt;
        if (timerCount&amp;gt;10) { // just in case floating&lt;br /&gt;
            returnHome();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    collision(integer n) {&lt;br /&gt;
        llOwnerSay((string)timerCount+&amp;quot;. energy    :&amp;quot;+(string)llGetEnergy());&lt;br /&gt;
        returnHome();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Osgridadmin</name></author>
	</entry>
</feed>