Jump to content

Darkie Minotaur

Resident
  • Posts

    1,663
  • Joined

  • Last visited

Everything posted by Darkie Minotaur

  1. don Berithos wrote: When they see there numbers falling then maybe but not likely will they address problems , lol - that's what the numbers have been doing for quite some time But a nice grieving posting apart from this slip
  2. One thing you could try is to ask the vendor/creator to add a message_linked interface or a listen interface to activate the script that you could then use. That should be simple to add.
  3. Communication needs two sides: One sending a message and one receiving it. If I understand you correctly, the receiving side would be a no-mod script - so sending the script a message will only have an effect if this script listens e.g. on the channel on which your saying script says something and if it knows what to do on reveiving a certain message. If you don't have such an 'API' for your no-mod script, I'm afraid, you can't really send it a message.
  4. As far as I understand the situation, the customer clicks the vendor to set some options. If you want to trigger a ayment, I'm afraid, you have to set the click action (by using llSetClickAction) so the customer gets the payment dialog on the next left click (of course you can tell them to do so in chat or IM) or they have to right click to get the pie menue (which isn't a pie in v2 anymore).
  5. Simply pass post you NC here - the reason it doesn't work got to be in there. Apart from that, I would read the list once, too and then randomize the list. Since I'm lazy, I would just use llListRandomize
  6. Sorry - I forgot a tiny \n in my code list my_list = llParseStringKeepNulls(message_body,["\\n"],[]);integer length = llGetListLength(my_list);integer index; do llMessageLinked(LINK_THIS,DISPLAY_STRING,llList2String(my_list,index), (string)index);while(length>++index); But to avoud misunderstandings: In you message you have "\n" not a carriage return or a iine feed of any kind? At least that's what you wrote in your first message. I also asume that you send mails from an external source - that means, the mail would look something like: abc\nabc\nabc In this case, the aboce code works. If you send it from an inside source, it won't work since the \n will have gotten 'translated' - in this case in the code you would have to have an \n instead of an \\n That's why Rolig's code doesn't work - it#s looking for a 'tanslated' \n - not just the string.
  7. If you need the separate lines, I would read lines into the list and not words list my_list = llParseStringKeepNulls(message_body,["\n"],[]);integer length = llGetListLength(my_list);integer index; do llMessageLinked(LINK_THIS,DISPLAY_STRING,llList2String(my_list,index), (string)index);while(length>++index);
  8. Yeah - could be fun for biginners. Still a bit to go to reach the standard of the 3 green eggs - but it looks promising
  9. You're question is a bit cryptic - I will nonetheless try to answer: You're talking of a source string - I can only guess you're referring to the variable str in your function. This omnious source string in your tests is: Info for <date> and you want to replace the <date> bit by a different string - in your example: 2011-04-22. If these assumptions are right, you have give most of the answer already: you are parsing the string into a lit - and <date> defines the separtor of the list - plus: empty entries are ignored by the function you are using. So, all you got to do is keep the nulls: myReplaceString (string str, string pat, string rep) { llSay(0, llDumpList2String(llParseStringKeepNulls(str, [pat], []), rep)); }
  10. you should do it the other way round, Cienna: Makke up your mind how you ideally would want to have your auction and then ask if this is possible. I would guess most types of auctions are possible in one or the other way in SL
  11. You should specify your question a little more - as you see frm the answers, approaches can differ a lot on what you are getting paid for/pay for - I don't think it makes much sense to try to reply to such a general question.
  12. I don't think, asking to join them is part of the Private Forum concept. Either your current role qualifies you or it doesn't - like with the Off Topic - forum: If you aren't logged in, you don't qualify - and you don't even know it's there.
  13. Hallo Lunagin, für ein neues Thema solltest du auch einen euen Thread öffnen.
  14. Well, there is - but you will have to loop through your list of prims. A call to llSetLinkTexture can only take exactly one prim or one of the flags - not a list of link numbers.
  15. There re several things you can use to brighten something up glow full bright point light plus you can use particles. I'm sure I've forgotten some things. Just use llSetPrimitiveParams to play with the parameters.
  16. I'm not sure - but something must have gone wrong - I just tried it and it worked.
  17. are the boxes within whisper range of the control box?
  18. let's keep it very sipmle. First we have te controller box. one opponent clicks it - it tells the boxes the key - second opponent, it tells the other boxes the key. all the very simple controller box needs is: default{ touch_end(integer total_number) { llWhisper(-7545676, (string)llDetectedKey(0)); }} For the boxes, the code could look something like this: key opponent;default{ state_entry() { llListen(-7545676,"","",""); } listen(integer channel, string name, key id, string m) { if (channel == -7545676) { if ((key)m != llGetOwner()) { opponent = (key)m; llListen(0,"",opponent,""); } } else if (channel == 0) { if (m=="delete")llDie(); } }} I got it right - the approach is a bit different than that of Void - but there are many ways to skin a cat - even though Void's cats are much more cleanely and very much more efficiently skinned.
  19. it may be that I jumped to the hasty conclusion that there are more than 2 players and you don't know before hand who'll be battling whom
  20. *runs to get one of the boxes from the marketplace and slams it with the biggest sledgehammer he could find*
  21. I think I got it - the battleship comparison made the bells ring - I hope two player meet in an arena to 'fight' they put out their (let's call them) boxes they start to talk in turns - if they happen to use one of the 'killer' words of one of the opponent's boxes, it vanishes So, technically, as soon as the two opponents enter the arena, it's known who the person a box has to listen to is. There are many ways to do it. Here is just one scenario: the opponents put out their boxes in a certain area when they have finished, they 'register' with 'the battle system' - this could be: they click on a box that's the controller. the controller tells the boxes the keys of the avatars that have touched it - for a given box one is the owner - it remembers the other and listens to this one I hope this helps you to point you in the right direction - as I said - there are many ways in which you could do it. Basically you need a situation in which the boxes learn who the opponent is, so they can listen to them.
  22. I'm not sure I'm getting the gist of the game. But as fa as I understand: there is an undefined number of potential players - all of them have three boxes all of the boxes listen to some color code on which they die if the players meet in a certain area, they are randomly assigned an opponent without them knowing it - let's say: players A - e are in the area; A and B are assigned as opponents. Now the boxes of A (blue, green and red) listen to B only and vice versa is that right?
  23. I think I understand. Who or what does know that they are playing against each other?
  24. If I understand you correctly, you want the object A has to listen to B - right? If we take the old script: default{ state_entry() { llListen(0,"",llGetOwner(),""); } listen(integer channel, string name, key id, string m) { if (llSubStringIndex(llToLower(m), "delete") > -1) llDie(); }} You would want to react to something a specific person says by: listening to a specific person - which you ctually do by havin llGetOwner() in the listen function: llListen(0,"",llGetOwner(),"") or checking inside the listen event listen(integer channel, string name, key id, string m) { if(name == "my oponent") { if (llSubStringIndex(llToLower(m), "delete") > -1) llDie(); } } The problem I guess is, how do I get the script to know who the opponent is, but that depends on which game we are talking about - there are many potential ways.
  25. There is no LSL function to set the busy mode - you can only get it - ust as you would expect from looking at the general policy of which functions are available in LSL and which aren't.
×
×
  • Create New...