ich bräucht ein wenig code, da meine coder irgendwie alle
ausgeflogen sind, (Bis auf den Physicscoder).
Ich möchte das der Ball nicht nur vom Boden abprallt sondern auch von den
Wänden. Für deb Boden benutze ich folgenden code in "Crashland"
von bg_pmove.c:
Code: Alles auswählen
pm->ps->velocity[2] = -vel * 0.5; //2
if (pm->ps->velocity[2] <= 0.001) {
pm->ps->velocity[2] = 0;
}
Code: Alles auswählen
/*
================
G_BounceMissile
================
*/
void G_BounceMissile( gentity_t *ent, trace_t *trace ) {
vec3_t velocity;
float dot;
int hitTime;
// reflect the velocity on the trace plane
hitTime = level.previousTime + ( level.time - level.previousTime ) * trace->fraction;
BG_EvaluateTrajectoryDelta( &ent->s.pos, hitTime, velocity );
dot = DotProduct( velocity, trace->plane.normal );
VectorMA( velocity, -2*dot, trace->plane.normal, ent->s.pos.trDelta );
if ( ent->s.eFlags & EF_BOUNCE_HALF ) {
VectorScale( ent->s.pos.trDelta, 0.65, ent->s.pos.trDelta );
// check for stop
if ( trace->plane.normal[2] > 0.2 && VectorLength( ent->s.pos.trDelta ) < 40 ) {
G_SetOrigin( ent, trace->endpos );
//newq3ball
ent->parent->istelepoint = 1;
VectorCopy(ent->r.currentOrigin, ent->parent->teleloc);
ent->parent->teleloc[2] += 6;
//endnew
return;
}
}
VectorAdd( ent->r.currentOrigin, trace->plane.normal, ent->r.currentOrigin);
VectorCopy( ent->r.currentOrigin, ent->s.pos.trBase );
ent->s.pos.trTime = level.time;
}
Ball von der Wand abprallt!?
Ich bräuchte den code, weil selber coden kann ich nicht.
Danke danke