Jump to content

pixstudio

Resident
  • Content Count

    30
  • Joined

  • Last visited

Community Reputation

3 Neutral

About pixstudio

  • Rank
    Advanced Member
  1. tnx Callum gdatalines1 is my way to pass many data to the obj , but the issue was in gdatalines2 with the channel integer..........the strange thing , if the integer for local is 0 ( and this explain the uuid passed in local ) why the item that recive info collect correctly the info ( integer channel 00358 ) making some modify on the script , solved in different mode and now work with out local chat
  2. workin on script for pass data from hud to object i found this strange issue the script accept the data correctly and trasmit to object........ but say in local the uuid of texture sent, when the script have an integer channel different from local here the code list gDataLines1; list gDataLines2; integer ch1; default { state_entry() { } link_message(integer sender_num, integer num, string msg, key id) { if (num == -1) { gDataLines1 += msg; key A=(llList2String(gDataLines1,0)); llSetTexture(A, ALL_SIDES); } else if (num == -6) { gDataLines2 += msg; string B=(llList2String(gDataLines2,0)); } } touch_start(integer tn) { key A=(llList2String(gDataLines1,0)); string B=(llList2String(gDataLines2,0)); integer ch1 =((integer) B); if (A != NULL_KEY) if (ch1 == ch1) { llSay((integer)B,A); } } }
  3. sure Rolig uuid must be unic to avoid any crosstalk with other scripted item in region i use the example above only for an advice if is possible to use any random info for generate uuid thinking on your message , give me an idea to use owner uuid for generate uuid + a suffix in obj description adding "-" in the integer obtained in this way example integer offset = (integer) (llGetObjectDesc() ); integer ch = (integer) ("-" + llGetSubString(llGetOwner(),0,6) + offset);
  4. thanks Innula , i found the error , in reciver i forget to do llgetsubstring (msg,1,-1) my fault ........ but every error give a lesson to undestand and remember for improving ^ _^ another question channel used for listen have an uuid ther is a way for create integer used for channel using an iternal string , and something write in description example offset= 12 obj description = red12 ( letter string give number 0 ) integer desc = (integer) (llGetObjectDesc() ); integer ch = (desc + offset); not sure that work the final channel must be in that example 01212
  5. you are correct Innula with no specific info noone can help so for the transmiter if (llGetSubString (msg, 0, 0) == "A") { string riga00 =(llGetSubString(msg,1,-1)); llMessageLinked(LINK_THIS,-1,"A"+(string)riga00,""); llSay(0,"A"+(string)riga00); for the receiver link_message(integer sender_num, integer num, string msg, key id) { if (llGetSubString (msg, 0, 0) == "A") { llSay(0,"primocheck"+msg);//check string A1 =(llGetSubString(msg,1,-1)); key A=A1; llSay(0,"secondocheck"+A1); //check } i think the problem is relative to touch event, beacuse the two check work correctly, but when i press a button i recive error and llSay of button show me only A
  6. im tryng to pass data from a card reader to an hud for texture changer the card reader work the first step of reciver lllisten work but when i push a button in the hud i recive only the first letter A i convert key A =string A1
  7. hi i have a little problem with this comand..... i have created a configurator the configurator read notecard and send to hud the data (this part work because llSay show me the correct data trasfer) but when i press any button on hud i recive error and the llSay check show me only the first letter of the message this part is correct? link_message(integer sender_num, integer num, string msg, key id) { if (llGetSubString (msg, 0, 1) == "A") { //A1=message -A string A1 =(llGetSubString(msg,1,-1)); llSay(0,"A"+msg); }
  8. solved in this way........ mabe non the best and easy but work wll for my purpose vector relativePosOffset2 = <-0,0.5, -2.2>; vector relativeVel2 = <0.0, 0.0, 0.0>; rotation relativeRot2 = <0.0, 0.0, 0.0, 0.707107>; integer startParam2 = 10; vector myPos2 = llGetPos(); rotation myRot2 = llGetRot(); vector rezPos2 = myPos2+relativePosOffset2*myRot2; vector rezVel2 = relativeVel2*myRot2; rotation rezRot2 = relativeRot2*myRot2; llRezObject(itemx, rezPos2, rezVel2, rezRot2, startParam2);
  9. about rez object if i have an hud for rezz an object what is the way for detect avatar direction for rez object always in front of it
  10. list obj; integer dialog_channel_listener; key target_key; default { on_rez(integer start_param) { llResetScript(); } touch_start(integer total_number) { llSetTimerEvent(0.0); llSensor("", NULL_KEY,ACTIVE|PASSIVE, 100, PI); } sensor(integer total_number) { integer current_id; string output_names = "Choose a target:\n"; list output_buttons = []; obj = []; for (current_id == 0; current_id < total_number && current_id < 11; current_id++) { obj += llDetectedKey(current_id); output_names += (string)current_id + " - " + llDetectedName(current_id) + "\n"; output_buttons += (string)current_id; } integer dialog_channel_num = -1 * (100000000 + (integer)llFrand(899999999)); dialog_channel_listener = llListen(dialog_channel_num, "", llGetOwner(), ""); llDialog(llGetOwner(), output_names, output_buttons, dialog_channel_num); } listen(integer channel, string name, key id, string message) { target_key = llList2Key(obj, (integer)message); llListenRemove(dialog_channel_listener); llSay (0,target_key); llSetTimerEvent(0.2); } } at the moment the dialog show only 10 item found , my purpose is to filter the list for finding only item of a specific creator
  11. good day i have a small question for sensor when i made the research and the sensor found item there is a way for select only item with a specific uuid creator key i looked for llGetObjectDetail but i dont understand the way for use the parameter for filtering item
  12. object_rez event work if the script was in a linked set?
  13. you must create real button in the hud , in every button put the script, that telling the message to the listener transmitter integer ch =-25; key msg= "the txt of your message"; llSay (ch, msg);
×
×
  • Create New...