LlGetAgentInfo Test

From Second Life Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

[LLGetAgentInfoTest]

[VERSION] 0.1

[LENGTH] 00:30

[TESTERS] 1

[OVERVIEW] This test has been designed to test the functionality of the llGetAgentInfo LSL function.

[SETUP] 1 tester, Rezzable Sim with telehub, and another Sim bordering it. Also a sim to Teleport to.

[*]

[0010] Remove all your Attachments and Scripted Attachments (Right Click Yourself > Take Off > Detach All)

[0020] Locate youself in a Telehub Sim, on the border with another sim but don't cross over.

[0030] Right-click on the ground, then select CREATE and rez a default cube prim called agentinfo in the sim you are in.

[0040] Right-click on the Cube, then select Edit.

[0050] In the Edit Window, select the Content Tab.

[0060] In the Content Window, Click "New Script"

[0070] In the Script window, copy and paste the following script replacing any original script and then select "Save". Wait for it to compile and save, Then Close Script Window.

[SCRIPT] llGetAgentInfoScript

[0080] Verify "New Script" appears in the Contents List

[0090] Close the Edit Window

[*]

[0100] Press the "Home" Key (or "F" with Chat Button turned off) to Enable Flying.

[0110] Verify you hear AGENT_FLYING and AGENT_IN_AIR started.

[0120] Fly around a little bit but do Not leave the sim, approach the Prim and land close by it.

[0130] Verify you hear AGENT_FLYING and AGENT_IN_AIR ended.

[0140] Press the "PG UP" Key (or "E" with Chat Button turned off) to Jump.

[0150] Verify you hear AGENT_IN_AIR started only when you jump.

[0160] Verify you hear AGENT_IN_AIR ended only when you land from jump.

[0170] Right-click on the ground, then select CREATE and Rez a cube called nonscript, Right Click on it Select More > Attach > Left Hand

[0180] Verify you hear AGENT_ATTACHMENT started

[0190] Right-click on the ground, then select CREATE and Rez a cube, call it scriptprim.

[0200] Right-click on the Cube, then select Edit.

[0210] In the Edit Window, select the Content Tab.

[0220] In the Content Window, Click "New Script"

[0230] In the Script window select "Save". Wait for it to compile and save, Then Close Script Window.

[0240] Verify "New Script" appears in the Contents List

[0250] Close the Edit Window

[0260] Right Click on this scriptprim, Select More > Attach > Right Hand

[0270] Verify you hear AGENT_SCRIPTED started

[0280] Click View > Mouselook (or Press M with Chat Button turned off)

[0290] Verify you hear AGENT_MOUSELOOK started

[0300] Leave Mouselook

[0310] Verify you hear AGENT_MOUSELOOK ended

[0320] Right click on the land near to the original box and Select "Sit Here".

[0330] As soon as your sat, Verify you hear AGENT_SITTING started.

[0340] Click "Stand up" on your screen

[0350] Verify you hear AGENT_SITTING ended

[*]

[NOTE] As your Sitting on Land it should NOT say your sitting on an object too.

[*]

[0360] Right-click on the ground, then select CREATE and Rez a cube

[0370] Right-click on the cube, select "Sit Here"

[0380] Verify you hear both, AGENT_SITTING and AGENT_ON_OBJECT started.

[0390] Click Stand up on your screen

[0380] Verify you hear both, AGENT_SITTING and AGENT_ON_OBJECT ended.

[0390] Click World Menu and Set Away

[0400] Verify you hear AGENT_AWAY started

[0410] Bring yourself back from Away

[0420] Verify you hear AGENT_AWAY ended

[0430] Walk around the box abit but dont leave the sim or stop moving

[0440] Verify you hear AGENT_WALKING started

[0450] Stop walking

[0460] Verify you hear AGENT_WALKING ended

[0470] Type some text in the chat box (so that your avatar does the typing animation)

[0480] Verify you hear AGENT_TYPING started

[0490] And when you finish typing

[0500] Verify you hear AGENT_TYPING ended

[0510] Press and Hold the "PG Down" (or C with Chat Button turned off)

[0520] Verify you hear AGENT_CROUCHING started

[0530] Release the key

[0540] Verify you hear AGENT_CROUCHING ended

[0550] Set you Avatar to Busy, Click World, Set Busy (and acknowledge the dialog)

[0560] Verify you hear AGENT_BUSY started

[0570] Set you Avatar Not Busy

[0580] Verify you hear AGENT_BUSY ended

[0590] Click World > Always Run or Ctrl R

[0600] Verify you hear AGENT_ALWAYS_RUN started

[0610] Click World > Always Run or Ctrl R again

[0620] Verify you hear AGENT_ALWAYS_RUN ended

[*]

[NOTE] This LSL Command Should only Work with the agent in the same simulator as the script.

[*]

[0630] Walk a Short Distance across the sim border.

[0640] Verify you heard AGENT_WALKING started

[0650] But as soon as you left the sim and stopped walking

[0660] Verify you heard all the following, AGENT_WALKING, AGENT_SCRIPTED, AGENT_ATTACHMENTS stopped.

[0670] Try any method before to get a reation from the script, typing, sitting, busy, flying without crossing the sim border

[0680] Verify you couldnt get a response from the script.

[0690] Turn around and walk back towards your start point.

[0700] Verify you hear the following as you cross the sim border, AGENT_WALKING, AGENT_SCRIPTED, AGENT_ATTACHMENTS started.

[0710] Verify when you stop walking you also hear AGENT_WALKING stopped.

[*]

[Sit Testing]

[*]

[0720] Remove all your Attachments and Scripted Attachments (Right Click Yourself > Take Off > Detach All)

[0730] Right-click on the ground, then select CREATE and Rez a cube

[0740] Right-click on the cube, select "Sit Here"

[0750] Verify you hear both, AGENT_SITTING and AGENT_ON_OBJECT started.

[0760] Look in your Inventory > Objects for the Two Prims you just Detatched, one is called nonscript the other scriptprim, Right Click on nonscript, Select Attach To, Select Left Hand

[0770] Verify you hear AGENT_ATTACHMENT started

[0780] Look in your Inventory > Objects for the Two Prims you just Detatched, one is called nonscript the other scriptprim, Right Click on scriptprim, Select Attach To, Select Right Hand

[0790] Verify you hear AGENT_SCRIPTED started

[0800] Click View > Mouselook (or Press M with Chat Button turned off)

[0810] Verify you hear AGENT_MOUSELOOK started

[0820] Leave Mouselook

[0830] Verify you hear AGENT_MOUSELOOK ended

[0840] Click World Menu and Set Away

[0850] Verify you hear AGENT_AWAY started

[0860] Bring yourself back from Away

[0870] Verify you hear AGENT_AWAY ended

[0880] Type some text in the chat box (so that your avatar does the typing animation)

[0890] Verify you hear AGENT_TYPING started

[0900] And when you finish typing

[0910] Verify you hear AGENT_TYPING ended

[0920] Press and Hold the "PG Down" (or C with Chat Button turned off)

[0930] Set you Avatar to Busy, Click World, Set Busy (and acknowledge the dialog)

[0940] Verify you hear AGENT_BUSY started

[0950] Set you Avatar Not Busy

[0960] Verify you hear AGENT_BUSY ended

[0970] Click World > Always Run or Ctrl R

[0980] Verify you hear AGENT_ALWAYS_RUN started

[0990] Click World > Always Run or Ctrl R again

[1000] Verify you hear AGENT_ALWAYS_RUN ended

[1010] Remove all your Attachments and Scripted Attachments (Right Click Yourself > Take Off > Detach All)

[1020] Verify you hear both AGENT_ATTACHMENTS and AGENT_SCRIPTED ended

[1030] Click Stand up on your screen

[1040] Verify you hear both, AGENT_SITTING and AGENT_ON_OBJECT ended.

[*]

[Teleporting Out and In]

[*]

[1050] With your Attachments still Removed, Teleport Out of the Sim and then Teleport Back to the Originating Sim.

[1060] Position yourself in your work area, near the agentinfo prim you created at the start of the test.

[1070] Press the "Home" Key (or "F" with Chat Button turned off) to Enable Flying.

[1080] Verify you hear AGENT_FLYING and AGENT_IN_AIR started.

[1090] Fly around a little bit but do Not leave the sim, approach the Prim and land close by it.

[1100] Verify you hear AGENT_FLYING and AGENT_IN_AIR ended.

[1110] Press the "PG UP" Key (or "E" with Chat Button turned off) to Jump.

[1120] Verify you hear AGENT_IN_AIR started only when you jump.

[1130] Verify you hear AGENT_IN_AIR ended only when you land from jump.

[1140] Look in your Inventory > Objects for the Two Prims you just Detatched, one is called nonscript the other scriptprim, Right Click on nonscript, Select Attach To, Select Left Hand

[1150] Verify you hear AGENT_ATTACHMENT started

[1160] Look in your Inventory > Objects for the Two Prims you just Detatched, one is called nonscript the other scriptprim, Right Click on scriptprim, Select Attach To, Select Right Hand

[1170] Verify you hear AGENT_SCRIPTED started

[1180] Click View > Mouselook (or Press M with Chat Button turned off)

[1190] Verify you hear AGENT_MOUSELOOK started

[1200] Leave Mouselook

[1210] Verify you hear AGENT_MOUSELOOK ended

[1220] Right click on the land near to the original box and Select "Sit Here".

[1230] As soon as your sat, Verify you hear AGENT_SITTING started.

[1240] Click "Stand up" on your screen

[1250] Verify you hear AGENT_SITTING ended

[1260] Right-click on the ground, then select CREATE and Rez a cube

[1270] Right-click on the cube, select "Sit Here"

[1280] Verify you hear both, AGENT_SITTING and AGENT_ON_OBJECT started.

[1290] Click Stand up on your screen

[1300] Verify you hear both, AGENT_SITTING and AGENT_ON_OBJECT ended.

[1310] Click World Menu and Set Away

[1320] Verify you hear AGENT_AWAY started

[1330] Bring yourself back from Away

[1340] Verify you hear AGENT_AWAY ended

[1350] Walk around the box abit but dont leave the sim or stop moving

[1360] Verify you hear AGENT_WALKING started

[1370] Stop walking

[1380] Verify you hear AGENT_WALKING ended

[1390] Type some text in the chat box (so that your avatar does the typing animation)

[1400] Verify you hear AGENT_TYPING started

[1410] And when you finish typing

[1420] Verify you hear AGENT_TYPING ended

[1430] Press and Hold the "PG Down" (or C with Chat Button turned off)

[1440] Verify you hear AGENT_CROUCHING started

[1450] Release the key

[1460] Verify you hear AGENT_CROUCHING ended

[1470] Set you Avatar to Busy, Click World, Set Busy (and acknowledge the dialog)

[1480] Verify you hear AGENT_BUSY started

[1490] Set you Avatar Not Busy

[1500] Verify you hear AGENT_BUSY ended

[1510] Click World > Always Run or Ctrl R

[1520] Verify you hear AGENT_ALWAYS_RUN started

[1530] Click World > Always Run or Ctrl R again

[1540] Verify you hear AGENT_ALWAYS_RUN ended

[1550] Remove all your Attachments and Scripted Attachments (Right Click Yourself > Take Off > Detach All)

[1560] Verify you hear both AGENT_ATTACHMENTS and AGENT_SCRIPTED ended

[1570] All Done, Clean Up your Workspace.

[END]


[llGetAgentInfoScript]

integer info; 
integer lastinfo; 
integer diffinfo; 

default 
{ 
    state_entry() 
    { 
        llSetTimerEvent(0.1); 
    } 

    timer() 
    { 

        lastinfo = info; 
        info = llGetAgentInfo(llGetOwner()); 


        diffinfo = lastinfo ^ info; 


        if (diffinfo & AGENT_ATTACHMENTS) 
        { 
            if (info & AGENT_ATTACHMENTS) 
            { 
                llSay(0,"AGENT_ATTACHMENTS started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_ATTACHMENTS ended"); 
            } 
        }

        if (diffinfo & AGENT_AWAY)
        {
            if (info & AGENT_AWAY) 
            { 
                llSay(0,"AGENT_AWAY started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_AWAY ended"); 
            } 
        } 

        if (diffinfo & AGENT_FLYING) 
        { 
            if (info & AGENT_FLYING) 
            { 
                llSay(0,"AGENT_FLYING started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_FLYING ended"); 
            } 
        } 

        if (diffinfo & AGENT_MOUSELOOK) 
        { 
            if (info & AGENT_MOUSELOOK) 
            { 
                llSay(0,"AGENT_MOUSELOOK started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_MOUSELOOK ended"); 
            } 
        } 

        if (diffinfo & AGENT_WALKING) 
            { 
            if (info & AGENT_WALKING) 
            { 
                llSay(0,"AGENT_WALKING started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_WALKING ended"); 
            } 
        } 

        if (diffinfo & AGENT_SCRIPTED) 
        { 
            if (info & AGENT_SCRIPTED) 
            { 
                llSay(0,"AGENT_SCRIPTED started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_SCRIPTED ended"); 
            } 
        } 

        if (diffinfo & AGENT_SITTING) 
        { 
            if (info & AGENT_SITTING) 
            { 
                llSay(0,"AGENT_SITTING started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_SITTING ended"); 
            } 
        } 

        if (diffinfo & AGENT_ON_OBJECT) 
        { 
            if (info & AGENT_ON_OBJECT) 
            { 
                llSay(0,"AGENT_ON_OBJECT started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_ON_OBJECT ended"); 
            } 
        } 

        if (diffinfo & AGENT_IN_AIR) 
        { 
            if (info & AGENT_IN_AIR) 
            { 
                llSay(0,"AGENT_IN_AIR started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_IN_AIR ended"); 
            } 
        } 

        if (diffinfo & AGENT_TYPING) 
        { 
            if (info & AGENT_TYPING) 
            { 
                llSay(0,"AGENT_TYPING started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_TYPING ended"); 
            } 
        } 

        if (diffinfo & AGENT_CROUCHING) 
        { 
            if (info & AGENT_CROUCHING) 
            { 
                llSay(0,"AGENT_CROUCHING started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_CROUCHING ended"); 
            } 
        } 

        if (diffinfo & AGENT_BUSY) 
        { 
            if (info & AGENT_BUSY) 
            { 
                llSay(0,"AGENT_BUSY started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_BUSY ended"); 
            } 
        } 

        if (diffinfo & AGENT_ALWAYS_RUN) 
        { 
            if (info & AGENT_ALWAYS_RUN) 
            { 
                llSay(0,"AGENT_ALWAYS_RUN started"); 
            } 
            else 
            { 
                llSay(0,"AGENT_ALWAYS_RUN ended"); 
            } 
        } 
    } 
}