Ejemplo n.º 1
0
    private void SendCrack(Vector3 adjustedImpulse, Vector3 maxImpactPoint)
    {
        NetStream stream = identity.BeginEvent(evtCrack);

        NetVector3.Quantize(maxImpactPoint - base.transform.position, 100f, 16).Write(stream, 6);
        NetVector3.Quantize(adjustedImpulse / breakTreshold, 10f, 16).Write(stream, 6);
        identity.EndEvent();
    }
Ejemplo n.º 2
0
    private NetVector3 QuantizePos(Vector3 pos)
    {
        BoxCollider boxCollider = collider as BoxCollider;

        if (boxCollider != null)
        {
            return(NetVector3.Quantize(base.transform.InverseTransformPoint(pos) - boxCollider.center, boxCollider.size / 2f, 10));
        }
        return(NetVector3.Quantize(pos - collider.bounds.center, collider.bounds.extents, 10));
    }
Ejemplo n.º 3
0
 public void OnCollisionEnter(Collision collision)
 {
     if (collision.contacts.Length != 0 && bag.ReportCollision(collision.impulse.magnitude, collision.contacts[0].point) && (NetGame.isServer || ReplayRecorder.isRecording))
     {
         NetStream netStream = identity.BeginEvent(evtCollision);
         int       x         = NetFloat.Quantize(collision.impulse.magnitude, 10000f, 11);
         netStream.Write(x, 10);
         Vector3 vec = collision.contacts[0].point - base.transform.position;
         NetVector3.Quantize(vec, 100f, 10).Write(netStream, 3);
         identity.EndEvent();
     }
 }
        public void BroadcastCollisionAudio(CollisionAudioHitConfig config, AudioChannel channel, Vector3 pos, float rms, float pitch)
        {
            if (showDebug)
            {
                Debug.Log(base.name + " Broadcast Collision Audio ");
            }
            float num = AudioUtils.ValueToDB(rms) + 32f;

            if (num < -64f)
            {
                return;
            }
            if (identity == null)
            {
                Debug.LogErrorFormat(this, "No NetIdentity for {0}", base.name);
                return;
            }
            NetStream netStream = identity.BeginEvent(evtCollisionAudio);

            netStream.Write(config.netId, 8);
            if (channel == AudioChannel.Footsteps)
            {
                netStream.Write(v: true);
            }
            else
            {
                netStream.Write(v: false);
                if (channel == AudioChannel.Body)
                {
                    netStream.Write(v: true);
                }
                else
                {
                    netStream.Write(v: false);
                }
            }
            Vector3 vec = pos - base.transform.position;

            NetVector3.Quantize(vec, 100f, 10).Write(netStream, 3);
            netStream.Write(NetFloat.Quantize(AudioUtils.ValueToDB(rms) + 32f, 64f, 6), 6);
            netStream.Write(NetFloat.Quantize(AudioUtils.RatioToCents(pitch), 4800f, 8), 3, 8);
            identity.EndEvent();
        }
Ejemplo n.º 5
0
 private void Scroll(Vector3 scroll)
 {
     if (!NetGame.isClient && !ReplayRecorder.isPlaying)
     {
         base.transform.position += scroll;
     }
     if (player.isLocalPlayer)
     {
         CloudSystem.instance.Scroll(scroll);
         player.cameraController.Scroll(scroll);
         for (int i = 0; i < CloudBox.all.Count; i++)
         {
             CloudBox.all[i].FadeIn(1f);
         }
     }
     if (identity != null && (NetGame.isServer || ReplayRecorder.isRecording))
     {
         NetStream stream = identity.BeginEvent(evtScroll);
         NetVector3.Quantize(scroll, 500f, 12).Write(stream);
         identity.EndEvent();
     }
 }