Jump to content

Turokhan Legion

Resident
  • Posts

    28
  • Joined

  • Last visited

Posts posted by Turokhan Legion

  1. Hi All,

    I have a build, which is mostly mesh.  I linked a few prims to it which cause issues with avatars not being able pass through the opening.  So i changed the shape type from convex hull back to prim for the entire linked object and that fixed it.

    However, when i open a door via a script on the structure, the strange invisible wall comes back and when i edit the structure and cancel, I can pass through the build again...  

    What is happening here and how can i address it?  

    Cheers

  2. Have been googling teleportation without intervention, but really doing my head in.. can't find anything, anywhere.

    I have a door, that has a co-ordinate for the user (owner or guests) to interact with, which in turns throws up the Map using llMapDestination and you have to click on teleport.. how very 90's.

    I know the star-gates do it, but am looking for a solution such that when you walk through the door of one of my products, you are teleported to the position automatically as opposed to having to touch the teleport button on the map (makes it less fun for the user)

    Any help or snippets appreciated, i can adopt the code into mine, just need the function in order to teleport the agent who will collide with the door.

     

  3. Stumbled across this while trying to google teleportation without intervention, but really doing my head in.. 

    I know the star-gates do it, but am looking for a solution such that when you walk through the door of one of my products, you are teleported to the position automatically as opposed to having to touch the teleport button on the map (makes it less fun for the user)

  4. Hi Guys,

    I am creating a tool that scans for objects and avatars etc but am struggling to overcome the limits.

    They are:

    1. Trunicating text when displaying lots of information.
    2. Changing colors of seperate lines

    Now i know this can be done on a single prim because a product called emDash currently does this. Each line shows a different color of text depending on the criteira and the text is never trunicated no matter how much data is displayed.

    Any ideas, this one is baffling me.

  5. This is interesting..

    If i select object B from A, nothing happens at B. Yet if i activate object A in the other region and quickly teleport to object B before the timed email comes in, it works.

    So it works if im next to it??? 

    Just for interest, object B doesnt belong to me nor is it a sim that i can manage. But it is linked to my systems.

    #baffled

  6. This is the method i'm using.

    Object A from sim 1 sends en email to either object B, C, D in sims 2,3,4 and so on.

    Destination objects receive the email and will perform a function.

    Problem that i have just noticed is that all the objects located in different regions, couldn't receive the email from object A, but testing those objects in the same region worked. So the email script is working for the receiver, but only inside the sim its in.

    Could it be perhaps that email scripted needs a reset every so often?

  7. Hi,

    Until now my current region is not sending llemails to objects in other sims, or the destination is not accepting it. It works if i email the objects residing in the same sim, but will not receive in another sim. 

    I use this for my inworld servers for a product i sell and is vital that this works.

    Anyone come across this before, any fix?

    i just tested in a new sim and it works, so there is an issue my my region i guess. It has been restarted too.

  8. Not working for me. heres the code if it helps

     

    //Sets / Updates the sit target moving the avatar on it if necessary.
    UpdateLinkSitTarget(integer link, vector pos, rotation rot)
    {//Using this while the object is moving may give unpredictable results.
    // llLinkSitTarget(link, pos, rot);//Set the sit target
    key user = llAvatarOnLinkSitTarget(link);
    if(user)//true if there is a user seated on the sittarget, if so update their position
    {
    vector size = llGetAgentSize(user);
    if(size)//This tests to make sure the user really exists.
    {
    integer linkNum = llGetNumberOfPrims();
    do
    {
    if(user == llGetLinkKey( linkNum ))//just checking to make sure the index is valid.
    {
    //We need to make the position and rotation local to the current prim
    list local;
    if(llGetLinkKey(link) != llGetLinkKey(1))//only need the local rot if it's not the root.
    local = llGetLinkPrimitiveParams(link, [PRIM_POS_LOCAL, PRIM_ROT_LOCAL]);
    float fAdjust = ((((0.008906 * size.z) + -0.049831) * size.z) + 0.088967) * size.z;
    llSetLinkPrimitiveParamsFast(linkNum, [
    PRIM_POS_LOCAL, ((pos + <0.0,0.0,0.4> - (llRot2Up(rot) * fAdjust)) * llList2Rot(local, 1)) + llList2Vector(local, 0),
    PRIM_ROT_LOCAL, rot * llList2Rot(local, 1)
    ]);
    jump end;//cheaper but a tad slower then return
    }
    }while( --linkNum );
    }
    else
    {//It is rare that the sit target will bork but it does happen, this can help to fix it.
    llUnSit(user);
    }
    }
    @end;
    }//Written by Strife Onizuka, size adjustment provided by Talarus Luan

    string dialog1 = "\nAdjustment";
    list menu_main = ["+Z", "-Z", "0.01", "0.05"];
    integer MenuChannel;
    float Increment;
    integer link;
    default
    {
    state_entry()
    {
    // set sit target, otherwise this will not work
    llSitTarget(<0.0, 0.0, 0.1>, ZERO_ROTATION);
    MenuChannel = llFloor(llFrand(100000000)) + 1000;
    llListen(MenuChannel, "",NULL_KEY, "");
    }
    touch_start(integer total_number)
    {
    llDialog(llDetectedKey(0), dialog1, menu_main, MenuChannel);
    }
    listen(integer channel, string name,key id, string message)
    {
    if (message == "+Z")
    {
    UpdateLinkSitTarget(LINK_THIS,<0,0,Increment>, ZERO_ROTATION);

    llDialog(id, dialog1, menu_main, MenuChannel);
    llOwnerSay(message);
    }
    if (message == "-Z")
    {
    UpdateLinkSitTarget(LINK_THIS,<0,0,-Increment>, ZERO_ROTATION);

    llDialog(id, dialog1, menu_main, MenuChannel);
    llOwnerSay(message);
    }
    if (message == "0.01")
    {
    Increment = (float)message;
    }
    if (message == "0.05")
    {
    Increment = (float)message;
    }
    }
    changed(integer change)
    {
    if (change & CHANGED_LINK)
    {
    key av = llAvatarOnSitTarget();
    if (av) // evaluated as true if key is valid and not NULL_KEY
    {
    Increment = 1;
    llDialog(av, dialog1, menu_main, MenuChannel);
    llSay(0, "Hello " + llKey2Name(av) + ", thank you for sitting down");
    }
    }
    }
    }

  9. Hi Guys,

    I have a script that populates a list of all avatars in the region im in. The problem is it is including the owner to, which i want to remove. 

    It's racking my brain and cant figure out how to remove the owner from the list after its populated.

    Heres the code:

    state_entry()
    {
    llListen(menu_channel, "", NULL_KEY, "");
    string InvenName;
    string InvenKey;
    list keys = llGetAgentList(AGENT_LIST_REGION,[]);
    integer InvenNumber = llGetListLength(keys);
    list InvenList = [];
    integer y;

    for(y = 0; y < InvenNumber; y++)
    {
    InvenName = llKey2Name(llList2String(keys,y));
    if (llStringLength(InvenName) > 24) InvenName = llGetSubString(InvenName, 0, 23);
    InvenList += [InvenName];
    gLstMnu = (gLstMnu = []) + InvenList;

    }
    }

    How do i remove the owner from the list?

    Cheers :)

  10. Hi Guys,

    I need some clarification here...
     

    1. Land object limit = 500 lets say.
    2. My object contains several prims totaling to 350 prims.
    3. Land impact says its 600 prims because it has mesh.

    Whats with the fake prim count aka land impact? i'm sorry but prim count IS prim count IMO!!

  11. i managed to get a successfull connection and am now talking between my machine and SL woop!

    Now i am faced with a new challenge! I cannot see the string i am posting, all it sends back is "Array".

    Sending from SL:

    state_entry()
    {
    string parameters = llEscapeURL("this should be posted to my db");
    http_request_id = llHTTPRequest(url,[HTTP_METHOD,"POST",HTTP_MIMETYPE,"application/x-www-form-urlencoded"],parameters);
    }

    PHP

    <?php
    // Make a MySQL Connection
    mysql_connect("host", "user", "password") or die(mysql_error());
    mysql_select_db("my_db") or die(mysql_error());

    // Insert a row of information into the table "example"
    mysql_query("INSERT INTO example
    (name) VALUES('$_POST' ) ")
    or die(mysql_error()); 

    echo "Data Inserted!";

    ?>

    SL Receiver

    key http_request_id;
     
    default
    {
        state_entry()
        {
            http_request_id = llHTTPRequest(url, [HTTP_METHOD,"GET"], "");
        }
     
        http_response(key request_id, integer status, list metadata, string body)
        {
            if (request_id == http_request_id)
            {
               
             llOwnerSay(body);
            }
        }
    }

    SL owner chat = Array :(

     

  12. Im building a site that sl will update back and forth, but before commiting to a hosting site, i wanted to get it all working on my local machine first.

    I am using wampserver and have a page that i made up.

    So i am using the following code in state entry:

    key requestid; // just to check if we're getting the result we've asked for; all scripts in the same object get the same replies

    default
    {
        touch_start(integer number)
        {
            llHTTPRequest("http://localhost/sltest",[HTTP_METHOD, "GET"],"");
        }

        http_response(key request_id, integer status, list metadata, string body)
        {
            if (request_id == requestid)
                llWhisper(0, "Web server said: " + body);
        }
    }

    That doesnt work, i tried my local ip instead of localhost, my DynDns host name and still no ping.

    Is there a way to test comms from sl to my local database?

     

  13. This function causes the script to sleep for 0.2 seconds. 

    You could try a listen command in each wall that will change texture from one llSay command i.e a button.

    The better less laggy methid would be llLinkMessage, however this would only work well untill you start de-linking parts.

    Both options have their pros and cons, if you use the llListen, use high negative numbers to reduce the amount of lag.

×
×
  • Create New...