コード例 #1
0
    public void init()
    {
        infiniteObjectGenerator           = InfiniteObjectGenerator.instance;
        powerUpManager                    = PowerUpManager.instance;
        gameManager                       = GameManager.instance;
        projectionCamerasController       = ProjectionCamerasController.instance;
        projectionPortalWindowsController = ProjectionPortalWindowsController.instance;
//		mainCameraController = MainCameraController.instance;

        platformLayer = LayerMask.NameToLayer("Platform");
        wallLayer     = LayerMask.NameToLayer("Wall");
        obstacleLayer = LayerMask.NameToLayer("Obstacle");

        thisTransform   = transform;
        thisRigidbody   = rigidbody;
        capsuleCollider = GetComponent <CapsuleCollider>();
        playerAnimation = GetComponent <PlayerAnimation>();
        playerAnimation.init();

        startPosition = thisTransform.position;
        startRotation = thisTransform.rotation;

        slideData = new CoroutineData();
        forwardSpeeds.init();

        // make sure the coin magnet trigger is deactivated
        activatePowerUp(PowerUpTypes.CoinMagnet, false, Color.white);

        reset();
        enabled = false;
//		zorbModeActive = false;
    }
コード例 #2
0
    public void OnGUI()
    {
        GUILayout.Label("Infinite Object Persistence", "BoldLabel");
        GUILayout.Label("1. Generate desired tracks using rules and probabilities");
        GUILayout.Label("2. Hit play in Unity");
        GUILayout.Label("3. Add extra objects (such as tutorial triggers)");
        GUILayout.Label("4. Click \"Persist\"");
        GUILayout.Space(10);
        if (GUILayout.Button("Persist"))
        {
            saveLocation = EditorUtility.SaveFilePanelInProject("Save Location", "InfiniteObjectPersistence", "prefab", "");
            if (saveLocation.Length == 0)
            {
                return;
            }

            GameObject infiniteObjectsGroup = GameObject.Find("Infinite Objects");
            if (infiniteObjectsGroup != null)
            {
                GameObject persistGameObject = new GameObject();

                InfiniteObjectPersistence persistence = persistGameObject.AddComponent <InfiniteObjectPersistence>() as InfiniteObjectPersistence;
                // Persist the Infinite Object Manager Data
                InfiniteObjectGenerator infiniteObjectGenerator = infiniteObjectsGroup.GetComponent <InfiniteObjectGenerator>();
                infiniteObjectGenerator.saveInfiniteObjectPersistence(ref persistence);

                // Persist the Infinite Object History Data
                InfiniteObjectHistory infiniteObjectHistory = infiniteObjectsGroup.GetComponent <InfiniteObjectHistory>();
                infiniteObjectHistory.saveInfiniteObjectPersistence(ref persistence);

                for (int i = infiniteObjectsGroup.transform.childCount - 1; i >= 0; --i)
                {
                    infiniteObjectsGroup.transform.GetChild(i).parent = persistGameObject.transform;
                }

                EditorUtility.SetDirty(persistGameObject);
                PrefabUtility.CreatePrefab(saveLocation, persistGameObject);

                for (int i = persistGameObject.transform.childCount - 1; i >= 0; --i)
                {
                    persistGameObject.transform.GetChild(i).parent = infiniteObjectsGroup.transform;
                }

                DestroyImmediate(persistGameObject);

                Debug.Log("Infinite Object Data Persisted!");
            }
            else
            {
                Debug.Log("Error: Unable to find the Infinite Objects Game Object");
            }
        }
    }
コード例 #3
0
ファイル: GameManager.cs プロジェクト: Maareks/Endless-Cat
        public void Start()
        {
            infiniteObjectGenerator = InfiniteObjectGenerator.instance;
            guiManager        = GUIManager.instance;
            dataManager       = DataManager.instance;
            audioManager      = AudioManager.instance;
            powerUpManager    = PowerUpManager.instance;
            missionManager    = MissionManager.instance;
            inputController   = InputController.instance;
            cameraController  = CameraController.instance;
            coinGUICollection = CoinGUICollection.instance;

            Application.runInBackground = runInBackground;
            activeCharacter             = -1;
            SpawnCharacter();
            SpawnChaseObject();
        }
