Jump to content

Halbert Bienenstich

Resident
  • Posts

    8
  • Joined

  • Last visited

Reputation

0 Neutral

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I think this is one time that Sales and Marketing at Linden Labs needs to step in and overrule this decision. That's sad too, given that I'm a real life engineer. Someone made the C# decision based on what was convienent for engineering to implement given that its probably the same language the game engine is probably designed in. But from the business prespective, its absolutely the wrong decision. Java should be considered mandatory while C# is a nice to have.
  2. Making C# the choice pretty much eliminates the main stream software developers who work in Java. Take a clue from the real life job market. There's hardly any listing for C# but boat loads of job listing for Java. I mean, really, who did the research on this selection as the programming language? It's like choosing the worst possible option by going with the programming language that has absolutely the smallest market share.
  3. Sure enough, that was the problem. Thanks for the advice! Innula Zenovka wrote: What happens if you take out the remove() fuction from the two collision events and let the timer remove the bullet? I know you say you've tried delaying it a few seconds, but I suspect that's where the problem might be. I've certainly had issues in the past with scripts not managing to complete their tasks before deleting the object that contains them. If you hear the message then, at least you know that's where the trouble stems from. If if works then, setting it to non-physics as soon as it strikes the target, before it does anything else. I'm just wondering if, after hitting the target, it falls to the floor and calls remove() before it gets a chance to say anything.
  4. I'm using a Novatech channel scanner to watch for the message as well as have my listening script nearby in an object. So I'm certain its not transmitting the message. I've coding things with messages quite a few times before. What's unique this time is that the object is a bullet in motion. Pretty sure that is not a hitting the end of the region problem since it never transmits and I've seen the bullet bounce off my crash dummy, lose all its motion, and then expire. Seeing the same behavior when its set to Mono or LSO.
  5. Can someone tell me why the llRegionSay() in this script is not transmitting anything? I've put debug statements in it and have verified 100% that its being called when it impacts an avatar. An llOwnerSay() call right one line above it dumps the msg out just fine, but the llRegionSay() sends nothing. llSay() also fails to transmit. I tried delaying the bullet a few seconds before it deletes itself to see if its a timing thing. The call still failed to transmit. integer WEAPON_CHANNEL = -12020423; integer timerTicks = 0; float LIFETIME = 5.0; float BASEVELOCITY = 50; init() { //Preset the needed settings. llSetBuoyancy(1.0); llSetPrimitiveParams([PRIM_TEMP_ON_REZ, TRUE, PRIM_PHYSICS, TRUE]); llSetStatus(STATUS_DIE_AT_EDGE, TRUE); llCollisionSound("", 0.0); } remove() { //Remove the bullet. llSetStatus(STATUS_PHYSICS, FALSE); llSetAlpha(0.0, ALL_SIDES); llDie(); } setVelocity(float velocity) { //Applies the correct impulse to the bullet vector vect = ((<velocity,0,0> - llGetVel() / llGetRot()) * llGetMass()); llApplyImpulse(vect,TRUE); } default { state_entry() { init(); } on_rez(integer start_param) { //The bullet has been fired. //Sets the bullet in motion at the correct velocity in meters per second. setVelocity( (((float)start_param / 100) * BASEVELOCITY) ); llSetTimerEvent(LIFETIME); } collision_start(integer total_number) { key avatarKey = llDetectedKey(0); key ownerKey = llGetOwner(); if (avatarKey != ownerKey) { string msg = "BulletImpact, " + (string) avatarKey; llRegionSay(WEAPON_CHANNEL, msg); remove(); } } land_collision_start(vector pos) { remove(); } timer() { remove(); } }
×
×
  • Create New...