// Token: 0x06001322 RID: 4898 RVA: 0x0001B710 File Offset: 0x0001A710 public Countdown(InstancedEvent evnt, EntrantInfo entrant) { LocalHumanOpponent localHumanOpponent = entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { FlasherBase flasher = new FlasherBase(1031321970u); FlasherBase flasher2 = new FlasherBase(2997328623u); FlasherBase flasher3 = new FlasherBase(3512998001u); FlasherBase flasher4 = new FlasherBase(2140919479u); FlasherBase flasher5 = new FlasherBase(2926395083u); base.Activities.Add(new DisplayFlasher(evnt, entrant, flasher, false)); if (evnt.ConnectionSupport == ConnectionSupport.kConnectionOnline) { base.Activities.Add(new ReadySync(0.0166666675f)); } else { base.Activities.Add(new Timer(new InArgument <float>(() => 3f))); } base.Activities.Add(new RemoveFlasher(evnt, entrant, flasher)); base.Activities.Add(new DisplayFlasher(evnt, entrant, flasher2, false)); base.Activities.Add(new Timer(new InArgument <float>(() => 1f))); base.Activities.Add(new RemoveFlasher(evnt, entrant, flasher2)); base.Activities.Add(new DisplayFlasher(evnt, entrant, flasher3, false)); base.Activities.Add(new Timer(new InArgument <float>(() => 1f))); base.Activities.Add(new RemoveFlasher(evnt, entrant, flasher3)); base.Activities.Add(new DisplayFlasher(evnt, entrant, flasher4, false)); base.Activities.Add(new Timer(new InArgument <float>(() => 1f))); base.Activities.Add(new RemoveFlasher(evnt, entrant, flasher4)); base.Activities.Add(new DisplayFlasher(evnt, entrant, flasher5, false)); } }
// Token: 0x06001261 RID: 4705 RVA: 0x0001A78C File Offset: 0x0001978C protected override void OnMessage(OnTriggerExit message) { InternalInstance internalInstance = InstanceCatalog.Get().Find(message.TriggerKey); uint flag = 64u; if (internalInstance != null) { Opponent opponent = this.manager.OpponentManager.FindByPersonaId(message.PersonaId); if (opponent != null) { LocalHumanOpponent localHumanOpponent = opponent as LocalHumanOpponent; if (localHumanOpponent != null) { uint num = 0u; if (internalInstance.IsTypeOf(ObjType.kObjType_Trigger) && internalInstance.IsFlagSet(flag)) { Collection collection = new Collection(internalInstance); num = collection.TargetActivity().GetCollectionKey(); } else if (internalInstance.IsTypeOf(ObjType.kObjType_Event)) { num = internalInstance.GetCollection(); } if (num != 0u) { EventDefinition eventDefinition = Engine.Get().EventRepository().FindByEventKey(num); localHumanOpponent.Hud.OnExitEngagable(eventDefinition.EventId); } } } } }
// Token: 0x060017B5 RID: 6069 RVA: 0x0002A490 File Offset: 0x00029490 public IOpponent CreateLocalHuman(InternalLocalHumanOpponent internalOpponent) { LocalHumanOpponent localHumanOpponent = new LocalHumanOpponent(internalOpponent); this.opponents.Add(localHumanOpponent); return(localHumanOpponent); }
// Token: 0x0600191B RID: 6427 RVA: 0x0002CCD4 File Offset: 0x0002BCD4 public void OnUpdate(EntrantInfo entrant, Event evnt, float dt) { PursuitScoringState pursuitScoringState = entrant.ScoringState as PursuitScoringState; if (pursuitScoringState != null) { float speed = entrant.Opponent.Vehicle.GetSpeed(); if (speed > pursuitScoringState.TopSpeed) { pursuitScoringState.TopSpeed = speed; } if (entrant.Opponent.Vehicle.GetCurrentAirborneTime() > pursuitScoringState.LongestAirTimeInSeconds) { pursuitScoringState.LongestAirTimeInSeconds = entrant.Opponent.Vehicle.GetCurrentAirborneTime(); } if (entrant.Opponent.Vehicle.GetNumWheelsOnGround() == 0) { pursuitScoringState.SumAirTimeInSeconds += dt; } LocalHumanOpponent localHumanOpponent = entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { PursuitInfo pursuitData = localHumanOpponent.PursuitData; pursuitScoringState.Heat = Cops.GetPursuitHeat(); pursuitScoringState.CopsDisabled = pursuitData.GetNumCopsDisabled(); pursuitScoringState.CopsRammed = pursuitData.GetNumCopsRammed(); pursuitScoringState.CopsDeployed = pursuitData.GetNumCopsDeployed(); pursuitScoringState.CostToState = pursuitData.GetCostToState(); pursuitScoringState.SpikeStripsDodged = pursuitData.GetSpikeStripsDodged(); pursuitScoringState.RoadBlocksDodged = pursuitData.GetRoadBlocksDodged(); pursuitScoringState.Infractions = pursuitData.GetInfractions(); pursuitScoringState.EventDurationInMilliseconds = pursuitData.GetPursuitDuration(); } } }
// Token: 0x06001899 RID: 6297 RVA: 0x0002BA6C File Offset: 0x0002AA6C public unsafe void Fill(RadarTracker tracker, Event evnt) { LocalHumanOpponent localHumanOpponent = Engine.Get().OpponentManager().FindLocalOpponent(); tracker.Enabled = false; tracker.SetMovieClipName("Cop"); float num = 0f; localHumanOpponent.Vehicle.GetSkillModEffectAmount(SkillModEffectType.Radar, &num); float rad_ = 0f; float num2 = 0f; Cops.GetClosestCopDirectionAndDistance(&rad_, &num2); if ((double)num2 <= 0.0 || num2 > this.radarFarMax || num2 < this.radarNearMin || num2 < num) { tracker.Enabled = false; tracker.Distance = RadarDistance.kRadarDistance_OutOfRange; return; } tracker.Enabled = true; tracker.Distance = RadarDistance.kRadarDistance_Far; if (num2 < this.radarMediumMin) { tracker.Distance = RadarDistance.kRadarDistance_Near; } else if (num2 < this.radarFarMin) { tracker.Distance = RadarDistance.kRadarDistance_Medium; } tracker.DirectionDeg = Conversions.RAD2DEG(rad_); }
// Token: 0x06001920 RID: 6432 RVA: 0x0002CED8 File Offset: 0x0002BED8 public EventResult Arbitrated(Event evnt, XmlString xmlString) { InstancedEvent instancedEvent = evnt as InstancedEvent; PursuitEventResult pursuitEventResult; if (!XSD2CPP.ReadPursuitEventResult(xmlString, out pursuitEventResult) || pursuitEventResult.EventSessionId != instancedEvent.EventSessionId) { return(null); } EntrantInfo entrantInfo = evnt.FindEntrant(pursuitEventResult.PersonaId); if (entrantInfo == null) { return(null); } LocalHumanOpponent localHumanOpponent = entrantInfo.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { localHumanOpponent.Heat = pursuitEventResult.Heat; } PursuitScoringState pursuitScoringState = entrantInfo.ScoringState as PursuitScoringState; if (pursuitScoringState != null) { pursuitScoringState.HasArbitrated = true; } Marshal.Get().SetLocalPlayersDurability(pursuitEventResult.Durability); return(pursuitEventResult); }
// Token: 0x06001202 RID: 4610 RVA: 0x0001A0FC File Offset: 0x000190FC protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = Engine.Get().OpponentManager().FindLocalOpponent(); if (localHumanOpponent != null) { localHumanOpponent.AssignPursuitEscalation(this.key); } }
// Token: 0x06001386 RID: 4998 RVA: 0x0001C4B4 File Offset: 0x0001B4B4 protected override void OnExecute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { Hud.EnableGadget("PostRace", true); } }
// Token: 0x06001385 RID: 4997 RVA: 0x0001C47C File Offset: 0x0001B47C public PostEventScreen(Event evnt, EntrantInfo entrant, uint port) : base(evnt, entrant, port) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { base.Event.CreateArbitratedPacket(); } }
// Token: 0x06001392 RID: 5010 RVA: 0x0001C718 File Offset: 0x0001B718 protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { localHumanOpponent.RefreshPersona(); } }
// Token: 0x060012AA RID: 4778 RVA: 0x0001AC74 File Offset: 0x00019C74 protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = Engine.Get().OpponentManager().FindLocalOpponent(); if (localHumanOpponent != null) { Cops.SetPursuitHeat(localHumanOpponent.Heat); } }
// Token: 0x06001896 RID: 6294 RVA: 0x0002B828 File Offset: 0x0002A828 public void Fill(RadarTracker tracker, Event evnt) { LocalHumanOpponent localHumanOpponent = Engine.Get().OpponentManager().FindLocalOpponent(); double num = double.MaxValue; Collection collection = null; for (uint num2 = 0u; num2 < evnt.EventDef.Num_Coins(); num2 += 1u) { Collection collection2 = new Collection(evnt.EventDef.Coins(num2).GetCollectionKey()); uint collectionKey = collection2.GetCollection(); PointOfInterest pointOfInterest = evnt.PointsOfInterest.Find((PointOfInterest x) => x.Key == collectionKey); if (pointOfInterest != null && pointOfInterest.IsEnabled()) { double num3 = (double)GameCore.Math.Math.DistanceXZ2(localHumanOpponent.Vehicle.GetPosition(), CoordSys.RenderToSim(collection2.Position())); if (num3 < num) { num = num3; collection = collection2; } } } tracker.Enabled = false; tracker.SetMovieClipName("Treasure"); if (collection != null) { GameCore.Math.Vector3 vector = CoordSys.RenderToSim(collection.Position()); GameCore.Math.Vector3 p = new GameCore.Math.Vector3(localHumanOpponent.Vehicle.GetPosition()); GameCore.Math.Math.Sub(ref vector, p); double num4 = System.Math.Sqrt(GameCore.Math.Math.LengthSq(vector)); if (num4 > (double)this.radarFarMax || num4 < (double)this.radarNearMin) { tracker.Enabled = false; tracker.Distance = RadarDistance.kRadarDistance_OutOfRange; return; } tracker.Enabled = true; tracker.Distance = RadarDistance.kRadarDistance_Far; if (num4 < (double)this.radarMediumMin) { tracker.Distance = RadarDistance.kRadarDistance_Near; } else if (num4 < (double)this.radarFarMin) { tracker.Distance = RadarDistance.kRadarDistance_Medium; } UMath.Vector3 direction = localHumanOpponent.Vehicle.GetDirection(); GameCore.Math.Vector2 p2 = new GameCore.Math.Vector2(direction.x, direction.z); GameCore.Math.Vector2 p3 = new GameCore.Math.Vector2(vector.x, vector.z); GameCore.Math.Math.Normalize(ref p3); float num5 = (float)System.Math.Acos((double)GameCore.Math.Math.Clamp <float>(GameCore.Math.Math.Dot(p2, p3), -1f, 1f)); if (GameCore.Math.Math.Cross(p2, p3) < 0f) { num5 = -num5; } tracker.DirectionDeg = Conversions.RAD2DEG(num5); } }
// Token: 0x06001997 RID: 6551 RVA: 0x0002E398 File Offset: 0x0002D398 public virtual void OnUpdate(EntrantInfo entrant, Event evnt, float dt) { TeamEscapeScoringState teamEscapeScoringState = entrant.ScoringState as TeamEscapeScoringState; InstancedEvent instancedEvent = evnt as InstancedEvent; if (teamEscapeScoringState != null) { teamEscapeScoringState.FractionCompleted = this.GetFractionCompleted(teamEscapeScoringState, entrant, instancedEvent); teamEscapeScoringState.DistanceToStartLine = instancedEvent.GetDistanceToStartLine(entrant.Opponent.Vehicle); teamEscapeScoringState.DistanceToFinish = this.GetDistanceToFinish(teamEscapeScoringState, entrant, instancedEvent); if (!instancedEvent.IsTimingOut) { teamEscapeScoringState.TimeRemaining = evnt.EventDef.TimeLimit() - entrant.ScoringState.EventDurationInSeconds; } else { teamEscapeScoringState.TimeRemaining = (float)instancedEvent.TimingOutRemaining.TotalSeconds; } if (!teamEscapeScoringState.IsTimerUrgent && teamEscapeScoringState.TimeRemaining < evnt.EventDef.TimeLimitWarning()) { teamEscapeScoringState.IsTimerUrgent = true; new OnTimingOut(entrant.PersonaId).Post(Ports.Gameplay); } float speed = entrant.Opponent.Vehicle.GetSpeed(); if (speed > teamEscapeScoringState.TopSpeed) { teamEscapeScoringState.TopSpeed = speed; } if (entrant.Opponent.Vehicle.GetCurrentAirborneTime() > teamEscapeScoringState.LongestAirTimeInSeconds) { teamEscapeScoringState.LongestAirTimeInSeconds = entrant.Opponent.Vehicle.GetCurrentAirborneTime(); } if (entrant.Opponent.InternalOpponent.GetNumOpponentsCollidedWith() > teamEscapeScoringState.NumOpponentsTagged) { teamEscapeScoringState.NumOpponentsTagged = entrant.Opponent.InternalOpponent.GetNumOpponentsCollidedWith(); } if (entrant.Opponent is LocalHumanOpponent) { Screen.Print(-300, 120, string.Format("{0} : {1}", entrant.Opponent.OpponentName, teamEscapeScoringState.FractionCompleted)); } entrant.Opponent.InternalOpponent.SetFractionEventComplete(teamEscapeScoringState.FractionCompleted); LocalHumanOpponent localHumanOpponent = entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { PursuitInfo pursuitData = localHumanOpponent.PursuitData; teamEscapeScoringState.CopsDisabled = pursuitData.GetNumCopsDisabled(); teamEscapeScoringState.CopsRammed = pursuitData.GetNumCopsRammed(); teamEscapeScoringState.CopsDeployed = pursuitData.GetNumCopsDeployed(); teamEscapeScoringState.CostToState = pursuitData.GetCostToState(); teamEscapeScoringState.SpikeStripsDodged = pursuitData.GetSpikeStripsDodged(); teamEscapeScoringState.RoadBlocksDodged = pursuitData.GetRoadBlocksDodged(); teamEscapeScoringState.Infractions = pursuitData.GetInfractions(); pursuitData.HACK_SetPursuitMeter(teamEscapeScoringState.PursuitBar); } } }
// Token: 0x06001335 RID: 4917 RVA: 0x0001BB98 File Offset: 0x0001AB98 protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { Marshal.Get().EnableGhosting(this.enabled, this.durationInSeconds * 1000f); } base.Entrant.Opponent.Vehicle.EnableInvulnerability(this.enabled, this.durationInSeconds); }
// Token: 0x060013C9 RID: 5065 RVA: 0x0001CE20 File Offset: 0x0001BE20 protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { localHumanOpponent.Hud.UnHideAllGadgets(); } base.Close(); }
// Token: 0x060013B8 RID: 5048 RVA: 0x0001CB98 File Offset: 0x0001BB98 protected internal override void Execute(ActivityExecutionContext context) { OnRespawn onRespawn = new OnRespawn(base.Entrant.PersonaId, this.respawnTargetPersonaId.Value); LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { onRespawn.Synchronize(Ports.Gameplay); } }
// Token: 0x060018D4 RID: 6356 RVA: 0x0002C6FC File Offset: 0x0002B6FC public bool IsPowerupRestricted(Restriction restriction, EntrantInfo entrantInfo, Event evnt) { if (entrantInfo == null) { return(true); } LocalHumanOpponent localHumanOpponent = entrantInfo.Opponent as LocalHumanOpponent; DragScoringState dragScoringState = entrantInfo.ScoringState as DragScoringState; if (dragScoringState == null) { return(true); } if (dragScoringState.EventDurationInSeconds < evnt.EventDef.PowerupBlackoutAtEventStart() && localHumanOpponent != null && !this.IsJumpStartActive(entrantInfo, evnt)) { return(true); } switch (restriction) { case Restriction.kPowerupRestriction_NobodyHasFinishedEvent: foreach (EntrantInfo entrantInfo2 in evnt.Entrants) { DragScoringState dragScoringState2 = entrantInfo2.ScoringState as DragScoringState; if (dragScoringState2 != null && dragScoringState2.FractionCompleted > 0.95f) { return(true); } } break; case Restriction.kPowerupRestriction_IAmNotInFirstPlace: { if (dragScoringState.Rank == 1) { return(true); } int num = 999; foreach (EntrantInfo entrantInfo3 in evnt.Entrants) { bool flag = entrantInfo3.Opponent.IsStatus(OpponentStatus.kOpponent_Disconnected); RouteScoringState routeScoringState = entrantInfo3.ScoringState as RouteScoringState; if (routeScoringState != null && routeScoringState.FinishReason == FinishReason.Unknown && !flag && routeScoringState.Rank < num) { num = routeScoringState.Rank; } } if (num == dragScoringState.Rank) { return(true); } break; } } return(false); }
// Token: 0x060013C4 RID: 5060 RVA: 0x0001CCD0 File Offset: 0x0001BCD0 protected override void OnMessage(M message) { if (message.PersonaId == base.Entrant.PersonaId) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { message.Synchronize(base.Port); } } }
// Token: 0x060013E8 RID: 5096 RVA: 0x0001D114 File Offset: 0x0001C114 protected internal override void Close() { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { FlasherManager.Get().DequeueFlasher(this.flasher_handle); } this.duration = -1f; base.Close(); }
// Token: 0x06001372 RID: 4978 RVA: 0x0001C1B8 File Offset: 0x0001B1B8 protected internal override void Execute(ActivityExecutionContext context) { if (Cops.IsPursuitActive()) { return; } LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { Cops.LaunchPursuit((int)localHumanOpponent.Heat, true); } }
// Token: 0x060013BC RID: 5052 RVA: 0x0001CBFC File Offset: 0x0001BBFC protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { if (base.InstancedEvent.SpectateMethod != null) { base.InstancedEvent.SpectateMethod.ClearTarget(); } Cameras.Set(this.cameraName); } }
// Token: 0x06001365 RID: 4965 RVA: 0x0001C0C8 File Offset: 0x0001B0C8 protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { localHumanOpponent.Hud.HideAllGadgets(); foreach (string name in this.gadgets) { localHumanOpponent.Hud.HideGadget(name, false); } } base.Close(); }
// Token: 0x06001331 RID: 4913 RVA: 0x0001BB1C File Offset: 0x0001AB1C protected internal override void Execute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { bool enable = (this.flags & EnableGadget.GadgetToggle.Enable) != (EnableGadget.GadgetToggle) 0; Hud.EnableGadget(this.name, enable); if ((this.flags & EnableGadget.GadgetToggle.Dispose) != (EnableGadget.GadgetToggle) 0) { Hud.DisposeGadget(this.name); } } }
// Token: 0x0600121A RID: 4634 RVA: 0x0001A294 File Offset: 0x00019294 protected internal override void Execute(ActivityExecutionContext context) { base.Execute(context); LocalHumanOpponent localHumanOpponent = Engine.Get().OpponentManager().FindLocalOpponent(); if (localHumanOpponent != null) { uint driverLevel = localHumanOpponent.DriverLevel; if (this.minLevel <= driverLevel && this.maxLevel >= driverLevel) { this.Close(); } } }
// Token: 0x060012EB RID: 4843 RVA: 0x0001B218 File Offset: 0x0001A218 protected override void Tick(float dT) { LocalHumanOpponent localHumanOpponent = Engine.Get().OpponentManager().FindLocalOpponent(); if (this.mEntrant.Opponent is LocalHumanOpponent) { float speed = localHumanOpponent.Vehicle.GetSpeed(); this.mHighestSpeedSeen = System.Math.Max(this.mHighestSpeedSeen, speed); bool flag = speed < this.Tweak_DragSpeedResetThreshold_Low && this.mHighestSpeedSeen >= this.Tweak_DragSpeedResetThreshold_High; bool flag2 = localHumanOpponent.Vehicle.IsFacingWrongWay(); if (flag || (flag2 && speed > Conversions.MPH2MPS(3f))) { localHumanOpponent.Vehicle.ResetVehicle(); this.mHighestSpeedSeen = 0f; } } }
// Token: 0x0600135F RID: 4959 RVA: 0x0001C020 File Offset: 0x0001B020 protected override void OnExecute(ActivityExecutionContext context) { LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { if (Marshal.Get().IsTutorialComplete(this.source)) { this.Close(); return; } if (!Marshal.Get().HandleTutorial(this.source)) { this.Close(); } } }
// Token: 0x0600194C RID: 6476 RVA: 0x0002D5C4 File Offset: 0x0002C5C4 public virtual void OnLapCompleted(EntrantInfo entrant, Event evnt, int lap) { RouteScoringState routeScoringState = entrant.ScoringState as RouteScoringState; if (routeScoringState != null) { routeScoringState.LapTimer.Stop(); routeScoringState.BestLapDurationInMilliseconds = Math.Min(routeScoringState.BestLapDurationInMilliseconds, routeScoringState.LapTimer.ElapsedInMilliseconds); routeScoringState.CurrentLap = lap; LocalHumanOpponent localHumanOpponent = entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent != null) { FlasherManager.Get().EnqueueFlasher(new TimeFlasher(3020512949u, routeScoringState.LapTimer.ElapsedInSeconds)); } routeScoringState.LapTimer.Reset(); routeScoringState.LapTimer.Start(); } }
// Token: 0x060019D1 RID: 6609 RVA: 0x0002F1E4 File Offset: 0x0002E1E4 public uint UpdateTarget(InstancedEvent evt) { if (this.target != null && !this.target.Opponent.IsStatus(OpponentStatus.kOpponent_NotSpectatable)) { return(this.target.Opponent.InternalOpponent.GetWrappedVehicle().GetWorldID()); } LocalHumanOpponent localHumanOpponent = evt.Manager.OpponentManager.FindLocalOpponent(); EntrantInfo entrantInfo = evt.FindEntrant(localHumanOpponent.PersonaId); TeamEscapeScoringState teamEscapeScoringState = entrantInfo.ScoringState as TeamEscapeScoringState; this.target = entrantInfo; float fractionCompleted = teamEscapeScoringState.FractionCompleted; EntrantInfo entrantInfo2 = entrantInfo; float num = float.MaxValue; EntrantInfo entrantInfo3 = entrantInfo; float num2 = float.MinValue; foreach (EntrantInfo entrantInfo4 in evt.Entrants) { if (entrantInfo4.PersonaId != entrantInfo.PersonaId && !entrantInfo4.Opponent.IsStatus(OpponentStatus.kOpponent_NotSpectatable)) { TeamEscapeScoringState teamEscapeScoringState2 = entrantInfo4.ScoringState as TeamEscapeScoringState; if (teamEscapeScoringState2.FractionCompleted >= fractionCompleted && teamEscapeScoringState2.FractionCompleted <= num) { entrantInfo2 = entrantInfo4; num = teamEscapeScoringState2.FractionCompleted; } else if (teamEscapeScoringState2.FractionCompleted <= fractionCompleted && teamEscapeScoringState2.FractionCompleted >= num2) { entrantInfo3 = entrantInfo4; num2 = teamEscapeScoringState2.FractionCompleted; } } } if (entrantInfo3 != entrantInfo) { this.target = entrantInfo3; } if (entrantInfo2 != entrantInfo) { this.target = entrantInfo2; } return(this.target.Opponent.InternalOpponent.GetWrappedVehicle().GetWorldID()); }
// Token: 0x060013C6 RID: 5062 RVA: 0x0001CD28 File Offset: 0x0001BD28 protected internal unsafe override void Execute(ActivityExecutionContext context) { IPerfectStart perfectStart = base.Entrant.ScoringState as IPerfectStart; if (perfectStart == null) { return; } LocalHumanOpponent localHumanOpponent = base.Entrant.Opponent as LocalHumanOpponent; if (localHumanOpponent == null) { return; } bool flag = false; float duration = 0f; bool flag2 = localHumanOpponent.Vehicle.TryPerfectLaunch(&duration, &flag); if (!flag) { perfectStart.PerfectStart = PerfectStart.kPerfectStart_Unlearned; return; } if (!flag2) { perfectStart.PerfectStart = PerfectStart.kPerfectStart_Fail; return; } perfectStart.PerfectStart = PerfectStart.kPerfectStart_Success; float torque = 0f; powerup_gamegroup powerup_gamegroup = new powerup_gamegroup(3423076689u); if (powerup_gamegroup.Num_magnitude() > 0u) { float num = powerup_gamegroup.magnitude(0u); if (num > 1f) { torque = num - 1f; } } FlasherManager.Get().EnqueueFlasher(new FlasherBase(1547819931u)); new OnPerfectLaunchAchieved(localHumanOpponent.PersonaId, duration, torque).Post(Ports.Gameplay); localHumanOpponent.Hud.OnPerfectLaunchAchieved((int)localHumanOpponent.PersonaId); }
// Token: 0x06001750 RID: 5968 RVA: 0x00029BC8 File Offset: 0x00028BC8 public void TimingOut(XmlString xmlString) { EventTimingOut eventTimingOut; if (XSD2CPP.ReadEventTimingOut(xmlString, out eventTimingOut) && this.EventSessionId == eventTimingOut.EventSessionId) { this.timingOutBeginning = Simulation.GetTick(); this.timingOutInMilliseconds = eventTimingOut.TimeInMilliseconds; LocalHumanOpponent localHumanOpponent = base.Manager.OpponentManager.FindLocalOpponent(); if (localHumanOpponent != null) { EntrantInfo entrantInfo = base.FindEntrant(localHumanOpponent.PersonaId); if (entrantInfo != null && !entrantInfo.ScoringState.HasFinishReason) { Hud.EnableGadget("RaceCountdownTimer", true); } } } }