Glad you got it working! I'm looking for something similiar in effect, but
isn't doing so many tracelines performance impacting?

On Fri, May 21, 2010 at 12:23 PM, James K <jimmy4...@gmail.com> wrote:

> I didn't comment enough stuff out. Whoops. Thanks for putting up with
> my stupidity, Tony.
>
> -James
>
> On Fri, May 21, 2010 at 9:57 AM, Tony "omega" Sergi <omegal...@gmail.com>
> wrote:
> > I dropped the code into a a blank sdk and it works.
> > I made one minor alteration though, here's the whole thing. if it still
> > doesn't work for you then i have no idea, as i was just sitting in a box
> map
> > with a displacement ground seeing slime splashes randomly, WITH rain
> coming
> > down.
> > http://pastebin.com/0KfbHkii
> > -Tony
> >
> >
> > On Fri, May 21, 2010 at 9:50 AM, James K <jimmy4...@gmail.com> wrote:
> >
> >> Removing the IsInAir conditional broke the rain completely. No rain or
> >> splashes at all now.
> >>
> >> On Thu, May 20, 2010 at 8:13 AM, Tony "omega" Sergi <
> omegal...@gmail.com>
> >> wrote:
> >> > and remove all of the other randoms other than what that i changed the
> >> code
> >> > to.
> >> > So for the final output:
> >> >
> >> >    /*Tony; the traceline replaces the IsInAir check.
> >> >    you also don't want the random's to be around the traceline either,
> or
> >> > it will only check SOMETIMES. it needs to check _all_ the time.
> >> >    you also probably want to do some radius checking of the particles
> >> > position (ignoring z) for if it's in range of the local player to run
> >> this
> >> > code or not
> >> >    otherwise you will have traces for every particle all over the
> place
> >> > even if there's no way that the player can see it
> >> >    so when the player is out of that radius, you would only use if (
> >> > !IsInAir( pParticle->m_Pos ) { return false; }
> >> >   */
> >> >    trace_t trace;
> >> >    UTIL_TraceLine(vOldPos, pParticle->m_Pos, MASK_SOLID, NULL,
> >> > COLLISION_GROUP_NONE, &trace);
> >> >    if( trace.fraction < 1 || trace.DidHit() )
> >> >    {
> >> >        if ( RandomInt( 0, 100 ) <= r_RainSplashPercentage.GetInt() )
> >> >            DispatchParticleEffect( "rain_splash",
> >> > trace.endpos,trace.m_pEnt->GetAbsAngles() , NULL );
> >> >
> >> >        // Tell the framework it's time to remove the particle from the
> >> list
> >> >        return false;
> >> >    }
> >> >    // We still want this particle
> >> >    return true;
> >> >
> >> > -Tony
> >> >
> >> > On Thu, May 20, 2010 at 7:16 PM, Saul Rennison <
> saul.renni...@gmail.com
> >> >wrote:
> >> >
> >> >> Remove the IsInAir conditional, that's your issue.
> >> >>
> >> >> On Thursday, May 20, 2010, James K <jimmy4...@gmail.com> wrote:
> >> >> > I don't want to post the whole file because I really haven't
> changed
> >> >> > anything else and that would be massive, so here's the tidbit i'm
> >> >> > working with. The whole file is c_effects.cpp if you need to see
> the
> >> >> > rest.
> >> >> >
> >> >> >         // No longer in the air? punt.
> >> >> >         if ( !IsInAir( pParticle->m_Pos ) )
> >> >> >         {
> >> >> >                 // Possibly make a splash if we hit a water surface
> >> and
> >> >> it's in
> >> >> > front of the view.
> >> >> >                 if ( m_Splashes.Count() < 99 )
> >> >> >                 {
> >> >> >                         if ( RandomInt( 0, 100 ) <
> >> >> r_RainSplashPercentage.GetInt() )
> >> >> >                         {
> >> >> >    trace_t trace;
> >> >> >    UTIL_TraceLine(vOldPos, pParticle->m_Pos, MASK_ALL, NULL,
> >> >> > COLLISION_GROUP_NONE, &trace);
> >> >> >    if( trace.fraction < 1 || trace.DidHit() )
> >> >> >    {
> >> >> >        if ( RandomInt( 0, 100 ) <= r_RainSplashPercentage.GetInt()
> )
> >> >> >            DispatchParticleEffect( "rain_splash", trace.endpos,
> >> >> > trace.m_pEnt->GetAbsAngles() , NULL );
> >> >> >    }
> >> >> >                         }
> >> >> >                 }
> >> >> >
> >> >> >                 // Tell the framework it's time to remove the
> particle
> >> >> from the list
> >> >> >                 return false;
> >> >> >         }
> >> >> >
> >> >> >         // We still want this particle
> >> >> >         return true;
> >> >> > }
> >> >> >
> >> >>
> >> > _______________________________________________
> >> > To unsubscribe, edit your list preferences, or view the list archives,
> >> please visit:
> >> > http://list.valvesoftware.com/mailman/listinfo/hlcoders
> >> >
> >> >
> >>
> >> _______________________________________________
> >> To unsubscribe, edit your list preferences, or view the list archives,
> >> please visit:
> >> http://list.valvesoftware.com/mailman/listinfo/hlcoders
> >>
> >>
> >
> >
> > --
> > -Tony
> > _______________________________________________
> > To unsubscribe, edit your list preferences, or view the list archives,
> please visit:
> > http://list.valvesoftware.com/mailman/listinfo/hlcoders
> >
> >
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
> please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>
>
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to