private static void CreateHealGroup() { var heal = new List<SceneActionBase>(); var cast = new RunAnimationSceneAction(); cast.RunOnce = "True"; cast.Actor = CASTER; cast.Animation = "Attack02"; heal.Add(cast); var sound = new PlaySoundSceneAction(); sound.Sound = "Sounds/birdseye"; sound.Actor = CASTER; heal.Add(sound); var emitter = new SpawnParticleEffectSceneAction(); emitter.BlocksStory = true; emitter.Actor = CASTER; emitter.Duration = ".5"; emitter.ParticlesPerSecond = "100"; emitter.LocalPosition = new Vector3(0, 1, 0); emitter.Color1 = new Color(1f, .0f, .35f, .2f); emitter.Color2 = new Color(1f, 0f, .35f, .5f); emitter.Color3 = new Color(1f, 0f, 0f, 1f); emitter.Color4 = new Color(1f, 0f, .9f, .6f); emitter.Color5 = new Color(1f, 0f, .5f, .2f); emitter.ParticleLifeTime = "1"; emitter.ParticleSize = ".5"; emitter.ParticleSpeed = "0"; emitter.RandomVelocity = new Vector3(3, 0, 3); heal.Add(emitter); var idleAnim = new RunAnimationSceneAction(); idleAnim.Actor = CASTER; idleAnim.Animation = "Idle"; heal.Add(idleAnim); sound = new PlaySoundSceneAction(); sound.Sound = "Sounds/c light"; sound.Actor = CASTER; heal.Add(sound); emitter = new SpawnParticleEffectSceneAction(); emitter.Name = "Heal"; emitter.Actor = CASTER; emitter.Target = TARGET; emitter.Duration = "100"; emitter.ParticlesPerSecond = "6000"; emitter.LocalPosition = new Vector3(0, 1, 0); emitter.Color1 = new Color(1f, 0f, .05f, .2f); emitter.Color2 = new Color(.5f, .2f, .2f, .5f); emitter.Color3 = new Color(.5f, 0, .01f, 1f); emitter.Color4 = new Color(.5f, .18f, .18f, .6f); emitter.Color5 = new Color(0f, 0f, 0f, .2f); emitter.RandomVelocity = new Vector3(1, 1, 1); emitter.ParticleLifeTime = ".65"; emitter.ParticleSize = ".1"; emitter.ParticleSpeed = "0"; heal.Add(emitter); var movePart = new MoveToEntitySceneAction(); movePart.BlocksStory = true; movePart.Actor = "{#Heal}.Emitter"; movePart.Speed = "15"; movePart.HowClose = "0"; movePart.Entity = TARGET; heal.Add(movePart); sound = new PlaySoundSceneAction(); sound.Sound = "Sounds/heal"; sound.Actor = TARGET; heal.Add(sound); AdjustStatForManySceneAction health = new AdjustStatForManySceneAction(); health.Adjustment = "{Caster}<Character>.Stats[LilithStats.Intelligence].CurrentValue * 3"; health.StatToAdjust = LilithStats.Health; health.TeamToAdjust = "{Target}<Character>.MyTeam"; heal.Add(health); emitter = new SpawnParticleEffectSceneAction(); emitter.BlocksStory = true; emitter.Actor = TARGET; emitter.Duration = "1"; emitter.ParticlesPerSecond = "250"; emitter.LocalPosition = new Vector3(0, 1, 0); emitter.Color1 = new Color(1f, 0f, .05f, .2f); emitter.Color2 = new Color(.5f, .2f, .2f, .5f); emitter.Color3 = new Color(.5f, 0, .01f, .5f); emitter.Color4 = new Color(.5f, .18f, .18f, .6f); emitter.Color5 = new Color(0f, 0f, 0f, .2f); emitter.RandomVelocity = new Vector3(3, 10, 1); emitter.ParticleLifeTime = ".65"; emitter.ParticleSize = "1"; emitter.ParticleSpeed = ".2"; heal.Add(emitter); var finisher = new FinishPartSceneAction(); finisher.PartToFinish = "{#Heal}"; finisher.DelayBeforeFinish = "1"; heal.Add(finisher); loadedScenes.Add(LilithAbilities.HealGroup, heal); }
private static void CreateFireball() { var fireball = new List<SceneActionBase>(); var cast = new RunAnimationSceneAction(); cast.RunOnce = "True"; cast.Actor = CASTER; cast.Animation = "Attack02"; fireball.Add(cast); var sound = new PlaySoundSceneAction(); sound.Sound = "Sounds/fyrbal02"; sound.Actor = CASTER; fireball.Add(sound); var emitter = new SpawnParticleEffectSceneAction(); emitter.BlocksStory = true; emitter.Actor = CASTER; emitter.Duration = "1.2"; emitter.ParticlesPerSecond = "60"; emitter.LocalPosition = new Vector3(0, 1, 0); emitter.Color1 = new Color(.5f, 0f, 1f, .2f); emitter.Color2 = new Color(0, .5f, 1f, .5f); emitter.Color3 = new Color(1f, .65f, 0f, 1f); emitter.Color4 = new Color(1f, .35f, 0f, .6f); emitter.Color5 = new Color(1f, 0f, 0f, .2f); emitter.ParticleLifeTime = "1"; emitter.ParticleSize = ".5"; emitter.ParticleSpeed = "0"; emitter.RandomVelocity = new Vector3(5, 0, 5); fireball.Add(emitter); var idleAnim = new RunAnimationSceneAction(); idleAnim.Actor = CASTER; idleAnim.Animation = "Idle"; fireball.Add(idleAnim); sound = new PlaySoundSceneAction(); sound.Sound = "Sounds/fyrbal01"; sound.Actor = CASTER; fireball.Add(sound); BuffSceneAction buff = new BuffSceneAction(); buff.Actor = CASTER; buff.TargetCharacter = "{Target}<Character>"; fireball.Add(buff); emitter = new SpawnParticleEffectSceneAction(); emitter.Name = "Fireball"; emitter.Actor = CASTER; emitter.Target = TARGET; emitter.Duration = "100"; emitter.ParticlesPerSecond = "6000"; emitter.LocalPosition = new Vector3(0, 1, 0); emitter.Color1 = new Color(.5f, .4f, .7f, .2f); emitter.Color2 = new Color(.8f, .5f, .3f, .5f); emitter.Color3 = new Color(1f, .65f, 0f, 1f); emitter.Color4 = new Color(1f, .35f, 0f, .6f); emitter.Color5 = new Color(1f, 0f, 0f, .2f); emitter.RandomVelocity = new Vector3(3, 3, 3); emitter.ParticleLifeTime = ".65"; emitter.ParticleSize = ".5"; emitter.ParticleSpeed = "0"; buff.Actions.Add(emitter); var movePart = new MoveToEntitySceneAction(); movePart.BlocksStory = true; movePart.Actor = "{#Fireball}.Emitter"; movePart.Speed = "10"; movePart.HowClose = "0"; movePart.Entity = TARGET; buff.Actions.Add(movePart); sound = new PlaySoundSceneAction(); sound.Sound = "Sounds/exp01"; sound.Actor = TARGET; buff.Actions.Add(sound); var dmg = new AdjustStatSceneAction(); dmg.Adjustment = "{Caster}<Character>.Stats[LilithStats.Intelligence].CurrentValue * -5"; dmg.StatToAdjust = "{Target}<Character>.Stats[LilithStats.Health]"; buff.Actions.Add(dmg); dmg = new AdjustStatSceneAction(); dmg.BlocksStory = true; dmg.Adjustment = "{Caster}<Character>.Stats[LilithStats.Intelligence].CurrentValue * -5"; dmg.StatToAdjust = "{Target}<Character>.Stats[LilithStats.Health]"; dmg.OverSeconds = "1"; buff.Actions.Add(dmg); FinishPartSceneAction finisher = new FinishPartSceneAction(); finisher.PartToFinish = "{#Fireball}"; finisher.DelayBeforeFinish = "1"; buff.Actions.Add(finisher); var wait = new WaitSceneAction(); wait.Seconds = ".5"; fireball.Add(wait); loadedScenes.Add(LilithAbilities.Fireball, fireball); }