using System; using Cpp2IlInjected; using UnityEngine; // Token: 0x020001F0 RID: 496 [Token(Token = "0x20001F0")] public class ScriptMode { // Token: 0x060013FD RID: 5117 RVA: 0x0002DB1C File Offset: 0x0002BD1C [Token(Token = "0x60013FD")] [Address(RVA = "0x47FE80", Offset = "0x47E680", VA = "0x18047FE80")] public void Init() { NobetaAnimatorController animatorController = Game.GetPlayerManager().GetAnimatorController(); this.g_PlayerAni = animatorController; PlayerCamera camera = Game.GetPlayerManager().GetCamera(); this.g_CameraEff = camera; this.g_bSwitchScene = false; this.g_iSkipID = (int)((ulong)0L); this.g_iVoiceIndex = (int)((ulong)4294967294L); } // Token: 0x060013FE RID: 5118 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x60013FE")] [Address(RVA = "0x483060", Offset = "0x481860", VA = "0x180483060")] public void Update(float fDeltaTime) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060013FF RID: 5119 RVA: 0x0002DB78 File Offset: 0x0002BD78 [Token(Token = "0x60013FF")] [Address(RVA = "0x4804A0", Offset = "0x47ECA0", VA = "0x1804804A0")] public void ReceiveConfirm() { int num = this.g_iStepMax; if (this.g_iStep >= num || this.g_bAutoStep) { return; } if (!this.g_bDialog) { Game.SetDialogArrowEnable(false); int num2 = this.g_iStep; num2++; this.g_iStep = num2; this.RunStep(num2); return; } string text = this.g_sDialogText; int stringLength = text.m_stringLength; int num3 = 0; string text2 = this.g_sDialogSpeaker; this.g_sDialogTextNum = stringLength; string text3 = text.Substring(num3, stringLength); Game.SetDialogText(text2, text3); this.g_bDialog = false; while (this.g_bAutoStep) { } Game.SetDialogArrowEnable(true); } // Token: 0x06001400 RID: 5120 RVA: 0x0002DC18 File Offset: 0x0002BE18 [Token(Token = "0x6001400")] [Address(RVA = "0x482FC0", Offset = "0x4817C0", VA = "0x180482FC0")] public void SkipScript() { int num = this.g_iSkipID; if (num > 1) { this.g_iStep = num; this.RunStep(num); return; } } // Token: 0x06001401 RID: 5121 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6001401")] [Address(RVA = "0x4805D0", Offset = "0x47EDD0", VA = "0x1804805D0")] public void RunStep(int iStep) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06001402 RID: 5122 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6001402")] [Address(RVA = "0x482FE0", Offset = "0x4817E0", VA = "0x180482FE0")] private void UpdateDialogueContents(string[] content) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06001403 RID: 5123 RVA: 0x0002DC40 File Offset: 0x0002BE40 [Token(Token = "0x6001403")] [Address(RVA = "0x47FF40", Offset = "0x47E740", VA = "0x18047FF40")] public bool LoadScript(LoadScript LS) { string scriptName = LS.ScriptName; string text = "Script/" + scriptName; SceneEvent[] @event = LS.Event; this.g_Event = @event; Transform[] camera = LS.Camera; this.g_Camera = camera; Transform[] playerPosition = LS.PlayerPosition; this.g_Position = playerPosition; CSVData csvdata = new CSVData(text); this.g_ScriptData = csvdata; CSVData csvdata2 = this.g_ScriptData; if (csvdata2.loadDataCompleted) { int columnLength = csvdata2.GetColumnLength(); this.g_iStepMax = columnLength; if (columnLength > 1) { CSVData csvdata3 = this.g_ScriptData; int num = 0; int num2 = 0; string @string = csvdata3.GetString(num2, num); string text2 = this.g_sVersionText; if (!(@string != text2)) { if (string.IsNullOrEmpty(LS.ScriptLanugageFileName)) { } GameTextDataAdvance storyText = Game.GetStoryText(LS.ScriptLanugageFileName); this.dialogueText = storyText; this.g_iStep = (int)((ulong)1L); this.g_bStop = false; this.RunStep(1); return true; } } } Debug.LogError("無法讀取腳本:" + text); throw new NullReferenceException(); } // Token: 0x06001404 RID: 5124 RVA: 0x0002DD48 File Offset: 0x0002BF48 [Token(Token = "0x6001404")] [Address(RVA = "0x454D70", Offset = "0x453570", VA = "0x180454D70")] public void GetVoice(VoiceController Voice) { /* An exception occurred when decompiling this method (06001404) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void ScriptMode::GetVoice(VoiceController) ---> System.Exception: Basic block has to end with unconditional control flow. {; Block_0:; stfld:VoiceController(ScriptMode::g_Voice, ldloc:ScriptMode(this), ldloc:VoiceController(Voice)); }; at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1810 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 344 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1618 */; } // Token: 0x06001405 RID: 5125 RVA: 0x0002DD5C File Offset: 0x0002BF5C [Token(Token = "0x6001405")] [Address(RVA = "0x47FE70", Offset = "0x47E670", VA = "0x18047FE70")] public bool GetIsSkip() { return this.g_iSkipID > 0; } // Token: 0x06001406 RID: 5126 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6001406")] [Address(RVA = "0x480180", Offset = "0x47E980", VA = "0x180480180")] private float ParseFloat(string content) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06001407 RID: 5127 RVA: 0x0002DD74 File Offset: 0x0002BF74 [Token(Token = "0x6001407")] [Address(RVA = "0x483570", Offset = "0x481D70", VA = "0x180483570")] public ScriptMode() { } // Token: 0x04001F0C RID: 7948 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4001F0C")] private NobetaAnimatorController g_PlayerAni; // Token: 0x04001F0D RID: 7949 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4001F0D")] private VoiceController g_Voice; // Token: 0x04001F0E RID: 7950 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4001F0E")] private PlayerCamera g_CameraEff; // Token: 0x04001F0F RID: 7951 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4001F0F")] private SceneEvent[] g_Event; // Token: 0x04001F10 RID: 7952 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4001F10")] private Transform[] g_Camera; // Token: 0x04001F11 RID: 7953 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4001F11")] private Transform[] g_Position; // Token: 0x04001F12 RID: 7954 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4001F12")] private CSVData g_ScriptData; // Token: 0x04001F13 RID: 7955 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4001F13")] private GameTextDataAdvance dialogueText; // Token: 0x04001F14 RID: 7956 [FieldOffset(Offset = "0x50")] [Token(Token = "0x4001F14")] private int g_iStep; // Token: 0x04001F15 RID: 7957 [FieldOffset(Offset = "0x54")] [Token(Token = "0x4001F15")] private int g_iStepMax; // Token: 0x04001F16 RID: 7958 [FieldOffset(Offset = "0x58")] [Token(Token = "0x4001F16")] private bool g_bAutoStep; // Token: 0x04001F17 RID: 7959 [FieldOffset(Offset = "0x5C")] [Token(Token = "0x4001F17")] private float g_fAutoStep; // Token: 0x04001F18 RID: 7960 [FieldOffset(Offset = "0x60")] [Token(Token = "0x4001F18")] private bool g_bMove; // Token: 0x04001F19 RID: 7961 [FieldOffset(Offset = "0x64")] [Token(Token = "0x4001F19")] private int g_iMoveSpeed; // Token: 0x04001F1A RID: 7962 [FieldOffset(Offset = "0x68")] [Token(Token = "0x4001F1A")] private Vector3 g_v3MovePosition; // Token: 0x04001F1B RID: 7963 [FieldOffset(Offset = "0x74")] [Token(Token = "0x4001F1B")] private bool g_bDialog; // Token: 0x04001F1C RID: 7964 [FieldOffset(Offset = "0x78")] [Token(Token = "0x4001F1C")] private string g_sDialogText; // Token: 0x04001F1D RID: 7965 [FieldOffset(Offset = "0x80")] [Token(Token = "0x4001F1D")] private string g_sDialogSpeaker; // Token: 0x04001F1E RID: 7966 [FieldOffset(Offset = "0x88")] [Token(Token = "0x4001F1E")] private int g_sDialogTextNum; // Token: 0x04001F1F RID: 7967 [FieldOffset(Offset = "0x8C")] [Token(Token = "0x4001F1F")] private float g_fDialogSpeed; // Token: 0x04001F20 RID: 7968 [FieldOffset(Offset = "0x90")] [Token(Token = "0x4001F20")] private float g_fDialogSpeedVal; // Token: 0x04001F21 RID: 7969 [FieldOffset(Offset = "0x98")] [Token(Token = "0x4001F21")] private NPCManage[] g_EnemySpeak; // Token: 0x04001F22 RID: 7970 [FieldOffset(Offset = "0xA0")] [Token(Token = "0x4001F22")] private int g_iVoiceIndex; // Token: 0x04001F23 RID: 7971 [FieldOffset(Offset = "0xA4")] [Token(Token = "0x4001F23")] private int g_iSkipID; // Token: 0x04001F24 RID: 7972 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x4001F24")] private bool g_bSwitchScene; // Token: 0x04001F25 RID: 7973 [FieldOffset(Offset = "0xA9")] [Token(Token = "0x4001F25")] private bool g_bStop; // Token: 0x04001F26 RID: 7974 [FieldOffset(Offset = "0xAA")] [Token(Token = "0x4001F26")] private bool g_bAniSpeak; // Token: 0x04001F27 RID: 7975 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x4001F27")] private AudioSource g_asSpeakVoice; // Token: 0x04001F28 RID: 7976 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x4001F28")] private string g_sVersionText = "V011"; }