Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void ShadowCBLV3(EntityData1 *a1, CharObj2 *a2)
- {
- if (GameState != 21 && is_shadow)
- {
- if (CB_lv3)
- {
- njColorBlendingMode(NJD_SOURCE_COLOR, NJD_COLOR_BLENDING_ONE);
- njColorBlendingMode(NJD_DESTINATION_COLOR, NJD_COLOR_BLENDING_ONE);
- njTextureShadingMode(NJD_TEX_SHADING_MODE_DECALALPHA);
- njAlphaMode(1);
- LV3alpha += 0.0625f;
- SetMaterialAndSpriteColor_Float(1, (1 - LV3alpha), 0, 0);
- ParticleDepthOverride = 0.0f;
- EntityData1 *co1 = EntityData1Ptrs[0];
- for (auto it = sparklesCBLV3.begin(); it != sparklesCBLV3.end(); )
- {
- sparkleShadowCBLV3.p = it->pos_CBLV3;
- njDrawSprite3D_Queue(&sparkleShadowCBLV3, 26 + (it->frameCBLV3++ / 32), NJD_SPRITE_ALPHA | NJD_SPRITE_COLOR | NJD_SPRITE_SCALE, (QueuedModelFlagsB)0);
- if (it->frameCBLV3 >= 16)
- {
- it = sparklesCBLV3.erase(it);
- }
- else
- ++it;
- }
- if (LV3alpha > 1.0) LV3alpha = 0.0f;
- if (++sparkleCBLV3timer == 3)
- {
- sparkleCBLV3data sp = {};
- NJS_VECTOR pos_CBLV3 = { 0, ((float)rand() / RAND_MAX) * 3.5, 0 };
- njPushMatrix(nullptr);
- njRotateX(nullptr, rand() & 0xFFFF);
- njRotateY(nullptr, rand() & 0xFFFF);
- njRotateZ(nullptr, rand() & 0xFFFF);
- njCalcVector(nullptr, &pos_CBLV3, &sp.pos_CBLV3);
- njPopMatrix(1);
- sp.pos_CBLV3.x += co1->CollisionInfo->CollisionArray->origin.x;
- sp.pos_CBLV3.y += co1->CollisionInfo->CollisionArray->origin.y;
- sp.pos_CBLV3.z += co1->CollisionInfo->CollisionArray->origin.z;
- sparklesCBLV3.push_back(sp);
- sparkleCBLV3timer = 0;
- }
- SetMaterialAndSpriteColor_Float(1, 1, 1, 1);
- }
- else
- {
- sparklesCBLV3.clear();
- sparkleCBLV3timer = 0;
- }
- njColorBlendingMode(NJD_SOURCE_COLOR, NJD_COLOR_BLENDING_SRCALPHA);
- njColorBlendingMode(NJD_DESTINATION_COLOR, NJD_COLOR_BLENDING_INVSRCALPHA);
- njTextureShadingMode(NJD_TEX_SHADING_MODE_DECALALPHA);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement