|
1 | 1 | using Celeste.Mod.Entities;
|
2 | 2 | using Microsoft.Xna.Framework;
|
3 | 3 | using Monocle;
|
| 4 | +using System; |
4 | 5 |
|
5 | 6 | namespace Celeste.Mod.SpringCollab2020.Triggers {
|
6 | 7 | // a very hardcoded trigger that is here to persist theme choices between play sessions.
|
@@ -66,6 +67,42 @@ public override void Added(Scene scene) {
|
66 | 67 | }
|
67 | 68 | }
|
68 | 69 |
|
| 70 | + public override void Awake(Scene scene) { |
| 71 | + base.Awake(scene); |
| 72 | + |
| 73 | + // let's restore the saved theme... |
| 74 | + Level level = Scene as Level; |
| 75 | + string sid = level.Session.Area.GetSID(); |
| 76 | + bool enabled = SpringCollab2020Module.Instance.SaveData.ModifiedThemeMaps.Contains(sid); |
| 77 | + if (enabled) { |
| 78 | + switch (sid) { |
| 79 | + case "SpringCollab2020/1-Beginner/DanTKO": |
| 80 | + triggerTrigger("LightningColorTrigger", -456, 32); |
| 81 | + triggerTrigger("ExtendedVariantTrigger", -456, 32); |
| 82 | + |
| 83 | + level.Session.LightingAlphaAdd = 0.095f; |
| 84 | + level.Lighting.Alpha = level.BaseLightingAlpha + level.Session.LightingAlphaAdd; |
| 85 | + break; |
| 86 | + } |
| 87 | + } else { |
| 88 | + switch (sid) { |
| 89 | + case "SpringCollab2020/1-Beginner/DanTKO": |
| 90 | + triggerTrigger("ExtendedVariantTrigger", -448, 136); |
| 91 | + break; |
| 92 | + } |
| 93 | + } |
| 94 | + } |
| 95 | + |
| 96 | + private void triggerTrigger(string triggerName, int x, int y) { |
| 97 | + foreach (Trigger trigger in Scene.Tracker.GetEntities<Trigger>()) { |
| 98 | + if (trigger.GetType().Name.Contains(triggerName) && trigger.X == x && trigger.Y == y) { |
| 99 | + trigger.OnEnter(Scene.Tracker.GetEntity<Player>()); |
| 100 | + trigger.OnLeave(Scene.Tracker.GetEntity<Player>()); |
| 101 | + break; |
| 102 | + } |
| 103 | + } |
| 104 | + } |
| 105 | + |
69 | 106 | private void setBloom(Level level, float bloomAdd) {
|
70 | 107 | level.Session.BloomBaseAdd = bloomAdd;
|
71 | 108 | level.Bloom.Base = AreaData.Get(level).BloomBase + bloomAdd;
|
|
0 commit comments