コード例 #4
0
    public void Start()
    {
        infiniteObjectGenerator = InfiniteObjectGenerator.instance;
        guiManager        = GUIManager.instance;
        dataManager       = DataManager.instance;
        audioManager      = AudioManager.instance;
        powerUpManager    = PowerUpManager.instance;
        missionManager    = MissionManager.instance;
        inputController   = InputController.instance;
        cameraController  = CameraController.instance;
        kinectTrackerData = TrackerData.instance;
//		projectionCamerasController = ProjectionCamerasController.instance;
//		projectionPortalWindowsController = ProjectionPortalWindowsController.instance;
        activeCharacter = Character.None;

        startGame();
    }
コード例 #5
0
ファイル: GameManager.cs プロジェクト: Blavtes/RunInto
	public void Start ()
	{
		infiniteObjectGenerator = InfiniteObjectGenerator.instance;
		guiManager = GUIManager.instance;
		dataManager = DataManager.instance;
        audioManager = AudioManager.instance;
		powerUpManager = PowerUpManager.instance;
        missionManager = MissionManager.instance;
        inputController = InputController.instance;
        cameraController = CameraController.instance;
        coinGUICollection = CoinGUICollection.instance;

        Application.runInBackground = runInBackground;
        activeCharacter = -1;
        spawnCharacter();
        spawnChaseObject();
	}
コード例 #6
0
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();

        InfiniteObjectGenerator infiniteObjectGenerator = (InfiniteObjectGenerator)target;

        GUILayout.Label("No Collidable Probabilities", "BoldLabel");
        DistanceValueList distanceProbabilityList = infiniteObjectGenerator.noCollidableProbability;

        if (DistanceValueListInspector.showLoopToggle(ref distanceProbabilityList, DistanceValueType.Probability))
        {
            infiniteObjectGenerator.noCollidableProbability = distanceProbabilityList;
            EditorUtility.SetDirty(target);
        }
        DistanceValueListInspector.showDistanceValues(ref distanceProbabilityList, DistanceValueType.Probability);

        if (DistanceValueListInspector.showAddNewValue(ref distanceProbabilityList, DistanceValueType.Probability))
        {
            infiniteObjectGenerator.noCollidableProbability = distanceProbabilityList;
            EditorUtility.SetDirty(target);
        }
    }
コード例 #7
0
 public void Awake()
 {
     instance = this;
 }
コード例 #8
0
ファイル: PlayerController.cs プロジェクト: Blavtes/RunInto
    public void init()
    {
        // deprecated variables warnings:
        if (jumpForce != 0 && jumpHeight == 0) {
            Debug.LogError("PlayerController.jumpForce is deprecated. Use jumpHeight instead.");
            jumpHeight = jumpForce;
        }
        if (jumpDownwardForce != 0 && gravity == 0) {
            Debug.LogError("PlayerController.jumpDownwardForce is deprecated. Use gravity instead.");
            gravity = jumpDownwardForce;
        }
        // rigidbody should no longer use gravity, be kinematic, and freeze all constraints
        if (rigidbody != null) {
            if (rigidbody.useGravity) {
                Debug.LogError("The rigidbody no longer needs to use gravity. Disabling.");
                rigidbody.useGravity = false;
            }
            if (!rigidbody.isKinematic) {
                Debug.LogError("The rigidbody should be kinematic. Enabling.");
                rigidbody.isKinematic = true;
            }
            if (rigidbody.constraints != RigidbodyConstraints.FreezeAll) {
                Debug.LogError("The rigidbody should freeze all constraints. The PlayerController will take care of the physics.");
                rigidbody.constraints = RigidbodyConstraints.FreezeAll;
            }
        }

        cameraController = CameraController.instance;
        infiniteObjectGenerator = InfiniteObjectGenerator.instance;
        powerUpManager = PowerUpManager.instance;
        gameManager = GameManager.instance;
        if (attackType == AttackType.Projectile) {
            projectileManager = GetComponent<ProjectileManager>();
        }

        platformLayer = 1 << LayerMask.NameToLayer("Platform");
        floorLayer = 1 << LayerMask.NameToLayer("Floor");
        wallLayer = LayerMask.NameToLayer("Wall");
        obstacleLayer = LayerMask.NameToLayer("Obstacle");

        thisTransform = transform;
        capsuleCollider = GetComponent<CapsuleCollider>();
        playerAnimation = GetComponent<PlayerAnimation>();
        playerAnimation.init();

        startPosition = thisTransform.position;
        startRotation = thisTransform.rotation;

        slideData = new CoroutineData();
        stumbleData = new CoroutineData();
        forwardSpeeds.init();
        // determine the fastest and the slowest forward speeds
        forwardSpeeds.getMinMaxValue(out minForwardSpeed, out maxForwardSpeed);
        forwardSpeedDelta = maxForwardSpeed - minForwardSpeed;
        if (forwardSpeedDelta == 0) {
            playerAnimation.setRunSpeed(1, 1);
        }

        // make sure the coin magnet trigger is deactivated
        activatePowerUp(PowerUpTypes.CoinMagnet, false);

        reset();
        enabled = false;
    }
