Advertisement
Benji23245

Untitled

Jul 17th, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. void ShadowCBbolt(EntityData1 *a1, CharObj2 *a2)
  2. {
  3. if (GameState != 21 && is_shadow)
  4. {
  5. if (chaos_blast_active_timer > 42 && chaos_blast_active_timer <= 210)
  6. {
  7. njColorBlendingMode(NJD_SOURCE_COLOR, NJD_COLOR_BLENDING_SRCALPHA);
  8. njColorBlendingMode(NJD_DESTINATION_COLOR, NJD_COLOR_BLENDING_DESTALPHA);
  9. njTextureShadingMode(NJD_TEX_SHADING_MODE_DECALALPHA);
  10. //Bolt sparkles
  11. ParticleDepthOverride = 0.0f;
  12. EntityData1 *co1 = EntityData1Ptrs[0];
  13. for (auto it = sparklesCBbolt.begin(); it != sparklesCBbolt.end(); )
  14. {
  15. sparkleShadowCBbolt.p = it->pos_CBbolt;
  16. njDrawSprite3D_Queue(&sparkleShadowCBbolt, 16 + (it->frameCBbolt++ / 3), NJD_SPRITE_ALPHA | NJD_SPRITE_SCALE, (QueuedModelFlagsB)0);
  17.  
  18. if (it->frameCBbolt >= 27)
  19. it = sparklesCBbolt.erase(it);
  20. else
  21. ++it;
  22. }
  23. if (chaos_blast_active_timer <= 110)
  24. {
  25. if (++sparkleCBbolttimer == 4)
  26. {
  27. sparkleCBboltdata sp = {};
  28. NJS_VECTOR pos_CBbolt = { 0, (((float)rand() / RAND_MAX) * 0.0) + 17.0, 0 };
  29. njPushMatrix(nullptr);
  30. njRotateX(nullptr, rand() & 0xFFFF);
  31. njRotateY(nullptr, rand() & 0xFFFF);
  32. njRotateZ(nullptr, rand() & 0xFFFF);
  33. njCalcVector(nullptr, &pos_CBbolt, &sp.pos_CBbolt);
  34. njPopMatrix(1);
  35. sp.pos_CBbolt.x += co1->CollisionInfo->CollisionArray->origin.x;
  36. sp.pos_CBbolt.y += co1->CollisionInfo->CollisionArray->origin.y;
  37. sp.pos_CBbolt.z += co1->CollisionInfo->CollisionArray->origin.z;
  38. sparklesCBbolt.push_back(sp);
  39. sparkleCBbolttimer = 0;
  40. }
  41. }
  42. else
  43. {
  44. if (++sparkleCBbolttimer == 3)
  45. {
  46. sparkleCBboltdata sp = {};
  47. NJS_VECTOR pos_CBbolt = { 0, (((float)rand() / RAND_MAX) * ((10.0f*cbREDsize) - 34.0f)) + 17.0, 0 };
  48. njPushMatrix(nullptr);
  49. njRotateX(nullptr, rand() & 0xFFFF);
  50. njRotateY(nullptr, rand() & 0xFFFF);
  51. njRotateZ(nullptr, rand() & 0xFFFF);
  52. njCalcVector(nullptr, &pos_CBbolt, &sp.pos_CBbolt);
  53. njPopMatrix(1);
  54. sp.pos_CBbolt.x += co1->CollisionInfo->CollisionArray->origin.x;
  55. sp.pos_CBbolt.y += co1->CollisionInfo->CollisionArray->origin.y;
  56. sp.pos_CBbolt.z += co1->CollisionInfo->CollisionArray->origin.z;
  57. sparklesCBbolt.push_back(sp);
  58. sparkleCBbolttimer = 0;
  59. }
  60. }
  61. SetMaterialAndSpriteColor_Float(1, 1, 1, 1);
  62. }
  63. else
  64. {
  65. sparklesCBbolt.clear();
  66. sparkleCBbolttimer = 0;
  67. }
  68. njColorBlendingMode(NJD_SOURCE_COLOR, NJD_COLOR_BLENDING_SRCALPHA);
  69. njColorBlendingMode(NJD_DESTINATION_COLOR, NJD_COLOR_BLENDING_INVSRCALPHA);
  70. njTextureShadingMode(NJD_TEX_SHADING_MODE_DECALALPHA);
  71. }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement