public void Start()
    {
        dataManager = DataManager.instance;
        infiniteObjectManager = InfiniteObjectManager.instance;
        infiniteObjectManager.init();
        infiniteObjectHistory = InfiniteObjectHistory.instance;
        infiniteObjectHistory.init(infiniteObjectManager.getTotalObjectCount());
        sectionSelection = SectionSelection.instance;
        chaseController = ChaseController.instance;

        moveDirection = Vector3.forward;
        spawnDirection = Vector3.forward;
        turnPlatform = new PlatformObject[(int)ObjectLocation.Last];

        infiniteObjectManager.getObjectSizes(out platformSizes, out sceneSizes, out largestSceneLength);
        infiniteObjectManager.getObjectStartPositions(out platformStartPosition, out sceneStartPosition);

        stopObjectSpawns = false;
        spawnData = new ObjectSpawnData();
        spawnData.largestScene = largestSceneLength;
        spawnData.useWidthBuffer = true;
        spawnData.section = 0;
        spawnData.sectionTransition = false;

        noCollidableProbability.init();

        showStartupObjects(GameManager.instance.showTutorial);

        spawnObjectRun(true);
    }
    public void Start()
    {
        cameraTransform       = Camera.main.transform;
        infiniteObjectManager = InfiniteObjectManager.instance;
        infiniteObjectManager.init();
        infiniteObjectHistory = InfiniteObjectHistory.instance;
        infiniteObjectHistory.init(infiniteObjectManager.getTotalObjectCount());
        sectionSelection = SectionSelection.instance;

        moveDirection = Vector3.forward;
        turnOffset    = Vector3.zero;
        turnPlatform  = new PlatformObject[(int)ObjectLocation.Last];

        localDistance       = new float[(int)ObjectLocation.Last];
        localSceneDistance  = new float[(int)ObjectLocation.Last];
        localPlatformHeight = new float[(int)ObjectLocation.Last];
        localSceneHeight    = new float[(int)ObjectLocation.Last];

        infiniteObjectManager.getObjectSizes(out platformSizes, out sceneSizes, out straightPlatformWidth, out largestSceneLength);

        stopObjectSpawns            = false;
        spawnData                   = new ObjectSpawnData();
        spawnData.largestScene      = largestSceneLength;
        spawnData.useWidthBuffer    = true;
        spawnData.section           = 0;
        spawnData.sectionTransition = false;

        noCollidableProbability.init();

        showStartupObjects(false);

        spawnObjectRun(true);
    }
示例#3
0
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();

        SectionSelection sectionSelection = (SectionSelection)target;

        if (sectionSelection.sectionSelectionType == SectionSelectionType.None)
        {
            return;
        }

        bool probabilityType = false;

        if (sectionSelection.sectionSelectionType == SectionSelectionType.ProbabilityRandom ||
            sectionSelection.sectionSelectionType == SectionSelectionType.ProbabilityLoop)
        {
            GUILayout.Label("Active Sections", "BoldLabel");
            int start = EditorGUILayout.IntField("Start Section", sectionSelection.startSection);
            if (start != sectionSelection.startSection)
            {
                sectionSelection.startSection = start;
            }
            int end = EditorGUILayout.IntField("End Section", sectionSelection.endSection);
            if (end != sectionSelection.endSection)
            {
                sectionSelection.endSection = end;
            }
            probabilityType = true;
        }

        GUILayout.Label(string.Format("Section Change {0}", probabilityType ? "Probability" : ""), "BoldLabel");
        DistanceValueList sectionList = sectionSelection.sectionList;

        if (DistanceValueListInspector.showLoopToggle(ref sectionList, probabilityType ? DistanceValueType.Probability : DistanceValueType.Section))
        {
            sectionSelection.sectionList = sectionList;
            EditorUtility.SetDirty(target);
        }
        DistanceValueListInspector.showDistanceValues(ref sectionList, probabilityType ? DistanceValueType.Probability : DistanceValueType.Section);

        if (DistanceValueListInspector.showAddNewValue(ref sectionList, probabilityType ? DistanceValueType.Probability : DistanceValueType.Section))
        {
            sectionSelection.sectionList = sectionList;
            EditorUtility.SetDirty(target);
        }
    }
 public static string[] GetComboBoxSections(SectionSelection section)
 {
     switch (section)
     {
         case (SectionSelection.C_SECTION):
             return SectionsC;
         case (SectionSelection.C_B2B_SECTION):
             return SectionsB2BC;
         case (SectionSelection.PFC):
             return SectionsPFC;
         case (SectionSelection.RHS):
             return SectionsRHS;
         case (SectionSelection.SHS):
             return SectionsSHS;
         case (SectionSelection.TOPHAT):
             return SectionsTopHat;
         case (SectionSelection.UB):
             return SectionsUB;
         case (SectionSelection.UC):
             return SectionsUC;
         case (SectionSelection.NONE):
             return new string[0];
         default:
             return null;
     }
 }
示例#5
0
 public void Awake()
 {
     instance = this;
 }
 public void Awake()
 {
     instance = this;
 }