Exemplo n.º 1
0
 public void Start()
 {
     if (motionTracker == null)
     {
         motionTracker = ClubPenguin.SceneRefs.ZoneLocalPlayerManager.LocalPlayerGameObject.GetComponent <MotionTracker>();
     }
 }
Exemplo n.º 2
0
 protected override void OnEnable()
 {
     motionTracker = GetTarget().GetComponent <MotionTracker>();
     rbody         = GetTarget().GetComponent <Rigidbody>();
     minMagSq      = MinMag * MinMag;
     maxMagSq      = MaxMag * MaxMag;
     base.OnEnable();
 }
Exemplo n.º 3
0
 protected override void OnEnable()
 {
     actionTarget  = GetTarget();
     motionTracker = actionTarget.GetComponent <MotionTracker>();
     runController = actionTarget.GetComponent <RunController>();
     broadcaster   = actionTarget.GetComponent <LocomotionEventBroadcaster>();
     base.OnEnable();
 }
Exemplo n.º 4
0
    public void LoadTrackingData(string filename)
    {
        ResetData();

        data = MotionTracker.LoadData(filename);

        if (data != null)
        {
            currentFilename = filename;
            maxTime         = data.positions.Count / data.framesPerSecond;
        }
    }
    private void LoadMotionDataPreview(string filename)
    {
        int fps = 0, count = 0;

        if (MotionTracker.LoadDataHeader(filename, ref fps, ref count))
        {
            UpdateMotionFilePreview(filename, count, fps);
        }
        else
        {
            ClearMotionFilePreview();
        }
    }
Exemplo n.º 6
0
 public void Awake()
 {
     instance = this;
 }
    protected override void OnEnable()
    {
        curKeyFrameIndex          = 0;
        distConsumedFromLastFrame = 0f;
        elapsedWarpTime           = 0f;
        elapsedTravelTime         = 0f;
        isWarpingToStart          = true;
        calculateSplines();
        if (VehiclePrefab != null)
        {
            vehicleInstance = Object.Instantiate(VehiclePrefab);
            vehicleInstance.transform.position = VehicleSpawnTransform.position;
            vehicleInstance.transform.rotation = VehicleSpawnTransform.rotation;
        }
        else
        {
            vehicleInstance = GetTarget();
        }
        vehicleTransform = vehicleInstance.transform;
        vehicleStartPos  = vehicleTransform.position;
        vehicleStartRot  = vehicleTransform.rotation;
        if (FakeVehicle != null)
        {
            FakeVehicle.SetActive(value: false);
        }
        if (!string.IsNullOrEmpty(SeatName))
        {
            seat = vehicleInstance.transform.Find(SeatName);
        }
        anim = GetTarget().GetComponent <Animator>();
        if (!string.IsNullOrEmpty(EnterAnimTrigger))
        {
            int trigger = Animator.StringToHash(EnterAnimTrigger);
            anim.SetTrigger(trigger);
        }
        MotionTracker component = GetTarget().GetComponent <MotionTracker>();

        if (component != null)
        {
            curVel       = component.Velocity;
            curWarpSpeed = curVel.magnitude;
        }
        else
        {
            curVel       = Vector3.zero;
            curWarpSpeed = 0f;
        }
        if (base.gameObject.CompareTag("Player"))
        {
            GameObject gameObject = GameObject.FindWithTag(UIConstants.Tags.UI_Tray_Root);
            if (gameObject != null && !IsChatEnabled)
            {
                gameObject.GetComponent <StateMachineContext>().SendEvent(new ExternalEvent("Root", "minnpc"));
            }
            Service.Get <EventDispatcher>().DispatchEvent(new PlayerCardEvents.SetEnablePlayerCard(enable: false));
            Service.Get <EventDispatcher>().DispatchEvent(new UIDisablerEvents.DisableUIElementGroup("MainNavButtons"));
            if (Service.Get <QuestService>().ActiveQuest != null)
            {
                Service.Get <EventDispatcher>().DispatchEvent(new HudEvents.ShowHideQuestNotifier(show: false));
            }
            else
            {
                Service.Get <EventDispatcher>().DispatchEvent(default(HudEvents.HideCellPhoneHud));
            }
        }
    }
