MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / DoForceForWeapon

Function DoForceForWeapon

Descent3/D3ForceFeedback.cpp:431–451  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

429}
430
431void DoForceForWeapon(object *me_obj, object *it_obj, vector *force_vec) {
432 if (it_obj->id < 0 || it_obj->id >= MAX_WEAPONS)
433 return;
434
435 weapon *weap = &Weapons[it_obj->id];
436
437 if (weap->flags & WF_MICROWAVE) {
438 vector local_norm, v;
439 float scale = 1.00f;
440 v.x = ps_rand() % 10;
441 v.y = 0;
442 v.z = ps_rand() % 10;
443 vm_NormalizeVector(&v);
444 vm_MatrixMulVector(&local_norm, &v, &me_obj->orient);
445
446 local_norm *= -1.0f;
447
448 ForceEffectsPlay(FORCE_MICROWAVE, &scale, &local_norm);
449 return;
450 }
451}
452
453void DoForceForWall(object *playerobj, float hitspeed, int hitseg, int hitwall, vector *wall_normal) {
454 vector local_norm;

Callers 1

bump_two_objectsFunction · 0.85

Calls 4

ps_randFunction · 0.85
vm_NormalizeVectorFunction · 0.85
ForceEffectsPlayFunction · 0.85
vm_MatrixMulVectorFunction · 0.50

Tested by

no test coverage detected