示例#1
0
        private static bool IsMiniGameRef(ExportEntry export, out EMinigameSkipType skipType)
        {
            skipType = EMinigameSkipType.Invalid;

            if (export.ClassName == "BioSeqAct_SkillGame_Decryption" || export.ClassName == "BioSeqAct_SkillGame_Bypass")
            {
                skipType = EMinigameSkipType.SeqAct;
                return(true);
            }

            if (export.ClassName == "SequenceReference")
            {
                var sRef = export.GetProperty <ObjectProperty>("oSequenceReference");
                if (sRef != null && export.FileRef.TryGetUExport(sRef.Value, out var referencedItem))
                {
                    var objName = referencedItem.GetProperty <StrProperty>("ObjName");
                    if (objName != null)
                    {
                        skipType = EMinigameSkipType.SeqRef;
                        if (objName == "REF_SkillGame_Bypass")
                        {
                            return(true);
                        }
                        if (objName == "REF_SkillGame_Decryption")
                        {
                            return(true);
                        }
                        if (objName == "REF_SkillGame_Hack")
                        {
                            return(true);
                        }
                    }
                }
            }

            return(false);
        }
示例#2
0
 private static bool CanApplySkip(ExportEntry export, out EMinigameSkipType skipType)
 {
     skipType = EMinigameSkipType.Invalid;
     return(!export.IsDefaultObject && IsMiniGameRef(export, out skipType));
 }