Jump to content

Altier Verwood

Resident
  • Posts

    90
  • Joined

  • Last visited

Everything posted by Altier Verwood

  1. Thank you for the reply, I was indeed missing that. sorry I was frustrated, I didn't know what to goggle to find the answer.
  2. So found out what i was missing. it's this. llOwnerSay((string)llGetLocalPos()); instead of this. llOwnerSay(llGetLocalRot());
  3. Hello forum, I have a simple script I'm making here and it is kind of kicking my butt. The script is meant to do one thing, move an attached object between two preset positions and rotations, at the bottom I have it commented, there is an aim and a hold, and when touched the object should move. the problem I have run into. is that it moves relative to sim rotation, and I have been trying for hours to fix it. any help here would be appreciated. rotation rot_xyzq; rotation rot_xyza; default { state_entry() { vector xyz_angles = <65.35001, 84.95001, 294.54999>; // This is to define a 1 degree change vector angles_in_radians = xyz_angles*DEG_TO_RAD; // Change to Radians rot_xyzq = llEuler2Rot(angles_in_radians); // Change to a Rotation } touch_start(integer total_number) { llSetLocalRot(llGetLocalRot()*rot_xyzq); //Do the Rotation... llSetPos(<-0.04494, -0.62486, -0.03175>); state hold; } } state hold { state_entry() { vector xyz_angles2 = <270.00000, 4.60001, 90.79999>; // This is to define a 1 degree change vector angles_in_radians2 = xyz_angles2*DEG_TO_RAD; // Change to Radians rot_xyza = llEuler2Rot(angles_in_radians2); // Change to a Rotation } touch_start(integer total_number) { llSetLocalRot(llGetLocalRot()*rot_xyza); //Do the Rotation... llSetPos(<0.63130, -0.06893, -0.01683>); state default; } } //aim //pos <-0.04494, -0.62486, -0.03175> //rot <65.35001, 84.95001, 294.54999> //Hold //pos <0.63130, -0.06893, -0.01683> //rot <270.00000, 4.60001, 90.79999>
  4. Turns out I ended up using llregionsayto thank you for your reply.
  5. Hello forums, I feel like I come asking so many questions, I have one more. I have an object, with some child prims on it named "Hangar" and i have another script that uses to delete the docked ship, but I've run into a problem, that it only detects the name of the root prim and not the child it's colliding with. am i missing something? this script is in the colliding prim it's just not detecting the name of the child prim. default { collision_start(integer hit) { //from here llGetObjectDetails(id,([OBJECT_NAME])); if(id == "Hangar") { llDie(); } // to here } }
  6. Geeze, I could have sworn I tried that already, it worked, wow... I guess no coding can be done after 2 AM. thank you for the reply.
  7. Hello forums, I have a simple collision detection script looking for. collision_start(integer hit) { //from here string name = llDetectedName(0); if(llGetSubString(name, 0, 12) == "CG Col-Viper") { Strike_count = Strike_count+1; llWhisper(0,"Viper docked repairs underway"); } // to here And I have an object that collides with it named. CG Col-Viper (Mk V) I do not understand, nothing happens, unless it is named exactly CG Col-Viper and have the object name exactly the name in the brackets, not the length of my substring? I'm really lost here.
  8. Hello again forum, I have another question I wasn't able to find an answer to, I'm writing a script that will in theory, slowly move a child link in a random direction then reset slowly back to the original position. but I have run into two problems, first is the movement is not slow it just snaps to the location and the second problem, is I can't get it to save the original position to move back to, instead it just keeps moving farther away. any help would be greatly appreciated. integer k; vector pos; rotation rot; vector opos; float ds = 1; //debris size SMALLER float rs = 2; //debris random size BIGGER default { state_entry() { llSetTimerEvent(2.0); opos= llGetPos(); } timer() { for(k=0;k<rs;++k) { llSleep(.1); pos = llGetLocalPos(); llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_POSITION, pos+<(llFrand(rs))-ds,(llFrand(rs))-ds,(llFrand(rs))-ds>*rot]); //llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_POSITION, opos*rot]); } for(k=0;k<rs;++k) { llSleep(.1); pos = llGetLocalPos(); llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_POSITION, opos*rot]); } } }
  9. Thank you for your reply, wow, i have no idea what changed, but it's working now, thank you for your reply!
  10. Hello forums, I have two scripts that talk back and forth at each other, but I can't get the second script to work. Here is the message sent by the first script This script works, it just shouts a region say when touched nameTag = llGetSubString(llGetObjectName(), 0, 6); llRegionSay(-83951,nameTag); llOwnerSay(nameTag); in the second script, the get substring in the listen doesn't seem to work, if i remove that part the script works and it hears the region say. state_entry() { llListen(-83951, "", "", ""); nameTag = llGetSubString(llGetObjectName(), 0, 6); } listen(integer chn, string nam, key id, string msg) { if (chn == -83951 && llGetSubString(msg, 0, 6) == nameTag)
  11. Hey there thank you for the reply, its hard to explain in greater detail, but I will try, my HP script sets the first physics engine, to FALSE turning it off, and turns on another identical engine with slightly slow turning and speed, script by setting it to TRUE.
  12. Hello LSL scripters, I have a vehicle with two engine scripts in it, there is a meter inside the object in another script that controls the HP of the vehicle, when it reaches 50% I have it so it does this llSetScriptState(engineD,TRUE); llSetScriptState(engine,FALSE); But when that happens, and you next sit on the vehicle to drive it, the ship just falls to the ground and is uncontrol able. is this a problem with SL and it's not possible to do, or is it my vehicle script?
  13. Okay not sure how I fixed it after much testing apparently its something wrong with the bind pose data, i had to use this skeleton and only this skeleton. https://blog.machinimatrix.org/fitted_mesh_survival_kit/
  14. So nothing wrong with it in blender looks fine works fine, just on upload it looks like this, all the volume is gone from it, no idea what's wrong, I hate bento so much its so confusing. I'm not new to rigging in SL why is bento so broken? https://gyazo.com/30212f6990c4bbd83e2108da91808995
  15. That did it! thank you all so much for your help You are so amazing!
  16. Why is it always a semicolon XD Thank you Rolig, saving my butt once again.
  17. I think I am still doing something wrong, it's still taking commands regardless of the sub string. here is the current code. state_entry() { llListen(-HIDDEN, "", "", ""); nameTag = llGetSubString(llGetObjectName(), 0, 5); //llWhisper(0,damage_type +" Remaining Rounds "+(string)ammo_count); } listen(integer chn, string nam, key id, string msg) { if (msg == resupply_command && chn == -HIDDEN&& llGetSubString(nam, 0, 5) == nameTag); { llSleep(1); //ammo_storeage = ammo_storeage_MAX; ammo_count = ammo_count_MAX ; llWhisper(0,damage_type +" Remaining Rounds "+(string)ammo_count); } }
  18. Oh, could you elaborate a bit on that one? I've never done something like that.
  19. Oh man this looks like what I need, is there a way to make it automatically get the name from the object ? If llGetSubString(llgetobjectname(), 0, 5) == "CG REP") kind of thing?
  20. Hello SL scripting people me again! I have a question about a listen check, I'm trying a dozy of a thing and I want to know if it is even possible. first off is the script. I want to take this script a step farther. and have it check the name of the object. the name is this CG REP Z-95 3.6 all my objects match this naming convention with a 3 letter tag just after CG, I want to make it so that resupply checks that REP or IMP or SEP etc and only then will it accept the command. but I can't figure out how to do a listen script so complex like that. would it be a while loop? I need a lot of help on this one. string resupply_command="R1"; listen(integer chn, string nam, key id, string msg) { if (msg == resupply_command && chn== -HIDDEN) { llSleep(1); //ammo_storeage = ammo_storeage_MAX; ammo_count = ammo_count_MAX ; llWhisper(0,damage_type +" Remaining Rounds "+(string)ammo_count); } }
  21. I tried this t hough I have a collision function in the root prim, strikes to t he child prim does n ot p ass the collision to it, I suppose I will have to try with link message.
  22. Thank you for the reply. but could you give an example o f how the pass command is used? I have a script in a child prim that I want to pass the collision with that prim to the root prim.
  23. Hey there peoples, would you please help explain the llpasscollision command? the wiki is SO BAD at explaining it. http://wiki.secondlife.com/wiki/LlPassCollisions it doesn't tell where t his is used. I have a script in the root prim that is waiting for collision by various objects, but if it hits another prim it won't pass the collision.
×
×
  • Create New...