public void OnPostProcessProjectile(Projectile proj, float f) { if (shaderProjMod != null) { ShaderProjModifier mod = proj.gameObject.AddComponent <ShaderProjModifier>(); mod.ProcessProperty = shaderProjMod.ProcessProperty; mod.ShaderProperty = shaderProjMod.ShaderProperty; mod.StartValue = shaderProjMod.StartValue; mod.EndValue = shaderProjMod.EndValue; mod.LerpTime = shaderProjMod.LerpTime; mod.ColorAttribute = shaderProjMod.ColorAttribute; mod.StartColor = shaderProjMod.StartColor; mod.EndColor = shaderProjMod.EndColor; mod.OnDeath = shaderProjMod.OnDeath; mod.PreventCorpse = shaderProjMod.PreventCorpse; mod.DisablesOutlines = shaderProjMod.DisablesOutlines; mod.EnableEmission = shaderProjMod.EnableEmission; mod.GlobalSparks = shaderProjMod.GlobalSparks; mod.GlobalSparksColor = shaderProjMod.GlobalSparksColor; mod.GlobalSparksForce = shaderProjMod.GlobalSparksForce; mod.GlobalSparksOverrideLifespan = shaderProjMod.GlobalSparksOverrideLifespan; mod.AddMaterialPass = shaderProjMod.AddMaterialPass; mod.AddPass = shaderProjMod.AddPass; mod.IsGlitter = shaderProjMod.IsGlitter; mod.ShouldAffectBosses = shaderProjMod.ShouldAffectBosses; mod.AddsEncircler = shaderProjMod.AddsEncircler; mod.AppliesLocalSlowdown = shaderProjMod.AppliesLocalSlowdown; mod.LocalTimescaleMultiplier = shaderProjMod.LocalTimescaleMultiplier; mod.AppliesParticleSystem = shaderProjMod.AppliesParticleSystem; mod.ParticleSystemToSpawn = shaderProjMod.ParticleSystemToSpawn; mod.GlobalSparkType = shaderProjMod.GlobalSparkType; mod.GlobalSparksRepeat = shaderProjMod.GlobalSparksRepeat; } }
public static ShaderProjModifier ApplyClonedShaderProjModifier(this Projectile self, ShaderProjModifier shaderToClone) { ShaderProjModifier tanglify = self.gameObject.AddComponent <ShaderProjModifier>(); tanglify.ProcessProperty = shaderToClone.ProcessProperty; tanglify.ShaderProperty = shaderToClone.ShaderProperty; tanglify.StartValue = shaderToClone.StartValue; tanglify.EndValue = shaderToClone.EndValue; tanglify.LerpTime = shaderToClone.LerpTime; tanglify.ColorAttribute = shaderToClone.ColorAttribute; tanglify.GlobalSparks = shaderToClone.GlobalSparks; tanglify.StartColor = shaderToClone.StartColor; tanglify.EndColor = shaderToClone.EndColor; tanglify.OnDeath = shaderToClone.OnDeath; tanglify.PreventCorpse = shaderToClone.PreventCorpse; tanglify.DisablesOutlines = shaderToClone.DisablesOutlines; tanglify.EnableEmission = shaderToClone.EnableEmission; tanglify.GlobalSparksColor = shaderToClone.GlobalSparksColor; tanglify.GlobalSparksForce = shaderToClone.GlobalSparksForce; tanglify.GlobalSparksOverrideLifespan = shaderToClone.GlobalSparksOverrideLifespan; tanglify.AddMaterialPass = shaderToClone.AddMaterialPass; tanglify.AddPass = shaderToClone.AddPass; tanglify.IsGlitter = shaderToClone.IsGlitter; tanglify.ShouldAffectBosses = shaderToClone.ShouldAffectBosses; tanglify.AddsEncircler = shaderToClone.AddsEncircler; tanglify.AppliesLocalSlowdown = shaderToClone.AppliesLocalSlowdown; tanglify.LocalTimescaleMultiplier = shaderToClone.LocalTimescaleMultiplier; tanglify.AppliesParticleSystem = shaderToClone.AppliesParticleSystem; tanglify.ParticleSystemToSpawn = shaderToClone.ParticleSystemToSpawn; tanglify.GlobalSparkType = shaderToClone.GlobalSparkType; tanglify.GlobalSparksRepeat = shaderToClone.GlobalSparksRepeat; return(tanglify); }