Advertisement
Guest User

Object: Fishing Pond (To Detect Fishing Rod & Enable fish spawn script)

a guest
Sep 28th, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. integer out  = FALSE;
  2. integer rod_equip = FALSE;
  3.  
  4. key rod_owner;    // 3. Since you are passing messages over several events we need to store the rod owner key in a global variable.
  5.  
  6. //time 15 seconds delay for it to be visible
  7.  
  8.  
  9.    
  10. default
  11. {
  12.      state_entry()
  13.     {
  14.         llListen(-11223,"Fishing Rod","","");
  15.        
  16.                          
  17.     }
  18.     //listen for fishing rod is equip
  19.     listen(integer channel, string what, key who, string msg)
  20.     {        
  21.  
  22.     list tmp = llParseString2List(msg,["_"],[]);   // 4. We parse the message sent from the rod to the pond. The message will be split into elements in a list at the separator.  
  23.    
  24.     string cmd = llList2String(tmp,0); // 5. The value to the left of the separator will become the first element in the list.  i,e "Equip".   Note that list elements begin at 0.
  25.    
  26.     string val = llList2String(tmp,1); // 6. The value to the right of the separator will become the second element in the list.    i,e The rod owner key.
  27.        
  28.             if(cmd=="Equip" ) // 7. Note this changes to if(cmd=="Equip" ) because we are checking the parsed message.
  29.             {
  30.                
  31.                rod_equip = TRUE;
  32.                rod_owner = (key)ref;  // 8. We need to store this in the global variable container so we can send it on to the spawner.
  33.                return;
  34.             }
  35.             else
  36.             {            
  37.                 rod_equip = FALSE;
  38.                 return;
  39.             }
  40.  
  41.  
  42.                        
  43.     }
  44.    
  45.     touch_start(integer total_number)
  46.     {
  47.         //ask for the fishing rod        
  48.         llSay(-11223,"CheckRod");        
  49.         if(out == TRUE && rod_equip == TRUE)
  50.         {
  51.             llOwnerSay("Toggle Fish");
  52.             out = FALSE;      
  53.             llSay(-11223,"off_"+ rod_owner);          
  54.             return;
  55.         }
  56.        
  57.         else if(out == FALSE && rod_equip == TRUE)
  58.         {
  59.             out = !out;
  60.             llSay(-11223,"on_"+ rod_owner);  //9. We send the message on to the spawners and whichever spawner with an owner key that matches the rod owner key will spawn fish.
  61.             return;
  62.         }
  63.                                      
  64.     }      
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement