Пример #1
0
        public static void OnPlayerClicked(Players.Player player, Pipliz.Box <Shared.PlayerClickedData> boxedData)
        {
            var clickedData = boxedData.item1;

            if (clickedData.clickType == Shared.PlayerClickedData.ClickType.Left)
            {
                if (clickedData.rayCastHit.rayHitType == Shared.RayHitType.Block)
                {
                    DoorBlockTracker.ToggleDoor(clickedData.rayCastHit.voxelHit, player);
                }
            }
        }
Пример #2
0
        public static bool OnTryChangeBlockUser(ModLoader.OnTryChangeBlockUserData userData)
        {
            Players.Player requestedBy = userData.requestedBy;
            Vector3Int     position    = userData.VoxelToChange;

            if (userData.isPrimaryAction && allDoorTypes.Contains(userData.typeTillNow))
            {
                return(DoorBlockTracker.RemoveDoor(position, requestedBy));
            }
            else if (allDoorTypes.Contains(userData.typeToBuild))
            {
                return(DoorBlockTracker.AddDoor(position, userData.typeToBuild, requestedBy));
            }
            return(true);
        }