public override void VisitStart(World world) { base.VisitStart(world); this.backgroundLayer = world.LoadedLayers["slidesLayer"] as ImageBackgroundLayer; this.currentRulesPhase = RulesPhase.SLIDE1; this.backgroundLayer.PreInitImageId = this.phaseToImageIds[this.currentRulesPhase]; world.InitializeLevel(new List <string>() { "slidesLayer" }, this); }
public AstraRulesLevel(World world) : base(world) { this.currentRulesPhase = RulesPhase.VOID; this.phaseToImageIds = new Dictionary <RulesPhase, string>() { { RulesPhase.SLIDE0, "slide_credits1" }, { RulesPhase.SLIDE1, "slide_rules1" }, { RulesPhase.SLIDE2, "slide_rules2" }, { RulesPhase.SLIDE3, "slide_rules3" }, { RulesPhase.SLIDE4, "slide_rules4" } }; }
protected override void InternalUpdateLogic(World world, Time timeElapsed) { if (this.CheckNextRulesPhaseEvent()) { int indexNextRulePhase = ((int)this.CurrentRulesPhase) + 1; if (indexNextRulePhase < 5) { RulesPhase nextRulePhase = (RulesPhase)indexNextRulePhase; this.CurrentRulesPhase = nextRulePhase; } else { world.NotifyInternalGameEvent(new InternalGameEvent(InternalEventType.GO_TO_LEVEL, "StartPageLevel")); } } }