targeting.MKI

By: bdhtrn on Sep 20th, 2011  |  syntax: Linden Scripting  |  size: 0.75 KB  |  hits: 123  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. float scanrange=20;
  2. list tgtkeys;
  3.  
  4. GOTCHASUCKER(key target){
  5.         // [endless possibilities]
  6.         llOwnerSay((string)target);
  7. }
  8.  
  9. default{
  10.         state_entry(){
  11.                 llListen(19,"",llGetOwner(),"");
  12.         }
  13.         touch_start(integer total_number){
  14.                 tgtkeys=[];
  15.                 llSensor("","",AGENT,scanrange,PI);
  16.         }
  17.         sensor(integer num){
  18.                 integer i;
  19.                 for(i=0;i<num;i++){
  20.                         llOwnerSay((string)(i+1)+"-"+llDetectedName(i));
  21.                         tgtkeys += llDetectedKey(i);
  22.                 }
  23.         }
  24.         listen(integer chan,string who,key id,string msg){
  25.                 key target;
  26.                 integer tgtindex = (integer)msg;
  27.                 integer listsize = llGetListLength(tgtkeys);
  28.                 if(tgtindex>0 && tgtindex<=listsize){
  29.                         target = llList2Key(tgtkeys,tgtindex-1);
  30.                         GOTCHASUCKER(target);
  31.                 }
  32.                 else
  33.                         llOwnerSay("not a valid index");
  34.         }
  35. }