mirror of
				https://github.com/AxioDL/metaforce.git
				synced 2025-10-28 14:49:48 +00:00 
			
		
		
		
	Rethink BGCL
This commit is contained in:
		
							parent
							
								
									805471eb98
								
							
						
					
					
						commit
						fe38bfec2d
					
				| @ -156,10 +156,4 @@ bool CCEParticleColor::GetValue(int /*frame*/, Zeus::CColor& colorOut) const | ||||
|     return false; | ||||
| } | ||||
| 
 | ||||
| bool CCEBevelGradient::GetValue(int frame, Zeus::CColor& colorOut) const | ||||
| { | ||||
|     m_gradientColor->GetValue(frame, colorOut); | ||||
|     return false; | ||||
| } | ||||
| 
 | ||||
| } | ||||
|  | ||||
| @ -92,16 +92,6 @@ class CCEParticleColor : public CColorElement | ||||
| public: | ||||
|     bool GetValue(int frame, Zeus::CColor& colorOut) const; | ||||
| }; | ||||
| 
 | ||||
| /* Custom additions */ | ||||
| class CCEBevelGradient : public CColorElement | ||||
| { | ||||
|     std::unique_ptr<CColorElement> m_gradientColor; | ||||
| public: | ||||
|     CCEBevelGradient(CColorElement* gradientCol) | ||||
|         : m_gradientColor(gradientCol) {} | ||||
|     bool GetValue(int frame, Zeus::CColor &colorOut) const; | ||||
| }; | ||||
| } | ||||
| 
 | ||||
| #endif // __PSHAG_CCOLORELEMENT_HPP__
 | ||||
|  | ||||
| @ -103,6 +103,10 @@ public: | ||||
|     std::unique_ptr<CRealElement> x124_ADV7; | ||||
|     std::unique_ptr<CRealElement> x128_ADV8; | ||||
| 
 | ||||
| 
 | ||||
|     /* Custom additions */ | ||||
|     std::unique_ptr<CColorElement> m_bevelGradient; /* FourCC BGCL */ | ||||
| 
 | ||||
|     CGenDescription() | ||||
|     { | ||||
|         x45_25_PMOO = true; | ||||
|  | ||||
| @ -1113,6 +1113,25 @@ bool CParticleDataFactory::CreateGPSM(CGenDescription* fillDesc, CInputStream& i | ||||
|         } | ||||
|         clsId = GetClassID(in); | ||||
|     } | ||||
| 
 | ||||
|     /* Now for our custom additions, if available */ | ||||
|     if (!in.atEnd()) | ||||
|     { | ||||
|         clsId = GetClassID(in); | ||||
|         if (clsId == 0xFFFFFFFF) | ||||
|             return true; | ||||
| 
 | ||||
|         while (clsId != SBIG('_END') && !in.atEnd()) | ||||
|         { | ||||
|             switch(clsId) | ||||
|             { | ||||
|             case SBIG('BGCL'): | ||||
|                 fillDesc->m_bevelGradient.reset(GetColorElement(in)); | ||||
|             break; | ||||
|             } | ||||
|             clsId = GetClassID(in); | ||||
|         } | ||||
|     } | ||||
|     return true; | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user