コード例 #9
0
        public void Init()
        {
            // deprecated variables warnings:
            if (jumpForce != 0 && jumpHeight == 0)
            {
                Debug.LogError("PlayerController.jumpForce is deprecated. Use jumpHeight instead.");
                jumpHeight = jumpForce;
            }
            if (jumpDownwardForce != 0 && gravity == 0)
            {
                Debug.LogError("PlayerController.jumpDownwardForce is deprecated. Use gravity instead.");
                gravity = jumpDownwardForce;
            }
            // rigidbody should no longer use gravity, be kinematic, and freeze all constraints
            Rigidbody playerRigibody = GetComponent <Rigidbody>();

            if (playerRigibody != null)
            {
                if (playerRigibody.useGravity)
                {
                    Debug.LogError("The rigidbody no longer needs to use gravity. Disabling.");
                    playerRigibody.useGravity = false;
                }
                if (!playerRigibody.isKinematic)
                {
                    Debug.LogError("The rigidbody should be kinematic. Enabling.");
                    playerRigibody.isKinematic = true;
                }
                if (playerRigibody.constraints != RigidbodyConstraints.FreezeAll)
                {
                    Debug.LogError("The rigidbody should freeze all constraints. The PlayerController will take care of the physics.");
                    playerRigibody.constraints = RigidbodyConstraints.FreezeAll;
                }
            }

            cameraController        = CameraController.instance;
            infiniteObjectGenerator = InfiniteObjectGenerator.instance;
            powerUpManager          = PowerUpManager.instance;
            gameManager             = GameManager.instance;
            if (attackType == AttackType.Projectile)
            {
                projectileManager = GetComponent <ProjectileManager>();
            }

            platformLayer = 1 << LayerMask.NameToLayer("Platform");
            floorLayer    = 1 << LayerMask.NameToLayer("Floor");
            wallLayer     = 1 << LayerMask.NameToLayer("Wall");
            obstacleLayer = 1 << LayerMask.NameToLayer("Obstacle");

            thisTransform   = transform;
            capsuleCollider = GetComponent <CapsuleCollider>();
            playerAnimation = GetComponent <PlayerAnimation>();
            playerAnimation.Init();

            startPosition = thisTransform.position;
            startRotation = thisTransform.rotation;

            slideData   = new CoroutineData();
            stumbleData = new CoroutineData();
            forwardSpeeds.Init();
            // determine the fastest and the slowest forward speeds
            forwardSpeeds.GetMinMaxValue(out minForwardSpeed, out maxForwardSpeed);
            forwardSpeedDelta = maxForwardSpeed - minForwardSpeed;
            if (forwardSpeedDelta == 0)
            {
                playerAnimation.SetRunSpeed(1, 1);
            }

            ResetValues(false);
            enabled = false;
        }
コード例 #10
0
 public void Awake()
 {
     instance = this;
 }