Exemple #1
0
        public void Clicked(MedicalCabinet medicalCabinet)
        {
            NitroxId id       = NitroxEntity.GetId(medicalCabinet.gameObject);
            bool     doorOpen = (bool)medicalCabinet.ReflectionGet("doorOpen");

            MedicalCabinetClicked cabinetClicked = new MedicalCabinetClicked(id, doorOpen, medicalCabinet.hasMedKit, medicalCabinet.timeSpawnMedKit);

            packetSender.Send(cabinetClicked);
        }
Exemple #2
0
        public void Clicked(MedicalCabinet medicalCabinet)
        {
            string guid     = GuidHelper.GetGuid(medicalCabinet.gameObject);
            bool   doorOpen = (bool)medicalCabinet.ReflectionGet("doorOpen");

            MedicalCabinetClicked cabinetClicked = new MedicalCabinetClicked(guid, doorOpen, medicalCabinet.hasMedKit, medicalCabinet.timeSpawnMedKit);

            packetSender.Send(cabinetClicked);
        }
Exemple #3
0
        public void Clicked(MedicalCabinet medicalCabinet)
        {
            Vector3 actionPosition = medicalCabinet.gameObject.transform.position;
            String  guid           = GuidHelper.GetGuid(medicalCabinet.gameObject);
            bool    doorOpen       = (bool)medicalCabinet.ReflectionGet("doorOpen");

            MedicalCabinetClicked cabinetClicked = new MedicalCabinetClicked(packetSender.PlayerId, guid, actionPosition, doorOpen, medicalCabinet.hasMedKit, medicalCabinet.timeSpawnMedKit);

            packetSender.Send(cabinetClicked);
        }
Exemple #4
0
        public override void Process(MedicalCabinetClicked packet)
        {
            GameObject     gameObject = NitroxEntity.RequireObjectFrom(packet.Id);
            MedicalCabinet cabinet    = gameObject.RequireComponent <MedicalCabinet>();

            bool medkitPickedUp = !packet.HasMedKit && cabinet.hasMedKit;

            cabinet.hasMedKit       = packet.HasMedKit;
            cabinet.timeSpawnMedKit = packet.NextSpawnTime;

            bool isDoorOpen       = (bool)cabinet.ReflectionGet("doorOpen");
            bool doorChangedState = isDoorOpen != packet.DoorOpen;

            if (doorChangedState)
            {
                cabinet.Invoke("ToggleDoorState", 0f);
            }
            else if (medkitPickedUp)
            {
                cabinet.Invoke("ToggleDoorState", 1.8f);
            }
        }
Exemple #5
0
        public override void Process(MedicalCabinetClicked packet)
        {
            Optional <GameObject> opGameObject = GuidHelper.GetObjectFrom(packet.Guid);

            if (opGameObject.IsPresent())
            {
                GameObject     gameObject = opGameObject.Get();
                MedicalCabinet cabinet    = gameObject.GetComponent <MedicalCabinet>();

                if (cabinet != null)
                {
                    bool medkitPickedUp = !packet.HasMedKit && cabinet.hasMedKit;

                    cabinet.hasMedKit       = packet.HasMedKit;
                    cabinet.timeSpawnMedKit = packet.NextSpawnTime;

                    bool isDoorOpen       = (bool)cabinet.ReflectionGet("doorOpen");
                    bool doorChangedState = isDoorOpen != packet.DoorOpen;

                    if (doorChangedState)
                    {
                        cabinet.Invoke("ToggleDoorState", 0f);
                    }
                    else if (medkitPickedUp)
                    {
                        cabinet.Invoke("ToggleDoorState", 1.8f);
                    }
                }
                else
                {
                    Console.WriteLine("Guid " + packet.Guid + " did not have a MedicalCabinet script");
                }
            }
            else
            {
                Console.WriteLine("Could not locate medical cabinet with guid: " + packet.Guid);
            }
        }