334 lines
11 KiB
C#
334 lines
11 KiB
C#
using System;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x02000225 RID: 549
|
|
[Token(Token = "0x2000225")]
|
|
public class ScriptMode
|
|
{
|
|
// Token: 0x06001593 RID: 5523 RVA: 0x00030C90 File Offset: 0x0002EE90
|
|
[Token(Token = "0x6001593")]
|
|
[Address(RVA = "0x5179A0", Offset = "0x5169A0", VA = "0x1805179A0")]
|
|
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: 0x06001594 RID: 5524 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001594")]
|
|
[Address(RVA = "0x51AEB0", Offset = "0x519EB0", VA = "0x18051AEB0")]
|
|
public void Update(float fDeltaTime)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001595 RID: 5525 RVA: 0x00030CEC File Offset: 0x0002EEEC
|
|
[Token(Token = "0x6001595")]
|
|
[Address(RVA = "0x517FC0", Offset = "0x516FC0", VA = "0x180517FC0")]
|
|
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: 0x06001596 RID: 5526 RVA: 0x00030D8C File Offset: 0x0002EF8C
|
|
[Token(Token = "0x6001596")]
|
|
[Address(RVA = "0x51AE10", Offset = "0x519E10", VA = "0x18051AE10")]
|
|
public void SkipScript()
|
|
{
|
|
int num = this.g_iSkipID;
|
|
if (num > 1)
|
|
{
|
|
this.g_iStep = num;
|
|
this.RunStep(num);
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06001597 RID: 5527 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001597")]
|
|
[Address(RVA = "0x5180F0", Offset = "0x5170F0", VA = "0x1805180F0")]
|
|
public void RunStep(int iStep)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001598 RID: 5528 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001598")]
|
|
[Address(RVA = "0x51AE30", Offset = "0x519E30", VA = "0x18051AE30")]
|
|
private void UpdateDialogueContents(string[] content)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001599 RID: 5529 RVA: 0x00030DB4 File Offset: 0x0002EFB4
|
|
[Token(Token = "0x6001599")]
|
|
[Address(RVA = "0x517A60", Offset = "0x516A60", VA = "0x180517A60")]
|
|
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: 0x0600159A RID: 5530 RVA: 0x00030EBC File Offset: 0x0002F0BC
|
|
[Token(Token = "0x600159A")]
|
|
[Address(RVA = "0x475600", Offset = "0x474600", VA = "0x180475600")]
|
|
public void GetVoice(VoiceController Voice)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600159A)
|
|
|
|
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: 0x0600159B RID: 5531 RVA: 0x00030ED0 File Offset: 0x0002F0D0
|
|
[Token(Token = "0x600159B")]
|
|
[Address(RVA = "0x517990", Offset = "0x516990", VA = "0x180517990")]
|
|
public bool GetIsSkip()
|
|
{
|
|
return this.g_iSkipID > 0;
|
|
}
|
|
|
|
// Token: 0x0600159C RID: 5532 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x600159C")]
|
|
[Address(RVA = "0x517CA0", Offset = "0x516CA0", VA = "0x180517CA0")]
|
|
private float ParseFloat(string content)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x0600159D RID: 5533 RVA: 0x00030EE8 File Offset: 0x0002F0E8
|
|
[Token(Token = "0x600159D")]
|
|
[Address(RVA = "0x51B430", Offset = "0x51A430", VA = "0x18051B430")]
|
|
public ScriptMode()
|
|
{
|
|
}
|
|
|
|
// Token: 0x040020AD RID: 8365
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x40020AD")]
|
|
private NobetaAnimatorController g_PlayerAni;
|
|
|
|
// Token: 0x040020AE RID: 8366
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x40020AE")]
|
|
private VoiceController g_Voice;
|
|
|
|
// Token: 0x040020AF RID: 8367
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x40020AF")]
|
|
private PlayerCamera g_CameraEff;
|
|
|
|
// Token: 0x040020B0 RID: 8368
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x40020B0")]
|
|
private SceneEvent[] g_Event;
|
|
|
|
// Token: 0x040020B1 RID: 8369
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x40020B1")]
|
|
private Transform[] g_Camera;
|
|
|
|
// Token: 0x040020B2 RID: 8370
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x40020B2")]
|
|
private Transform[] g_Position;
|
|
|
|
// Token: 0x040020B3 RID: 8371
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x40020B3")]
|
|
private CSVData g_ScriptData;
|
|
|
|
// Token: 0x040020B4 RID: 8372
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x40020B4")]
|
|
private GameTextDataAdvance dialogueText;
|
|
|
|
// Token: 0x040020B5 RID: 8373
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x40020B5")]
|
|
private int g_iStep;
|
|
|
|
// Token: 0x040020B6 RID: 8374
|
|
[FieldOffset(Offset = "0x54")]
|
|
[Token(Token = "0x40020B6")]
|
|
private int g_iStepMax;
|
|
|
|
// Token: 0x040020B7 RID: 8375
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x40020B7")]
|
|
private bool g_bAutoStep;
|
|
|
|
// Token: 0x040020B8 RID: 8376
|
|
[FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x40020B8")]
|
|
private float g_fAutoStep;
|
|
|
|
// Token: 0x040020B9 RID: 8377
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x40020B9")]
|
|
private bool g_bMove;
|
|
|
|
// Token: 0x040020BA RID: 8378
|
|
[FieldOffset(Offset = "0x64")]
|
|
[Token(Token = "0x40020BA")]
|
|
private int g_iMoveSpeed;
|
|
|
|
// Token: 0x040020BB RID: 8379
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x40020BB")]
|
|
private Vector3 g_v3MovePosition;
|
|
|
|
// Token: 0x040020BC RID: 8380
|
|
[FieldOffset(Offset = "0x74")]
|
|
[Token(Token = "0x40020BC")]
|
|
private bool g_bDialog;
|
|
|
|
// Token: 0x040020BD RID: 8381
|
|
[FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x40020BD")]
|
|
private string g_sDialogText;
|
|
|
|
// Token: 0x040020BE RID: 8382
|
|
[FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x40020BE")]
|
|
private string g_sDialogSpeaker;
|
|
|
|
// Token: 0x040020BF RID: 8383
|
|
[FieldOffset(Offset = "0x88")]
|
|
[Token(Token = "0x40020BF")]
|
|
private int g_sDialogTextNum;
|
|
|
|
// Token: 0x040020C0 RID: 8384
|
|
[FieldOffset(Offset = "0x8C")]
|
|
[Token(Token = "0x40020C0")]
|
|
private float g_fDialogSpeed;
|
|
|
|
// Token: 0x040020C1 RID: 8385
|
|
[FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x40020C1")]
|
|
private float g_fDialogSpeedVal;
|
|
|
|
// Token: 0x040020C2 RID: 8386
|
|
[FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x40020C2")]
|
|
private NPCManage[] g_EnemySpeak;
|
|
|
|
// Token: 0x040020C3 RID: 8387
|
|
[FieldOffset(Offset = "0xA0")]
|
|
[Token(Token = "0x40020C3")]
|
|
private NPC g_NPCSpeak;
|
|
|
|
// Token: 0x040020C4 RID: 8388
|
|
[FieldOffset(Offset = "0xA8")]
|
|
[Token(Token = "0x40020C4")]
|
|
private int g_iVoiceIndex;
|
|
|
|
// Token: 0x040020C5 RID: 8389
|
|
[FieldOffset(Offset = "0xAC")]
|
|
[Token(Token = "0x40020C5")]
|
|
private int g_iSkipID;
|
|
|
|
// Token: 0x040020C6 RID: 8390
|
|
[FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x40020C6")]
|
|
private bool g_bSwitchScene;
|
|
|
|
// Token: 0x040020C7 RID: 8391
|
|
[FieldOffset(Offset = "0xB1")]
|
|
[Token(Token = "0x40020C7")]
|
|
private bool g_bStop;
|
|
|
|
// Token: 0x040020C8 RID: 8392
|
|
[FieldOffset(Offset = "0xB2")]
|
|
[Token(Token = "0x40020C8")]
|
|
private bool g_bAniSpeak;
|
|
|
|
// Token: 0x040020C9 RID: 8393
|
|
[FieldOffset(Offset = "0xB8")]
|
|
[Token(Token = "0x40020C9")]
|
|
private AudioSource g_asSpeakVoice;
|
|
|
|
// Token: 0x040020CA RID: 8394
|
|
[FieldOffset(Offset = "0xC0")]
|
|
[Token(Token = "0x40020CA")]
|
|
private string g_sVersionText = "V011";
|
|
}
|