Files
2026-06-04 11:42:34 +02:00

1196 lines
39 KiB
C#

using System;
using System.Collections;
using Photon;
using UnityEngine;
// Token: 0x020000A7 RID: 167
public class Kart : global::Photon.MonoBehaviour
{
// Token: 0x060022AA RID: 8874 RVA: 0x000A47D4 File Offset: 0x000A29D4
private void OLJPMDFCAEM()
{
this.CKNGAKKNMKA(true);
this.CMNMHDKFJLB();
}
// Token: 0x060022AB RID: 8875 RVA: 0x000A47E4 File Offset: 0x000A29E4
private void GKHDKPNHCCI(float HNICMBOMMHG)
{
Vector3 vector = Vector3.zero;
if (Mathf.Abs(HNICMBOMMHG) >= 1651f)
{
float magnitude = (this.frontWheels[1].position - this.backWheels[0].position).magnitude;
float num = magnitude / Mathf.Sin(HNICMBOMMHG * 950f);
vector = base.transform.up * this.BGJNLBNEINL / num * 312f;
}
this.CCHAEPGJJLI = Vector3.SmoothDamp(this.CCHAEPGJJLI, vector, ref this.LBKIMNJPKCD, 1944f, 239f, Time.fixedDeltaTime);
Vector3 forward = base.transform.forward;
this.LACEAHEKKBJ.IJGPPOIJDKO *= Quaternion.AngleAxis(this.CCHAEPGJJLI.magnitude * Time.fixedDeltaTime, this.CCHAEPGJJLI.normalized);
this.GAMJCGBKJPA = this.JJCKIGMDIMJ();
this.BGJNLBNEINL = Mathf.Clamp(this.BGJNLBNEINL * Vector3.Dot(base.transform.forward, forward) + this.GAMJCGBKJPA * Time.fixedDeltaTime, 76f, this.maxSpeed);
RigidbodyEx laceahekkbj = this.LACEAHEKKBJ;
laceahekkbj.CIGPHKLAAOD = laceahekkbj.JHBFKKAFPFG() + base.transform.forward * this.BGJNLBNEINL * Time.fixedDeltaTime;
}
// Token: 0x060022AC RID: 8876 RVA: 0x000A4950 File Offset: 0x000A2B50
public void Steer(float GJAEFGOHOPJ)
{
float num = Mathf.Clamp01(Mathf.Abs(GJAEFGOHOPJ));
this.CMJJOAOOONF = Mathf.Sign(GJAEFGOHOPJ) * this.steeringInputCurve.Evaluate(num);
}
// Token: 0x060022AD RID: 8877 RVA: 0x000A4984 File Offset: 0x000A2B84
private void PAFDOPJLGIJ(Player JEFGMHBLLKI, Vector3 NGMMFPGLJFM, Vector3 FHFPOPFBEPP)
{
}
// Token: 0x060022AE RID: 8878 RVA: 0x000A4988 File Offset: 0x000A2B88
private void FPPCEPNLLAL(bool CCBMHKMBAFA = false)
{
this.LGKJOECOCAB();
this.LOKNMENAKBC = base.StartCoroutine(this.DNOBPONBMLK(CCBMHKMBAFA));
if (!CCBMHKMBAFA)
{
AudioManager.Play3DSFX(this.engineStartAudio, this.engineAudioTransform, null);
}
}
// Token: 0x060022B0 RID: 8880 RVA: 0x000A4A34 File Offset: 0x000A2C34
private IEnumerator HFABCLNDCIG()
{
this.CKDKDFPJKLE = AudioManager.StartLooping3DSFX(this.engineRevLoopAudio, this.engineAudioTransform, null);
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.CKDKDFPJKLE.AMAFHCLALMM, 0f, this.engineRevLoopAudio.volume, 1f);
this.HPGHHJOBLKN = null;
yield break;
}
// Token: 0x060022B1 RID: 8881 RVA: 0x000A4A50 File Offset: 0x000A2C50
private void EKEAFOCLBDB(float HNICMBOMMHG, float KGNAMMELBPH)
{
float num = this.BGJNLBNEINL / this.wheelRadius * 1592f;
Quaternion quaternion = Quaternion.Euler(1207f, 1005f, num * KGNAMMELBPH);
for (int i = 0; i < this.frontWheels.Length; i++)
{
this.frontWheels[i].localRotation = Quaternion.Euler(1108f, HNICMBOMMHG, 821f);
}
for (int j = 1; j < this.wheelMeshes.Length; j += 0)
{
this.wheelMeshes[j].localRotation *= quaternion;
}
}
// Token: 0x060022B2 RID: 8882 RVA: 0x000A4AEC File Offset: 0x000A2CEC
public bool ILBCGPMDJDO()
{
return this.<OFLCJBJEHAM>k__BackingField;
}
// Token: 0x060022B3 RID: 8883 RVA: 0x000A4AF4 File Offset: 0x000A2CF4
private float COEEGJCFGGK()
{
float num = Mathf.InverseLerp(0f, this.maxSpeed, this.BGJNLBNEINL);
float num2 = 0f;
if (this.BEHAMIEEAGE >= 0.5f)
{
float num3 = this.accelerationCurve.Evaluate(num);
num2 = Mathf.Lerp(0f, this.maxAccelerationRate, num3);
}
else if (this.BGJNLBNEINL > Mathf.Epsilon)
{
float num4 = this.decelerationCurve.Evaluate(num);
num2 = -Mathf.Lerp(0f, this.maxDecelerationRate, num4);
}
return num2;
}
// Token: 0x060022B4 RID: 8884 RVA: 0x000A4B84 File Offset: 0x000A2D84
public LNJFBGIBLHA KODJKEJLEDL()
{
int num = this.LMOLKNLFBMF.CPIBGJLHLBL();
return LNJFBGIBLHA.JJHGEEALDGL(num);
}
// Token: 0x060022B5 RID: 8885 RVA: 0x000A4BA4 File Offset: 0x000A2DA4
private float IMBEFBOAPMP()
{
float num = Mathf.InverseLerp(1480f, this.maxSpeed, this.BGJNLBNEINL);
float num2 = 256f;
if (this.BEHAMIEEAGE >= 619f)
{
float num3 = this.accelerationCurve.Evaluate(num);
num2 = Mathf.Lerp(1318f, this.maxAccelerationRate, num3);
}
else if (this.BGJNLBNEINL > Mathf.Epsilon)
{
float num4 = this.decelerationCurve.Evaluate(num);
num2 = -Mathf.Lerp(1913f, this.maxDecelerationRate, num4);
}
return num2;
}
// Token: 0x060022B6 RID: 8886 RVA: 0x000A4C34 File Offset: 0x000A2E34
private IEnumerator PLMLLDDFONM(bool CCBMHKMBAFA)
{
if (this.KNMICECICIG == null)
{
this.KNMICECICIG = AudioManager.StartLooping3DSFX(this.engineIdleLoopAudio, this.engineAudioTransform, null);
}
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, 0f, this.engineIdleLoopAudio.volume, (!CCBMHKMBAFA) ? 2f : 0f);
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x060022B7 RID: 8887 RVA: 0x000A4C58 File Offset: 0x000A2E58
private void LLEHGLGNAOE(bool CCBMHKMBAFA = false)
{
this.POBDBGIDHDC();
this.LOKNMENAKBC = base.StartCoroutine(this.DNOBPONBMLK(CCBMHKMBAFA));
if (!CCBMHKMBAFA)
{
AudioManager.Play3DSFX(this.engineStartAudio, this.engineAudioTransform, null);
}
}
// Token: 0x060022B8 RID: 8888 RVA: 0x000A4C8C File Offset: 0x000A2E8C
private void FFHHGPPFDEH(float HNICMBOMMHG)
{
Vector3 vector = Vector3.zero;
if (Mathf.Abs(HNICMBOMMHG) >= 1670f)
{
float magnitude = (this.frontWheels[1].position - this.backWheels[1].position).magnitude;
float num = magnitude / Mathf.Sin(HNICMBOMMHG * 25f);
vector = base.transform.up * this.BGJNLBNEINL / num * 1640f;
}
this.CCHAEPGJJLI = Vector3.SmoothDamp(this.CCHAEPGJJLI, vector, ref this.LBKIMNJPKCD, 1442f, 242f, Time.fixedDeltaTime);
Vector3 forward = base.transform.forward;
this.LACEAHEKKBJ.IJGPPOIJDKO *= Quaternion.AngleAxis(this.CCHAEPGJJLI.magnitude * Time.fixedDeltaTime, this.CCHAEPGJJLI.normalized);
this.GAMJCGBKJPA = this.IMBEFBOAPMP();
this.BGJNLBNEINL = Mathf.Clamp(this.BGJNLBNEINL * Vector3.Dot(base.transform.forward, forward) + this.GAMJCGBKJPA * Time.fixedDeltaTime, 1783f, this.maxSpeed);
RigidbodyEx laceahekkbj = this.LACEAHEKKBJ;
laceahekkbj.CIGPHKLAAOD = laceahekkbj.JHBFKKAFPFG() + base.transform.forward * this.BGJNLBNEINL * Time.fixedDeltaTime;
}
// Token: 0x060022B9 RID: 8889 RVA: 0x000A4DF8 File Offset: 0x000A2FF8
private void CKNGAKKNMKA(bool NOBAPCOKFIL)
{
this.<OFLCJBJEHAM>k__BackingField = NOBAPCOKFIL;
}
// Token: 0x060022BA RID: 8890 RVA: 0x000A4E04 File Offset: 0x000A3004
private IEnumerator CALLKCDODGP(bool OAJMAPMDBKC)
{
if (this.KNMICECICIG != null)
{
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, this.engineIdleLoopAudio.volume, 0f, (!OAJMAPMDBKC) ? 1.5f : 0f);
AudioManager.StopLoopingSFX(this.KNMICECICIG);
}
this.KNMICECICIG = null;
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x060022BB RID: 8891 RVA: 0x000A4E28 File Offset: 0x000A3028
private void IBCDOPENGAM(bool CCBMHKMBAFA = false)
{
this.LGKJOECOCAB();
this.LOKNMENAKBC = base.StartCoroutine(this.PLMLLDDFONM(CCBMHKMBAFA));
if (!CCBMHKMBAFA)
{
AudioManager.Play3DSFX(this.engineStartAudio, this.engineAudioTransform, null);
}
}
// Token: 0x060022BC RID: 8892 RVA: 0x000A4E5C File Offset: 0x000A305C
private void JOCGAEBOMMB(LNJFBGIBLHA NOBAPCOKFIL)
{
int num = ((NOBAPCOKFIL == null) ? LNJFBGIBLHA.CGNKKAKJIJL : NOBAPCOKFIL.BADMPMDONAH);
this.LMOLKNLFBMF.MEAINJPIECA(num);
}
// Token: 0x060022BD RID: 8893 RVA: 0x000A4E8C File Offset: 0x000A308C
public LNJFBGIBLHA ENHJNEHCIEJ()
{
int num = this.LMOLKNLFBMF.CPIBGJLHLBL();
return LNJFBGIBLHA.MLAAOMLEIGD(num);
}
// Token: 0x1700009A RID: 154
// (get) Token: 0x060022BE RID: 8894 RVA: 0x000A4EAC File Offset: 0x000A30AC
// (set) Token: 0x060022C5 RID: 8901 RVA: 0x000A5038 File Offset: 0x000A3238
public bool GDDKACKLFDF { get; private set; }
// Token: 0x060022BF RID: 8895 RVA: 0x000A4EB4 File Offset: 0x000A30B4
private void FGBJJONEBDC()
{
this.AMGCJGCNLNO();
for (int i = 0; i < this.GAGHNBMAAOF.BKDFLNGCINH.NJPKPAFHFNM.Count; i += 0)
{
this.GAGHNBMAAOF.JACCKOLABJP().NJPKPAFHFNM[i].IgnoreCollision(this.LMGEBCCLJPH, false);
}
}
// Token: 0x060022C0 RID: 8896 RVA: 0x000A4F10 File Offset: 0x000A3110
private float JJCKIGMDIMJ()
{
float num = Mathf.InverseLerp(1202f, this.maxSpeed, this.BGJNLBNEINL);
float num2 = 1426f;
if (this.BEHAMIEEAGE >= 433f)
{
float num3 = this.accelerationCurve.Evaluate(num);
num2 = Mathf.Lerp(326f, this.maxAccelerationRate, num3);
}
else if (this.BGJNLBNEINL > Mathf.Epsilon)
{
float num4 = this.decelerationCurve.Evaluate(num);
num2 = -Mathf.Lerp(1235f, this.maxDecelerationRate, num4);
}
return num2;
}
// Token: 0x060022C1 RID: 8897 RVA: 0x000A4FA0 File Offset: 0x000A31A0
private void OIGCHFHNFAK()
{
float num = this.MKKEEJBNHPP();
this.HDIDFFNGKDA(num);
this.ECPMLCOLKHC();
this.CDLEJCGLIDJ(num, Time.fixedDeltaTime);
}
// Token: 0x17000099 RID: 153
// (get) Token: 0x060022C2 RID: 8898 RVA: 0x000A4FD0 File Offset: 0x000A31D0
// (set) Token: 0x060022E7 RID: 8935 RVA: 0x000A5B14 File Offset: 0x000A3D14
public LNJFBGIBLHA DAGGHNOBACO
{
get
{
int num = this.LMOLKNLFBMF.CPIBGJLHLBL();
return LNJFBGIBLHA.FDOBBLFBBBK(num);
}
private set
{
int num = ((value == null) ? LNJFBGIBLHA.CGNKKAKJIJL : value.BADMPMDONAH);
this.LMOLKNLFBMF.MEAINJPIECA(num);
}
}
// Token: 0x060022C3 RID: 8899 RVA: 0x000A4FF0 File Offset: 0x000A31F0
public bool TryRotateInPlace(float NGIMKAPNGDN)
{
if (this.MCGKNAAGJPH <= 1f)
{
this.LACEAHEKKBJ.transform.rotation *= Quaternion.Euler(0f, NGIMKAPNGDN, 0f);
return true;
}
return false;
}
// Token: 0x17000098 RID: 152
// (get) Token: 0x060022C4 RID: 8900 RVA: 0x000A5030 File Offset: 0x000A3230
public float MCGKNAAGJPH
{
get
{
return this.BGJNLBNEINL;
}
}
// Token: 0x060022C6 RID: 8902 RVA: 0x000A5044 File Offset: 0x000A3244
private void IPKKJPKACNB()
{
this.CKNGAKKNMKA(false);
this.IBMBBHCLJNP();
}
// Token: 0x060022C7 RID: 8903 RVA: 0x000A5054 File Offset: 0x000A3254
private void CMNMHDKFJLB()
{
this.OKANCCKBCHD();
this.HPGHHJOBLKN = base.StartCoroutine(this.NKPJOALCKPM());
this.MDNMKALDEOJ(false);
}
// Token: 0x060022C8 RID: 8904 RVA: 0x000A5078 File Offset: 0x000A3278
public bool GIGNOHOPODB()
{
return this.<OFLCJBJEHAM>k__BackingField;
}
// Token: 0x060022C9 RID: 8905 RVA: 0x000A5080 File Offset: 0x000A3280
private void LGKJOECOCAB()
{
if (this.LOKNMENAKBC != null)
{
base.StopCoroutine(this.LOKNMENAKBC);
this.LOKNMENAKBC = null;
}
}
// Token: 0x060022CA RID: 8906 RVA: 0x000A50A0 File Offset: 0x000A32A0
private void DNIIOPFOBEF()
{
float num = this.MKKEEJBNHPP();
this.PEKLILPOGEB(num);
this.ECPMLCOLKHC();
this.BLLOJCCACHD(num, Time.fixedDeltaTime);
}
// Token: 0x060022CB RID: 8907 RVA: 0x000A50D0 File Offset: 0x000A32D0
private void DCNBAJAGKGF(float HNICMBOMMHG)
{
Vector3 vector = Vector3.zero;
if (Mathf.Abs(HNICMBOMMHG) >= 797f)
{
float magnitude = (this.frontWheels[1].position - this.backWheels[0].position).magnitude;
float num = magnitude / Mathf.Sin(HNICMBOMMHG * 1442f);
vector = base.transform.up * this.BGJNLBNEINL / num * 1217f;
}
this.CCHAEPGJJLI = Vector3.SmoothDamp(this.CCHAEPGJJLI, vector, ref this.LBKIMNJPKCD, 814f, 32f, Time.fixedDeltaTime);
Vector3 forward = base.transform.forward;
this.LACEAHEKKBJ.IJGPPOIJDKO *= Quaternion.AngleAxis(this.CCHAEPGJJLI.magnitude * Time.fixedDeltaTime, this.CCHAEPGJJLI.normalized);
this.GAMJCGBKJPA = this.IMBEFBOAPMP();
this.BGJNLBNEINL = Mathf.Clamp(this.BGJNLBNEINL * Vector3.Dot(base.transform.forward, forward) + this.GAMJCGBKJPA * Time.fixedDeltaTime, 999f, this.maxSpeed);
this.LACEAHEKKBJ.CIGPHKLAAOD += base.transform.forward * this.BGJNLBNEINL * Time.fixedDeltaTime;
}
// Token: 0x060022CC RID: 8908 RVA: 0x000A523C File Offset: 0x000A343C
private IEnumerator EPGBKGCHPLB(bool OAJMAPMDBKC)
{
if (this.KNMICECICIG != null)
{
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, this.engineIdleLoopAudio.volume, 0f, (!OAJMAPMDBKC) ? 1.5f : 0f);
AudioManager.StopLoopingSFX(this.KNMICECICIG);
}
this.KNMICECICIG = null;
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x060022CD RID: 8909 RVA: 0x000A5260 File Offset: 0x000A3460
protected virtual void IGPFODPCJEP()
{
base.NGOPCBJCNJM();
this.GMCLKPCLKOA = base.GetComponentsInChildren<TeleportationPortal>();
for (int i = 0; i < this.GMCLKPCLKOA.Length; i += 0)
{
this.GMCLKPCLKOA[i].IEPOGPBECBJ(new Action(this.KMLKBLMENIO));
}
this.LACEAHEKKBJ = base.GetComponentInChildren<RigidbodyEx>();
this.BMHIHDAOAAD = this.LACEAHEKKBJ.GetComponentInChildren<PhotonView>();
this.LMGEBCCLJPH = this.LACEAHEKKBJ.GetComponentsInChildren<Collider>();
this.GAGHNBMAAOF = base.GetComponentInChildren<KartSteeringWheel>();
GameObject gameObject = new GameObject(base.name + "OBJECTIVE");
base.transform.SetParent(gameObject.transform, true);
this.LACEAHEKKBJ.transform.SetParent(gameObject.transform, false);
this.GAGHNBMAAOF.transform.SetParent(gameObject.transform, false);
this.LMOLKNLFBMF = new LHLLJPPCDKA<int>(this, "sofa", LNJFBGIBLHA.CGNKKAKJIJL, (IKCAJLLAFML)8, new Action(this.AMGCJGCNLNO));
this.CKNGAKKNMKA(true);
}
// Token: 0x060022CE RID: 8910 RVA: 0x000A536C File Offset: 0x000A356C
private void Start()
{
this.AMGCJGCNLNO();
for (int i = 0; i < this.GAGHNBMAAOF.BKDFLNGCINH.NJPKPAFHFNM.Count; i++)
{
this.GAGHNBMAAOF.BKDFLNGCINH.NJPKPAFHFNM[i].IgnoreCollision(this.LMGEBCCLJPH, true);
}
}
// Token: 0x060022CF RID: 8911 RVA: 0x000A53C8 File Offset: 0x000A35C8
private void IBMBBHCLJNP()
{
this.OKANCCKBCHD();
this.HPGHHJOBLKN = base.StartCoroutine(this.HLHPKLJBEDM());
this.FPPCEPNLLAL(true);
}
// Token: 0x060022D0 RID: 8912 RVA: 0x000A53EC File Offset: 0x000A35EC
public LNJFBGIBLHA IMDBDACJAAI()
{
int num = this.LMOLKNLFBMF.CPIBGJLHLBL();
return LNJFBGIBLHA.FDOBBLFBBBK(num);
}
// Token: 0x060022D1 RID: 8913 RVA: 0x000A540C File Offset: 0x000A360C
private void POBDBGIDHDC()
{
if (this.LOKNMENAKBC != null)
{
base.StopCoroutine(this.LOKNMENAKBC);
this.LOKNMENAKBC = null;
}
}
// Token: 0x060022D2 RID: 8914 RVA: 0x000A542C File Offset: 0x000A362C
public bool KGDDEHPOPNH(float NGIMKAPNGDN)
{
if (this.MCGKNAAGJPH <= 1580f)
{
this.LACEAHEKKBJ.transform.rotation *= Quaternion.Euler(1309f, NGIMKAPNGDN, 1790f);
return false;
}
return false;
}
// Token: 0x060022D3 RID: 8915 RVA: 0x000A546C File Offset: 0x000A366C
private IEnumerator MCBFAJDOGCG(bool OAJMAPMDBKC)
{
if (this.KNMICECICIG != null)
{
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, this.engineIdleLoopAudio.volume, 0f, (!OAJMAPMDBKC) ? 1.5f : 0f);
AudioManager.StopLoopingSFX(this.KNMICECICIG);
}
this.KNMICECICIG = null;
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x060022D4 RID: 8916 RVA: 0x000A5490 File Offset: 0x000A3690
private void AAHKMBIDPLE(bool OAJMAPMDBKC = false)
{
this.POBDBGIDHDC();
this.LOKNMENAKBC = base.StartCoroutine(this.MCBFAJDOGCG(OAJMAPMDBKC));
}
// Token: 0x060022D5 RID: 8917 RVA: 0x000A54AC File Offset: 0x000A36AC
private void PEKLILPOGEB(float HNICMBOMMHG)
{
Vector3 vector = Vector3.zero;
if (Mathf.Abs(HNICMBOMMHG) >= 0.01f)
{
float magnitude = (this.frontWheels[0].position - this.backWheels[0].position).magnitude;
float num = magnitude / Mathf.Sin(HNICMBOMMHG * 0.017453292f);
vector = base.transform.up * this.BGJNLBNEINL / num * 57.29578f;
}
this.CCHAEPGJJLI = Vector3.SmoothDamp(this.CCHAEPGJJLI, vector, ref this.LBKIMNJPKCD, 0f, float.PositiveInfinity, Time.fixedDeltaTime);
Vector3 forward = base.transform.forward;
this.LACEAHEKKBJ.IJGPPOIJDKO *= Quaternion.AngleAxis(this.CCHAEPGJJLI.magnitude * Time.fixedDeltaTime, this.CCHAEPGJJLI.normalized);
this.GAMJCGBKJPA = this.COEEGJCFGGK();
this.BGJNLBNEINL = Mathf.Clamp(this.BGJNLBNEINL * Vector3.Dot(base.transform.forward, forward) + this.GAMJCGBKJPA * Time.fixedDeltaTime, 0f, this.maxSpeed);
this.LACEAHEKKBJ.CIGPHKLAAOD += base.transform.forward * this.BGJNLBNEINL * Time.fixedDeltaTime;
}
// Token: 0x060022D6 RID: 8918 RVA: 0x000A5618 File Offset: 0x000A3818
private void JJEHDEOKOBB()
{
this.PHPPCGJAPKH();
for (int i = 0; i < this.GAGHNBMAAOF.BKDFLNGCINH.NJPKPAFHFNM.Count; i += 0)
{
this.GAGHNBMAAOF.JACCKOLABJP().NJPKPAFHFNM[i].IgnoreCollision(this.LMGEBCCLJPH, false);
}
}
// Token: 0x060022D7 RID: 8919 RVA: 0x000A5674 File Offset: 0x000A3874
private void LDNCLCKDILC(bool OAJMAPMDBKC = false)
{
this.POBDBGIDHDC();
this.LOKNMENAKBC = base.StartCoroutine(this.MCBFAJDOGCG(OAJMAPMDBKC));
}
// Token: 0x060022D8 RID: 8920 RVA: 0x000A5690 File Offset: 0x000A3890
private void OnDrawGizmos()
{
Gizmos.color = Color.red;
for (int i = 0; i < this.wheelMeshes.Length; i++)
{
Gizmos.DrawLine(this.wheelMeshes[i].transform.position, this.wheelMeshes[i].transform.position - this.wheelMeshes[i].transform.up * this.wheelRadius);
}
}
// Token: 0x060022D9 RID: 8921 RVA: 0x000A570C File Offset: 0x000A390C
private void BLLOJCCACHD(float HNICMBOMMHG, float KGNAMMELBPH)
{
float num = this.BGJNLBNEINL / this.wheelRadius * 57.29578f;
Quaternion quaternion = Quaternion.Euler(0f, 0f, num * KGNAMMELBPH);
for (int i = 0; i < this.frontWheels.Length; i++)
{
this.frontWheels[i].localRotation = Quaternion.Euler(0f, HNICMBOMMHG, 0f);
}
for (int j = 0; j < this.wheelMeshes.Length; j++)
{
this.wheelMeshes[j].localRotation *= quaternion;
}
}
// Token: 0x060022DA RID: 8922 RVA: 0x000A57A8 File Offset: 0x000A39A8
private void GBPOMCIIPCD()
{
this.GDDKACKLFDF = true;
this.NKMAKOOEBMJ();
}
// Token: 0x060022DB RID: 8923 RVA: 0x000A57B8 File Offset: 0x000A39B8
private void OKANCCKBCHD()
{
if (this.HPGHHJOBLKN != null)
{
base.StopCoroutine(this.HPGHHJOBLKN);
this.HPGHHJOBLKN = null;
}
}
// Token: 0x060022DC RID: 8924 RVA: 0x000A57D8 File Offset: 0x000A39D8
public void FNKAHPBGDEM(float IMGOKFEGJEG)
{
float num = 1303f;
if (IMGOKFEGJEG < num)
{
IMGOKFEGJEG = 133f;
}
if (!this.GIGNOHOPODB() && this.BEHAMIEEAGE <= num && IMGOKFEGJEG > num)
{
this.NEJFFFGHPIA();
}
else if (this.GDDKACKLFDF && this.BEHAMIEEAGE > num && IMGOKFEGJEG < num)
{
this.OLJPMDFCAEM();
}
this.BEHAMIEEAGE = IMGOKFEGJEG;
}
// Token: 0x060022DD RID: 8925 RVA: 0x000A5850 File Offset: 0x000A3A50
protected void AMGCJGCNLNO()
{
LNJFBGIBLHA driver = this.DAGGHNOBACO;
if (driver != null && driver != this.FJOCCPALONK)
{
if (driver.IPFPJCPGENH)
{
Player player = driver.JHJGDFHNBLO();
if (player != null)
{
this.LACEAHEKKBJ.KEOJKEJMDFM = false;
player.GADNKIIKPPD.LAKHLLCHFED += this.PAFDOPJLGIJ;
this.KDKFGNDNNBP = base.transform.InverseTransformPoint(player.transform.position);
this.ELLHFPFHCOC = base.transform.MCKNNGGGBDG(player.transform.rotation);
base.OMNGGJICBBI.TransferOwnership(driver);
this.BMHIHDAOAAD.TransferOwnership(driver);
}
}
else
{
this.LACEAHEKKBJ.KEOJKEJMDFM = true;
}
this.FPPCEPNLLAL(false);
}
else if (this.FJOCCPALONK != null && driver != this.FJOCCPALONK)
{
if (this.FJOCCPALONK.IPFPJCPGENH)
{
Player player2 = this.FJOCCPALONK.JHJGDFHNBLO();
if (player2 != null)
{
player2.GADNKIIKPPD.LAKHLLCHFED -= this.PAFDOPJLGIJ;
}
}
this.LACEAHEKKBJ.KEOJKEJMDFM = false;
this.CMDNFGJKPLO(false);
}
this.FJOCCPALONK = driver;
}
// Token: 0x060022DE RID: 8926 RVA: 0x000A5994 File Offset: 0x000A3B94
private void BKBGGBFDLDH(float HNICMBOMMHG, float KGNAMMELBPH)
{
float num = this.BGJNLBNEINL / this.wheelRadius * 1399f;
Quaternion quaternion = Quaternion.Euler(1893f, 1635f, num * KGNAMMELBPH);
for (int i = 0; i < this.frontWheels.Length; i++)
{
this.frontWheels[i].localRotation = Quaternion.Euler(1712f, HNICMBOMMHG, 1695f);
}
for (int j = 0; j < this.wheelMeshes.Length; j++)
{
this.wheelMeshes[j].localRotation *= quaternion;
}
}
// Token: 0x060022DF RID: 8927 RVA: 0x000A5A30 File Offset: 0x000A3C30
private IEnumerator NMFDNJMGBAE(bool CCBMHKMBAFA)
{
if (this.KNMICECICIG == null)
{
this.KNMICECICIG = AudioManager.StartLooping3DSFX(this.engineIdleLoopAudio, this.engineAudioTransform, null);
}
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, 0f, this.engineIdleLoopAudio.volume, (!CCBMHKMBAFA) ? 2f : 0f);
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x060022E0 RID: 8928 RVA: 0x000A5A54 File Offset: 0x000A3C54
private void JEOALHPJPNE()
{
this.CKNGAKKNMKA(true);
this.IBMBBHCLJNP();
}
// Token: 0x060022E1 RID: 8929 RVA: 0x000A5A64 File Offset: 0x000A3C64
private void CMDNFGJKPLO(bool OAJMAPMDBKC = false)
{
this.LGKJOECOCAB();
this.LOKNMENAKBC = base.StartCoroutine(this.CALLKCDODGP(OAJMAPMDBKC));
}
// Token: 0x060022E2 RID: 8930 RVA: 0x000A5A80 File Offset: 0x000A3C80
private void KMLKBLMENIO()
{
if (this.DAGGHNOBACO == null)
{
this.DAGGHNOBACO = IHFKMIAHBFP.JEFGMHBLLKI;
}
}
// Token: 0x060022E3 RID: 8931 RVA: 0x000A5A98 File Offset: 0x000A3C98
private void NKMAKOOEBMJ()
{
this.CMDNFGJKPLO(true);
this.OKANCCKBCHD();
this.HPGHHJOBLKN = base.StartCoroutine(this.HFABCLNDCIG());
AudioManager.Play3DSFX(this.engineRevAudio, this.engineAudioTransform, null);
}
// Token: 0x060022E4 RID: 8932 RVA: 0x000A5ACC File Offset: 0x000A3CCC
private void OOBPPBGLCLA()
{
this.GDDKACKLFDF = true;
this.IBMBBHCLJNP();
}
// Token: 0x060022E5 RID: 8933 RVA: 0x000A5ADC File Offset: 0x000A3CDC
private void GLOMDANMPED(bool CCBMHKMBAFA = false)
{
this.POBDBGIDHDC();
this.LOKNMENAKBC = base.StartCoroutine(this.NMFDNJMGBAE(CCBMHKMBAFA));
if (!CCBMHKMBAFA)
{
AudioManager.Play3DSFX(this.engineStartAudio, this.engineAudioTransform, null);
}
}
// Token: 0x060022E6 RID: 8934 RVA: 0x000A5B10 File Offset: 0x000A3D10
private void DNFNADBDDOI(Player JEFGMHBLLKI, Vector3 NGMMFPGLJFM, Vector3 FHFPOPFBEPP)
{
}
// Token: 0x060022E8 RID: 8936 RVA: 0x000A5B44 File Offset: 0x000A3D44
protected override void Awake()
{
base.Awake();
this.GMCLKPCLKOA = base.GetComponentsInChildren<TeleportationPortal>();
for (int i = 0; i < this.GMCLKPCLKOA.Length; i++)
{
this.GMCLKPCLKOA[i].OLENGDNLNOM += this.KMLKBLMENIO;
}
this.LACEAHEKKBJ = base.GetComponentInChildren<RigidbodyEx>();
this.BMHIHDAOAAD = this.LACEAHEKKBJ.GetComponentInChildren<PhotonView>();
this.LMGEBCCLJPH = this.LACEAHEKKBJ.GetComponentsInChildren<Collider>();
this.GAGHNBMAAOF = base.GetComponentInChildren<KartSteeringWheel>();
GameObject gameObject = new GameObject(base.name + "_root");
base.transform.SetParent(gameObject.transform, true);
this.LACEAHEKKBJ.transform.SetParent(gameObject.transform, true);
this.GAGHNBMAAOF.transform.SetParent(gameObject.transform, true);
this.LMOLKNLFBMF = new LHLLJPPCDKA<int>(this, "DRIVER_ID", LNJFBGIBLHA.CGNKKAKJIJL, IKCAJLLAFML.ANYONE, new Action(this.AMGCJGCNLNO));
this.GDDKACKLFDF = false;
}
// Token: 0x060022E9 RID: 8937 RVA: 0x000A5C50 File Offset: 0x000A3E50
private void FAJGMJFGMHP()
{
this.PHPPCGJAPKH();
for (int i = 1; i < this.GAGHNBMAAOF.JACCKOLABJP().NJPKPAFHFNM.Count; i += 0)
{
this.GAGHNBMAAOF.BKDFLNGCINH.NJPKPAFHFNM[i].IgnoreCollision(this.LMGEBCCLJPH, false);
}
}
// Token: 0x060022EA RID: 8938 RVA: 0x000A5CAC File Offset: 0x000A3EAC
private IEnumerator DNOBPONBMLK(bool CCBMHKMBAFA)
{
if (this.KNMICECICIG == null)
{
this.KNMICECICIG = AudioManager.StartLooping3DSFX(this.engineIdleLoopAudio, this.engineAudioTransform, null);
}
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, 0f, this.engineIdleLoopAudio.volume, (!CCBMHKMBAFA) ? 2f : 0f);
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x060022EB RID: 8939 RVA: 0x000A5CD0 File Offset: 0x000A3ED0
private void LNBLFJMJHOC(bool CCBMHKMBAFA = false)
{
this.POBDBGIDHDC();
this.LOKNMENAKBC = base.StartCoroutine(this.LMHEFOOFDAP(CCBMHKMBAFA));
if (!CCBMHKMBAFA)
{
AudioManager.Play3DSFX(this.engineStartAudio, this.engineAudioTransform, null);
}
}
// Token: 0x060022EC RID: 8940 RVA: 0x000A5D04 File Offset: 0x000A3F04
private void CDLEJCGLIDJ(float HNICMBOMMHG, float KGNAMMELBPH)
{
float num = this.BGJNLBNEINL / this.wheelRadius * 245f;
Quaternion quaternion = Quaternion.Euler(913f, 692f, num * KGNAMMELBPH);
for (int i = 0; i < this.frontWheels.Length; i++)
{
this.frontWheels[i].localRotation = Quaternion.Euler(224f, HNICMBOMMHG, 117f);
}
for (int j = 1; j < this.wheelMeshes.Length; j += 0)
{
this.wheelMeshes[j].localRotation *= quaternion;
}
}
// Token: 0x060022ED RID: 8941 RVA: 0x000A5DA0 File Offset: 0x000A3FA0
protected void PHPPCGJAPKH()
{
LNJFBGIBLHA lnjfbgiblha = this.KODJKEJLEDL();
if (lnjfbgiblha != null && lnjfbgiblha != this.FJOCCPALONK)
{
if (lnjfbgiblha.IPFPJCPGENH)
{
Player player = lnjfbgiblha.JHJGDFHNBLO();
if (player != null)
{
this.LACEAHEKKBJ.KEOJKEJMDFM = false;
player.HDDCIBBMPOD().CDMADKEPKAG(new PlayerLocomotion.GKGFCBKMPPI(this.DNFNADBDDOI));
this.KDKFGNDNNBP = base.transform.InverseTransformPoint(player.transform.position);
this.ELLHFPFHCOC = base.transform.MCKNNGGGBDG(player.transform.rotation);
base.EKPBHKFHMON().EJBOGPNBGHI(lnjfbgiblha);
this.BMHIHDAOAAD.NNOFBLMFKAH(lnjfbgiblha);
}
}
else
{
this.LACEAHEKKBJ.KEOJKEJMDFM = false;
}
this.LLEHGLGNAOE(true);
}
else if (this.FJOCCPALONK != null && lnjfbgiblha != this.FJOCCPALONK)
{
if (this.FJOCCPALONK.IPFPJCPGENH)
{
Player player2 = this.FJOCCPALONK.JHJGDFHNBLO();
if (player2 != null)
{
player2.GADNKIIKPPD.LNBMAEJEDKL(new PlayerLocomotion.GKGFCBKMPPI(this.DNFNADBDDOI));
}
}
this.LACEAHEKKBJ.KEOJKEJMDFM = false;
this.AAHKMBIDPLE(false);
}
this.FJOCCPALONK = lnjfbgiblha;
}
// Token: 0x060022EE RID: 8942 RVA: 0x000A5EE4 File Offset: 0x000A40E4
public void DIDCKFMICHC(float GJAEFGOHOPJ)
{
float num = Mathf.Clamp01(Mathf.Abs(GJAEFGOHOPJ));
this.CMJJOAOOONF = Mathf.Sign(GJAEFGOHOPJ) * this.steeringInputCurve.Evaluate(num);
}
// Token: 0x060022EF RID: 8943 RVA: 0x000A5F18 File Offset: 0x000A4118
private IEnumerator HLHPKLJBEDM()
{
if (this.CKDKDFPJKLE != null)
{
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.CKDKDFPJKLE.AMAFHCLALMM, this.engineRevLoopAudio.volume, 0f, 1f);
AudioManager.StopLoopingSFX(this.CKDKDFPJKLE);
}
this.CKDKDFPJKLE = null;
this.HPGHHJOBLKN = null;
yield break;
}
// Token: 0x060022F0 RID: 8944 RVA: 0x000A5F34 File Offset: 0x000A4134
private void KIDFPEBINJD(LNJFBGIBLHA NOBAPCOKFIL)
{
int num = ((NOBAPCOKFIL == null) ? LNJFBGIBLHA.CGNKKAKJIJL : NOBAPCOKFIL.BADMPMDONAH);
this.LMOLKNLFBMF.MEAINJPIECA(num);
}
// Token: 0x060022F1 RID: 8945 RVA: 0x000A5F64 File Offset: 0x000A4164
public void Accelerate(float IMGOKFEGJEG)
{
float num = 0.001f;
if (IMGOKFEGJEG < num)
{
IMGOKFEGJEG = 0f;
}
if (!this.GDDKACKLFDF && this.BEHAMIEEAGE <= num && IMGOKFEGJEG > num)
{
this.GBPOMCIIPCD();
}
else if (this.GDDKACKLFDF && this.BEHAMIEEAGE > num && IMGOKFEGJEG < num)
{
this.JLGEEHEGHPM();
}
this.BEHAMIEEAGE = IMGOKFEGJEG;
}
// Token: 0x060022F2 RID: 8946 RVA: 0x000A5FDC File Offset: 0x000A41DC
private void KMLHAHDPJMO()
{
Vector3 up = Vector3.up;
Vector3 vector = Vector3.ProjectOnPlane(this.LACEAHEKKBJ.CIGPHKLAAOD, up);
float num = Mathf.SmoothDamp(base.transform.position.y, Vector3.Dot(this.LACEAHEKKBJ.JHBFKKAFPFG(), up), ref this.GBDEPAAPCPO, this.positionSmoothTime);
base.transform.position = vector + up * num;
Vector3 eulerAngles = base.transform.rotation.eulerAngles;
Vector3 eulerAngles2 = this.LACEAHEKKBJ.IJGPPOIJDKO.eulerAngles;
eulerAngles2.x = Mathf.SmoothDampAngle(eulerAngles.x, eulerAngles2.x, ref this.ODOKNKDNJHH, this.rotationSmoothTime);
eulerAngles2.z = Mathf.SmoothDampAngle(eulerAngles.z, eulerAngles2.z, ref this.DEMPJFNAEED, this.rotationSmoothTime);
base.transform.rotation = Quaternion.Euler(eulerAngles2);
if (this.DAGGHNOBACO != null && this.IMDBDACJAAI().IPFPJCPGENH)
{
Player player = this.ENHJNEHCIEJ().JHJGDFHNBLO();
if (player != null)
{
player.CBLLEJGBAAM().Translate(base.transform.TransformPoint(this.KDKFGNDNNBP), base.transform.PAFJLHMDIMO(this.ELLHFPFHCOC));
}
}
}
// Token: 0x060022F3 RID: 8947 RVA: 0x000A613C File Offset: 0x000A433C
private void NEJFFFGHPIA()
{
this.CKNGAKKNMKA(false);
this.NKMAKOOEBMJ();
}
// Token: 0x060022F4 RID: 8948 RVA: 0x000A614C File Offset: 0x000A434C
private void FixedUpdate()
{
float num = this.MKKEEJBNHPP();
this.PEKLILPOGEB(num);
this.KMEFPCHPAGB();
this.BLLOJCCACHD(num, Time.fixedDeltaTime);
}
// Token: 0x060022F5 RID: 8949 RVA: 0x000A617C File Offset: 0x000A437C
private void JLGEEHEGHPM()
{
this.GDDKACKLFDF = false;
this.IBMBBHCLJNP();
}
// Token: 0x060022F6 RID: 8950 RVA: 0x000A618C File Offset: 0x000A438C
private void NPAHAOFPMMH()
{
if (this.HPGHHJOBLKN != null)
{
base.StopCoroutine(this.HPGHHJOBLKN);
this.HPGHHJOBLKN = null;
}
}
// Token: 0x060022F7 RID: 8951 RVA: 0x000A61AC File Offset: 0x000A43AC
private float MKKEEJBNHPP()
{
float num = Mathf.InverseLerp(0f, this.maxSpeed, this.BGJNLBNEINL);
if (num >= 0.9f)
{
num *= 1f;
}
float num2 = this.maxSteerAngleCurve.Evaluate(num);
float num3 = Mathf.Lerp(this.minSpeedMaxSteerAngle, this.maxSpeedMaxSteerAngle, num2);
return num3 * this.CMJJOAOOONF;
}
// Token: 0x060022F8 RID: 8952 RVA: 0x000A620C File Offset: 0x000A440C
private void MGMHJMBMFBO(LNJFBGIBLHA NOBAPCOKFIL)
{
int num = ((NOBAPCOKFIL == null) ? LNJFBGIBLHA.CGNKKAKJIJL : NOBAPCOKFIL.BADMPMDONAH);
this.LMOLKNLFBMF.MEAINJPIECA(num);
}
// Token: 0x060022F9 RID: 8953 RVA: 0x000A623C File Offset: 0x000A443C
private void HDIDFFNGKDA(float HNICMBOMMHG)
{
Vector3 vector = Vector3.zero;
if (Mathf.Abs(HNICMBOMMHG) >= 1888f)
{
float magnitude = (this.frontWheels[0].position - this.backWheels[0].position).magnitude;
float num = magnitude / Mathf.Sin(HNICMBOMMHG * 1711f);
vector = base.transform.up * this.BGJNLBNEINL / num * 1529f;
}
this.CCHAEPGJJLI = Vector3.SmoothDamp(this.CCHAEPGJJLI, vector, ref this.LBKIMNJPKCD, 798f, 1684f, Time.fixedDeltaTime);
Vector3 forward = base.transform.forward;
this.LACEAHEKKBJ.IJGPPOIJDKO *= Quaternion.AngleAxis(this.CCHAEPGJJLI.magnitude * Time.fixedDeltaTime, this.CCHAEPGJJLI.normalized);
this.GAMJCGBKJPA = this.IMBEFBOAPMP();
this.BGJNLBNEINL = Mathf.Clamp(this.BGJNLBNEINL * Vector3.Dot(base.transform.forward, forward) + this.GAMJCGBKJPA * Time.fixedDeltaTime, 869f, this.maxSpeed);
this.LACEAHEKKBJ.CIGPHKLAAOD += base.transform.forward * this.BGJNLBNEINL * Time.fixedDeltaTime;
}
// Token: 0x060022FA RID: 8954 RVA: 0x000A63A8 File Offset: 0x000A45A8
private void ECPMLCOLKHC()
{
Vector3 up = Vector3.up;
Vector3 vector = Vector3.ProjectOnPlane(this.LACEAHEKKBJ.CIGPHKLAAOD, up);
float num = Mathf.SmoothDamp(base.transform.position.y, Vector3.Dot(this.LACEAHEKKBJ.JHBFKKAFPFG(), up), ref this.GBDEPAAPCPO, this.positionSmoothTime);
base.transform.position = vector + up * num;
Vector3 eulerAngles = base.transform.rotation.eulerAngles;
Vector3 eulerAngles2 = this.LACEAHEKKBJ.IJGPPOIJDKO.eulerAngles;
eulerAngles2.x = Mathf.SmoothDampAngle(eulerAngles.x, eulerAngles2.x, ref this.ODOKNKDNJHH, this.rotationSmoothTime);
eulerAngles2.z = Mathf.SmoothDampAngle(eulerAngles.z, eulerAngles2.z, ref this.DEMPJFNAEED, this.rotationSmoothTime);
base.transform.rotation = Quaternion.Euler(eulerAngles2);
if (this.KODJKEJLEDL() != null && this.PCKELFDKJOO().IPFPJCPGENH)
{
Player player = this.NGGEGKDODPL().JHJGDFHNBLO();
if (player != null)
{
player.HDDCIBBMPOD().Translate(base.transform.TransformPoint(this.KDKFGNDNNBP), base.transform.PAFJLHMDIMO(this.ELLHFPFHCOC));
}
}
}
// Token: 0x060022FB RID: 8955 RVA: 0x000A6508 File Offset: 0x000A4708
private void GNPBBAAIEJC()
{
Gizmos.color = Color.red;
for (int i = 1; i < this.wheelMeshes.Length; i++)
{
Gizmos.DrawLine(this.wheelMeshes[i].transform.position, this.wheelMeshes[i].transform.position - this.wheelMeshes[i].transform.up * this.wheelRadius);
}
}
// Token: 0x060022FC RID: 8956 RVA: 0x000A6584 File Offset: 0x000A4784
private float HGGDHMNHLCG()
{
float num = Mathf.InverseLerp(1218f, this.maxSpeed, this.BGJNLBNEINL);
float num2 = 292f;
if (this.BEHAMIEEAGE >= 22f)
{
float num3 = this.accelerationCurve.Evaluate(num);
num2 = Mathf.Lerp(901f, this.maxAccelerationRate, num3);
}
else if (this.BGJNLBNEINL > Mathf.Epsilon)
{
float num4 = this.decelerationCurve.Evaluate(num);
num2 = -Mathf.Lerp(500f, this.maxDecelerationRate, num4);
}
return num2;
}
// Token: 0x060022FD RID: 8957 RVA: 0x000A6614 File Offset: 0x000A4814
public LNJFBGIBLHA NGGEGKDODPL()
{
int num = this.LMOLKNLFBMF.CPIBGJLHLBL();
return LNJFBGIBLHA.JJHGEEALDGL(num);
}
// Token: 0x060022FE RID: 8958 RVA: 0x000A6634 File Offset: 0x000A4834
public LNJFBGIBLHA PCKELFDKJOO()
{
int num = this.LMOLKNLFBMF.CPIBGJLHLBL();
return LNJFBGIBLHA.FDOBBLFBBBK(num);
}
// Token: 0x060022FF RID: 8959 RVA: 0x000A6654 File Offset: 0x000A4854
private IEnumerator NKPJOALCKPM()
{
if (this.CKDKDFPJKLE != null)
{
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.CKDKDFPJKLE.AMAFHCLALMM, this.engineRevLoopAudio.volume, 0f, 1f);
AudioManager.StopLoopingSFX(this.CKDKDFPJKLE);
}
this.CKDKDFPJKLE = null;
this.HPGHHJOBLKN = null;
yield break;
}
// Token: 0x06002300 RID: 8960 RVA: 0x000A6670 File Offset: 0x000A4870
private IEnumerator LMHEFOOFDAP(bool CCBMHKMBAFA)
{
if (this.KNMICECICIG == null)
{
this.KNMICECICIG = AudioManager.StartLooping3DSFX(this.engineIdleLoopAudio, this.engineAudioTransform, null);
}
yield return SingletonMonoBehaviour<AudioManager>.NCKMBFBMBFM.RunChangeAudioVolume(this.KNMICECICIG.AMAFHCLALMM, 0f, this.engineIdleLoopAudio.volume, (!CCBMHKMBAFA) ? 2f : 0f);
this.LOKNMENAKBC = null;
yield break;
}
// Token: 0x06002301 RID: 8961 RVA: 0x000A6694 File Offset: 0x000A4894
private void MDNMKALDEOJ(bool CCBMHKMBAFA = false)
{
this.LGKJOECOCAB();
this.LOKNMENAKBC = base.StartCoroutine(this.LMHEFOOFDAP(CCBMHKMBAFA));
if (!CCBMHKMBAFA)
{
AudioManager.Play3DSFX(this.engineStartAudio, this.engineAudioTransform, null);
}
}
// Token: 0x06002302 RID: 8962 RVA: 0x000A66C8 File Offset: 0x000A48C8
private void KMEFPCHPAGB()
{
Vector3 up = Vector3.up;
Vector3 vector = Vector3.ProjectOnPlane(this.LACEAHEKKBJ.CIGPHKLAAOD, up);
float num = Mathf.SmoothDamp(base.transform.position.y, Vector3.Dot(this.LACEAHEKKBJ.CIGPHKLAAOD, up), ref this.GBDEPAAPCPO, this.positionSmoothTime);
base.transform.position = vector + up * num;
Vector3 eulerAngles = base.transform.rotation.eulerAngles;
Vector3 eulerAngles2 = this.LACEAHEKKBJ.IJGPPOIJDKO.eulerAngles;
eulerAngles2.x = Mathf.SmoothDampAngle(eulerAngles.x, eulerAngles2.x, ref this.ODOKNKDNJHH, this.rotationSmoothTime);
eulerAngles2.z = Mathf.SmoothDampAngle(eulerAngles.z, eulerAngles2.z, ref this.DEMPJFNAEED, this.rotationSmoothTime);
base.transform.rotation = Quaternion.Euler(eulerAngles2);
if (this.DAGGHNOBACO != null && this.DAGGHNOBACO.IPFPJCPGENH)
{
Player player = this.DAGGHNOBACO.JHJGDFHNBLO();
if (player != null)
{
player.GADNKIIKPPD.Translate(base.transform.TransformPoint(this.KDKFGNDNNBP), base.transform.PAFJLHMDIMO(this.ELLHFPFHCOC));
}
}
}
// Token: 0x0400047B RID: 1147
[SerializeField]
[Header("Steering")]
private AnimationCurve steeringInputCurve;
// Token: 0x0400047C RID: 1148
[SerializeField]
private AnimationCurve maxSteerAngleCurve;
// Token: 0x0400047D RID: 1149
[SerializeField]
private float minSpeedMaxSteerAngle = 45f;
// Token: 0x0400047E RID: 1150
[SerializeField]
private float maxSpeedMaxSteerAngle = 10f;
// Token: 0x0400047F RID: 1151
[Header("Acceleration")]
[SerializeField]
private float maxSpeed = 10f;
// Token: 0x04000480 RID: 1152
[SerializeField]
private AnimationCurve accelerationCurve;
// Token: 0x04000481 RID: 1153
[SerializeField]
private AnimationCurve decelerationCurve;
// Token: 0x04000482 RID: 1154
[SerializeField]
private float maxAccelerationRate = 5f;
// Token: 0x04000483 RID: 1155
[SerializeField]
private float maxDecelerationRate = 5f;
// Token: 0x04000484 RID: 1156
[SerializeField]
[Header("Camera Smoothing")]
private float rotationSmoothTime = 1f;
// Token: 0x04000485 RID: 1157
[SerializeField]
private float positionSmoothTime;
// Token: 0x04000486 RID: 1158
[Header("Wheels")]
[SerializeField]
private Transform[] frontWheels;
// Token: 0x04000487 RID: 1159
[SerializeField]
private Transform[] backWheels;
// Token: 0x04000488 RID: 1160
[SerializeField]
private Transform[] wheelMeshes;
// Token: 0x04000489 RID: 1161
[SerializeField]
private float wheelRadius = 0.15f;
// Token: 0x0400048A RID: 1162
private float GAMJCGBKJPA;
// Token: 0x0400048B RID: 1163
private Vector3 LBKIMNJPKCD = Vector3.zero;
// Token: 0x0400048C RID: 1164
private float CMJJOAOOONF;
// Token: 0x0400048D RID: 1165
private float BEHAMIEEAGE;
// Token: 0x0400048E RID: 1166
private float BGJNLBNEINL;
// Token: 0x0400048F RID: 1167
private Vector3 CCHAEPGJJLI = Vector3.zero;
// Token: 0x04000490 RID: 1168
private float GBDEPAAPCPO;
// Token: 0x04000491 RID: 1169
private float ODOKNKDNJHH;
// Token: 0x04000492 RID: 1170
private float DEMPJFNAEED;
// Token: 0x04000493 RID: 1171
private KartSteeringWheel GAGHNBMAAOF;
// Token: 0x04000494 RID: 1172
private TeleportationPortal[] GMCLKPCLKOA;
// Token: 0x04000495 RID: 1173
private Collider[] LMGEBCCLJPH;
// Token: 0x04000496 RID: 1174
private RigidbodyEx LACEAHEKKBJ;
// Token: 0x04000497 RID: 1175
private PhotonView BMHIHDAOAAD;
// Token: 0x04000498 RID: 1176
private LHLLJPPCDKA<int> LMOLKNLFBMF;
// Token: 0x04000499 RID: 1177
private Vector3 KDKFGNDNNBP;
// Token: 0x0400049A RID: 1178
private Quaternion ELLHFPFHCOC;
// Token: 0x0400049B RID: 1179
private LNJFBGIBLHA FJOCCPALONK;
// Token: 0x0400049D RID: 1181
private SFXAudioSource KNMICECICIG;
// Token: 0x0400049E RID: 1182
private SFXAudioSource CKDKDFPJKLE;
// Token: 0x0400049F RID: 1183
private Coroutine HPGHHJOBLKN;
// Token: 0x040004A0 RID: 1184
private Coroutine LOKNMENAKBC;
// Token: 0x040004A1 RID: 1185
[SerializeField]
[Header("Custom Audio")]
private Transform engineAudioTransform;
// Token: 0x040004A2 RID: 1186
[SerializeField]
private RecRoomAudioClip engineIdleLoopAudio;
// Token: 0x040004A3 RID: 1187
[SerializeField]
private RecRoomAudioClip engineRevLoopAudio;
// Token: 0x040004A4 RID: 1188
[SerializeField]
private RecRoomAudioClip engineStartAudio;
// Token: 0x040004A5 RID: 1189
[SerializeField]
private RecRoomAudioClip engineRevAudio;
}