MCPcopy Create free account
hub / github.com/OGSR/OGSR-Engine / Save2

Method Save2

ogsr_engine/Layers/xrRender/ParticleEffectDef.cpp:322–375  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

320}
321
322void CPEDef::Save2(CInifile& ini)
323{
324 ini.w_u16("_effect", "version", PED_VERSION);
325 ini.w_u32("_effect", "max_particles", m_MaxParticles);
326 ini.w_u32("_effect", "flags", m_Flags.get());
327
328 if (m_Flags.is(dfSprite))
329 {
330 ini.w_string("sprite", "shader", m_ShaderName.c_str());
331 ini.w_string("sprite", "texture", m_TextureName.c_str());
332 }
333
334 if (m_Flags.is(dfFramed))
335 {
336 ini.w_fvector2("frame", "tex_size", m_Frame.m_fTexSize);
337 ini.w_fvector2("frame", "reserved", m_Frame.reserved);
338 ini.w_s32("frame", "dim_x", m_Frame.m_iFrameDimX);
339 ini.w_s32("frame", "frame_count", m_Frame.m_iFrameCount);
340 ini.w_float("frame", "speed", m_Frame.m_fSpeed);
341 }
342
343 if (m_Flags.is(dfTimeLimit))
344 {
345 ini.w_float("timelimit", "value", m_fTimeLimit);
346 }
347
348 if (m_Flags.is(dfCollision))
349 {
350 ini.w_float("collision", "one_minus_friction", m_fCollideOneMinusFriction);
351 ini.w_float("collision", "collide_resilence", m_fCollideResilience);
352 ini.w_float("collision", "collide_sqr_cutoff", m_fCollideSqrCutoff);
353 }
354
355 if (m_Flags.is(dfVelocityScale))
356 {
357 ini.w_fvector3("velocity_scale", "value", m_VelocityScale);
358 }
359
360 if (m_Flags.is(dfAlignToPath))
361 {
362 ini.w_fvector3("align_to_path", "default_rotation", m_APDefaultRotation);
363 }
364
365 ini.w_u32("_effect", "action_count", m_EActionList.size());
366 u32 action_id = 0;
367 for (EPAVecIt it = m_EActionList.begin(); it != m_EActionList.end(); ++it, ++action_id)
368 {
369 string256 sect;
370 xr_sprintf(sect, sizeof(sect), "action_%04d", action_id);
371 ini.w_u32(sect, "action_type", (*it)->type);
372 (*it)->Save2(ini, sect);
373 }
374
375}
376
377void CPEDef::Save(IWriter& F)
378{

Callers

nothing calls this directly

Calls 13

isMethod · 0.80
w_stringMethod · 0.80
w_fvector2Method · 0.80
w_fvector3Method · 0.80
w_u16Method · 0.45
w_u32Method · 0.45
getMethod · 0.45
c_strMethod · 0.45
w_s32Method · 0.45
w_floatMethod · 0.45
sizeMethod · 0.45
beginMethod · 0.45

Tested by

no test coverage detected