Jump to content

sophy7777

Resident
  • Posts

    56
  • Joined

  • Last visited

Posts posted by sophy7777

  1. Heya~ 

    im with the amazing team at Adorabits'n bobs a custom well order company. not only do we do meshing, rigging, texturing, scripting, animation and 2d design! we do it with a smile!we aim to help people get what they want into secondlife, for personal use or for selling on and making you a linden millionaire!  we know that some skills are hard to learn, but were comited not only to fill that gap but to help with advice and tips too! we will even happily teach you in what ever skill you desire (that we know, we havent master the skill of taking over the world yet.... sorry).

    we know that pricing can sometimes be a issue and we try work with people as much as we can! our pricing is based on hours needed for the project. we do a base rate of 7500L per hour. we try to be effient and do orders as quickly as posible, we give a estimated quote at the start of the project, this price can change but we are good at hitting our target or bellow target time! we do also offer payment plans and other ways so its not a huge lump for anyone! 

    heres our website (does need updating but ive been procastinating >.> ) with some examples of our work and how much time would take for examples 

    https://www.adorabitsnbobs.com/ ~ 

    contact Sophy7777 Resident for any info or to make a order or even just to say hi!! 

  2. On 6/29/2023 at 12:18 PM, elleevelyn said:

    adding more to the conversation

    when the lists are sorted and where each list contains unique elements/items then we can find all matches in O(n).  Example:
     

    list a = ["b","d","e", "y"];
    list b = ["a","b","c","d","y", "z"];
    
    integer alen = llGetListLength(a);
    integer blen = llGetListLength(b);
    integer aptr;
    integer bptr;
    
    while ((aptr < alen) & (bptr < blen))
    {
       string astr = llList2String(a, aptr);
       string bstr = llList2String(b, bptr);
       llOwnerSay(astr + " " + bstr);
       if (astr == bstr)
       {
          llOwnerSay(astr + " is in both lists");
          ++aptr;
          ++bptr;  
       }
       else if (astr == llList2String(llListSort([astr, bstr], 1, TRUE), 0))
          ++aptr;
       else
          ++bptr;    
    }

    which leads to the following moan :)

    why LSL doesn't have string comparison operators < > baffles me

    this here LSL Linden please: astr < bstr

     

     

     

    On 6/28/2023 at 3:19 PM, Quistess Alpha said:

    You might have wanted to clarify that '~' means '-1!=' in this context.

    llList2List(b,i,i); would be more appropriate, as it generalizes to non-string types. (an list instantiation is very slow in LSL. . .)

    --

    On the topic of loops, I'm rather fond of while(~--lengthOfList) for list comprehension (looping through every element of a list) in LSL. When you need to loop through 2 different lists, you usually have to nest the loops:

    list a = ["A","b","c","D"];
    list b = ["A","B","C","D","E","F"];
    
    integer i = llGetListLength(a);
    integer j = llGetListLength(b);
    
    while(~--i)
    {   string item_a = llList2String(a,i);
        while(~--j)
        {   string item_b = llList2String(b,j);
            // do something with both item_a and item_b:
            if(item_a==item_b)
            {   llOwnerSay(item_a+" is the same as "+item_b);
            }else
            {   llOwnerSay(item_a+" is different than "+item_b);
            }
        }
    }

    Elleevelyn's solution cuts out one of the loops by using llListFindList to search for the matching element (if there is one) in the other list, rather than checking every element in the list explicitly in LSL.

     

    On 6/28/2023 at 8:20 AM, elleevelyn said:

    the basics

    list a = ["a","b","c","d"];
    list b = ["b","c"];
    
    // loop thru the shortest list where possible
    // FOR i = 0 TO 1 is more efficient (takes less time) than FOR i = 0 TO 3
    integer len = llGetListLength(b);
    integer i;
    for (i = 0; i < len; ++i)
    {
       if (~ListFindList(a, [llList2String(b, i)] )
       {  
          // ... list b element is in list a ...
       }
    }

     

    you guys are amazing this really helped me understand it perfectly thanks so much ❤️ 

  3. how would you go about this, im new to loops and ive tried 

    list Likers = ["bob", "sophy","tim" , "jess", "cutie"];
    list Your_Likes =["meep","tim","sophy"];
    string List_1;
    string List_2;
    default
    {
        state_entry()
        {
           
            integer i = 0;
            integer end = llGetListLength(Likers);
            List_2 =llList2String(Your_Likes, i) ;
            List_1 = llList2String(Likers, i);
            for(; i<end; ++i)
           
               if (List_1 == List_2)
               {
                     llSay(0,List_2); 
               }
              else 
            List_2 =llList2String(Your_Likes, i) ;
            List_1 = llList2String(Likers, i);
            
                }
            }
        i thought that loop would carry on till end of likers list but not seeming to do as i thought mabey i need to re read loops page

     

  4. i want to put keys or usernames  in a list and search the lists for matching keys so 

    list A = ["bob","jim","terry"];

    list B =["bob","susand","gary"];

    if  a name matches it will do something but im struggling with making a conection to how to do it ive looked over list on wiki the closest i found was ListCompare but that in my understanding just returns if the lists are the equal lenth. then theres ListXnotY but that shows what doesnt match and then listUnique that would remove the matching info. any help would be apreciated! 

    thanks

     

     

  5. the title is proberly confusing, im making a kisser but i wanted to let people make there own messages for when there kissed. so i tried working with lltextbox, i want to be able for them to add in the display name of themself and the person who kissed them. i have the varibles saved so for person touching i went for Toucher and own name is OwnerDname. but im struggling to take the string and replace the string with the varible. does that make sence?

     

  6. ive been looking around and cant find out how to make a timer with a dialog menu where you can add time or remove time. i found a RLV script for like locked item but its to complex for me to understand. as its not my script i dont wish to share it, but it seems to make the time remaining into a float, but i cant find anything on the SL wiki about floats being timers can anyone point me in the right direction?

  7. what i understand is that its because the mystery of not knowing what you are paying for, so what about skill gaming like no devil? why isnt that being effected. are subscription boxes aloud? group gift/group fees as we dont know what creators are going to bring out for a group gift either! but we pay to suport them and get the future group gifts! the thing is i know im from the uk but were adults we should be able to do what we want with our money i get restricting children, i even get making strict rules for gacha machines like has to show the rate of a rare drop kinda thing its just so sudden and abrupt its very baffling as it doesnt cover these other things either! 

    • Like 1
  8. i have a mesh face spa mask, was hopiong to make a few spa facemasks i have the mesh, and i tried to rig to the provided Avistar head. but atlas's it didn't work well on my mesh head (catwa) is there a way to acess 3D devi kits for heads? ive not seen them before just wondering if anyone has any ideas? 

  9. i want to make a clothing item that would bind the legs and arms to the body, but i wanted to make its own AO for that item is there a way to script it inside the clothing so when you attach it you can use the animation to walk ect?

  10.  im trying to make a menu for name tags, i have the alphabet in textures so 29 textures in all. this ornignaly was a 22 holding script that i tried to add a menu too, but hasnt really gone to plan. could anyone asist me in where im going wrong here? i thought adding another list and following the flow of the script would result in another menu added. i may be missing something ovious here so please excuse me if i have! when i try to click my modded script it tells me this;

     

    [18:51] Object [script:menu_textute_change] Script run-time error
    [18:51] Stack-Heap Collision

     

     

    heres my modded script

    list MENU1 = [];
    list MENU2 = [];
    list MENU3 = [];
    integer lisn;
    integer MENU_CHANNEL = 1230;
     
    // opens menu channel and displays dialog
    Dialog(key id, list menu)
    {
        llListenRemove(lisn);
        lisn = llListen(MENU_CHANNEL, "", NULL_KEY, "");
        llDialog(id, "Select one object below: ", menu, MENU_CHANNEL);
    }
     
    default
    {
        on_rez(integer num)
        {
            llResetScript();
        }
      
        listen(integer channel, string name, key id, string message) 
        {
            if (channel == MENU_CHANNEL)
            {
                llListenRemove(lisn);  
                if (message == ">>")
                {
                    Dialog(id, MENU1);
                }
                else if (message == ">>")
                {
                    Dialog(id, MENU2);
                }        
                else if (message == "<<")                    
                {
                    Dialog(id, MENU3);
                    }        
                else if (message == "<<")                    
                {
                     
                    llSetTexture(message, ALL_SIDES); // display the texture from menu selection 
     
                }      
            }
        }
         touch_start(integer total_number)
        {
            integer i = 0;
            MENU1 = [];
            MENU2 = [];
            MENU3 = [];
            // count the textures in the prim to see if we need pages
            integer c = llGetInventoryNumber(INVENTORY_TEXTURE);
            if (c <= 12)
            {
                for (; i < c; ++i)
                    MENU1 += llGetInventoryName(INVENTORY_TEXTURE, i);
            }
            else
            {        
                for (; i < 11; ++i)
                    MENU1 += llGetInventoryName(INVENTORY_TEXTURE, i);
                for (; 12 <22; ++i)
                    MENU2 +=  llGetInventoryName(INVENTORY_TEXTURE, i);
                      MENU2 += ">>";
                                            MENU3 += "<<";
                if(c > 34)
                                c = 34;
                for (; i < c; ++i)
                    MENU3 += llGetInventoryName(INVENTORY_TEXTURE, i); 
                                MENU2 += ">>";
                                            MENU3 += "<<";   
                                                                   
            }
            // display the dialog 
            Dialog(llDetectedKey(0), MENU1);
        }  
    }

     

     

     

    heres the oringinal 

    list MENU1 = [];
    list MENU2 = [];
    list MENU3 = [];
    integer lisn;
    integer MENU_CHANNEL = 1230;
     
    // opens menu channel and displays dialog
    Dialog(key id, list menu)
    {
        llListenRemove(lisn);
        lisn = llListen(MENU_CHANNEL, "", NULL_KEY, "");
        llDialog(id, "Select one object below: ", menu, MENU_CHANNEL);
    }
     
    default
    {
        on_rez(integer num)
        {
            llResetScript();
        }
      
        listen(integer channel, string name, key id, string message) 
        {
            if (channel == MENU_CHANNEL)
            {
                llListenRemove(lisn);  
                if (message == ">>")
                {
                    Dialog(id, MENU2);
                }
                else if (message == ">>")
                {
                    Dialog(id, MENU1);
                }        
                else if (message == "<<")                    
                {
                    Dialog(id, MENU1);
                }        
                else
                {
                    
                    llSetTexture(message, ALL_SIDES); // display the texture from menu selection 
     
                }      
            }
        }
         touch_start(integer total_number)
        {
            integer i = 0;
            MENU1 = [];
            MENU2 = [];
            MENU3 = [];
            // count the textures in the prim to see if we need pages
            integer c = llGetInventoryNumber(INVENTORY_TEXTURE);
            if (c <= 12)
            {
                for (; i < c; ++i)
                    MENU1 += llGetInventoryName(INVENTORY_TEXTURE, i);
            }
            else
            {        
                for (; i < 11; ++i)
                    MENU1 += llGetInventoryName(INVENTORY_TEXTURE, i);
                if(c > 22)
                                c = 22;
                for (; i < c; ++i)
                    MENU2 += llGetInventoryName(INVENTORY_TEXTURE, i); 
                                MENU1 += ">>";
                                            MENU2 += ">>";
                                            for (; i < c; ++i)
                    MENU2 += llGetInventoryName(INVENTORY_TEXTURE, i); 
                                MENU1 += ">>";
                                            MENU2 += ">>";                           
            }
            // display the dialog 
            Dialog(llDetectedKey(0), MENU1);
        }  
    }

     

     

    thanks in advance anyone who helps! 

  11. Hey all, first of all hope your well!

    im having a lil bother scripting a toy car. i cant seem to find a script that when attached it plays a idle animation but when walking plays another. im thinking attached is the best way? im not very sure im not a scripted at all. i have tried some car scripts but couldnt find any instructions or easy to use ones so if anyone knows of any simpler ones please link 

     

    thanks all and stay safe ❤️ 

    included a picture to help explain what im scripting! 

     

    7690a2cf59ee6dd43538fe7a9cfdc026-png.jpg 

  12. Hey all!

    im a designer and creator of mesh in secondlife but im HOPELESS at ads!! was wondering if i could hire someone to help me with this side of things!it would be paid either a % of sales or a fixed rate that weve agreed upon! please get back to me here or inworld thanks ❤️ 

  13. Heya all! 

    me and a friend are hoping to start a new milking system but lack the skills script wise, we are hoping to either hire or include as a partnership of the project so they would get 1/3rd of all profits, what ever suited the scripter best! 

    The system at hand we hope to have these qualities; 

    1) to have a hucow HUD, system that shows milk levels rising

    2) change in shape/mesh attachment to show milk collecting in urrmmm desired areas (trying to keep it pg here >.>)  

    3) to have a owner system that would connect with the hucow version to show stats and be able to claim ownership, also able to boost hucows 

    4) be able to script compatible furniture for milking and items to store milk. 

    please contact

    sophy7777 Resident in world or reply here 

×
×
  • Create New...