Exemplo n.º 8
0
        protected override void Update()
        {
            if (base.Complete)
            {
                return;
            }
            GameObject gameObject = null;
            Vector3    vector     = Vector3.zero;
            Quaternion quaternion = Quaternion.identity;
            bool       flag       = false;

            if (SpawnTransform == null)
            {
                if (SpawnAtOwnerTransform)
                {
                    vector     = GetTarget().transform.position;
                    quaternion = GetTarget().transform.rotation;
                    flag       = true;
                }
            }
            else
            {
                vector     = SpawnTransform.position;
                quaternion = SpawnTransform.rotation;
                flag       = true;
            }
            if (ObjectPool != null)
            {
                gameObject = ((!flag) ? ObjectPool.Spawn() : ObjectPool.Spawn(vector, quaternion));
            }
            else if (ObjectPrefab != null)
            {
                if (flag)
                {
                    gameObject = UnityEngine.Object.Instantiate(ObjectPrefab);
                    gameObject.transform.position = quaternion * ObjectPrefab.transform.position + vector;
                    gameObject.transform.rotation = quaternion * ObjectPrefab.transform.rotation;
                }
                else
                {
                    GameObject target    = GetTarget();
                    Transform  transform = target.transform;
                    gameObject = UnityEngine.Object.Instantiate(ObjectPrefab);
                    gameObject.transform.position  = transform.rotation * gameObject.transform.position + transform.position;
                    gameObject.transform.rotation *= transform.rotation;
                    gameObject.transform.parent    = transform;
                }
                if (ParentToOwner)
                {
                    GameObject target    = GetTarget();
                    Transform  transform = target.transform;
                    gameObject.transform.parent = transform;
                }
            }
            if (gameObject != null)
            {
                Rigidbody component = gameObject.GetComponent <Rigidbody>();
                if (component != null)
                {
                    if (TransferOwnerMomentum)
                    {
                        MotionTracker component2 = GetComponent <MotionTracker>();
                        if (component2 != null)
                        {
                            component.AddForce(component2.Velocity, ForceMode.VelocityChange);
                        }
                    }
                    else if (ImpulseMagnitude != 0f)
                    {
                        float   num = ImpulseMagnitude + (MagNoise - 2f * MagNoise * UnityEngine.Random.value);
                        Vector3 dir = ImpulseDirection;
                        if (IncomingUserData != null && IncomingUserData.GetType() == typeof(Vector3))
                        {
                            dir = ((Vector3)IncomingUserData).normalized;
                        }
                        if (dir == Vector3.zero)
                        {
                            dir = gameObject.transform.forward;
                        }
                        if (DirNoise != 0f)
                        {
                            Vector3    morphedDirection = GetMorphedDirection(ref dir, DirNoise, UnityEngine.Random.value, UnityEngine.Random.value);
                            Quaternion quaternion2      = Quaternion.LookRotation(dir);
                            dir = quaternion2 * morphedDirection;
                        }
                        dir.Normalize();
                        component.AddForce(dir * num, ForceMode.VelocityChange);
                    }
                }
            }
            if (Owner != null)
            {
                Completed(gameObject);
                return;
            }
            Log.LogError(this, "Owner was null. Cannot remove from Sequencer. Action will now be ignored.");
            base.Complete = true;
        }
 public void OnEnable()
 {
     tracker = (MotionTracker)target;
 }
Exemplo n.º 10
0
    IEnumerator GenerateHeatmap()
    {
        progress.info  = "Adding mesh colliders ...";
        progress.value = 0;

        IEnumerator enableCollision = EnableCollision(true);

        while (enableCollision.MoveNext())
        {
            yield return(null);
        }

        VisionDataIO.Header      header;
        Dictionary <uint, float> values = new Dictionary <uint, float>();

        foreach (string file in parameters.files)
        {
            if (cancelHeatmapGeneration)
            {
                break;
            }

            progress.info  = "Loading motion data ...";
            progress.value = 0.5f;

            yield return(null);

            MotionData data = MotionTracker.LoadData(file);
            if (data == null)
            {
                Debug.LogError("Couldn't load data for " + file);
                continue;
            }

            if (cancelHeatmapGeneration)
            {
                break;
            }

            if (data.positions.Count > 1)
            {
                progress.info  = "Generating heatmap ...";
                progress.value = 0;

                // Reset
                values.Clear();
                minValue = float.PositiveInfinity;
                maxValue = 0f;

                IEnumerator generateValues = GenerateValues(data, values, parameters.customFPS);
                while (generateValues.MoveNext())
                {
                    yield return(null);
                }

                if (cancelHeatmapGeneration)
                {
                    break;
                }

                string visionFile = file.Substring(0, file.Length - 3) + Extension;
                progress.info  = "Saving heatmap ...";
                progress.value = 0.5f;

                yield return(null);

                header.resolution = parameters.resolution;
                header.minValue   = minValue;
                header.maxValue   = maxValue;
                header.sizeX      = parameters.volumeSize.x;
                header.sizeY      = parameters.volumeSize.y;
                header.sizeZ      = parameters.volumeSize.z;
                VisionDataIO.SaveToBinary(visionFile, header, values);
            }
        }

        progress.info  = "Removing mesh colliders ...";
        progress.value = 0;

        enableCollision = EnableCollision(false);
        while (enableCollision.MoveNext())
        {
            yield return(null);
        }

        progress.value   = 1f;
        heatmapCoroutine = null;
    }