示例#1
0
        // Token: 0x060030FE RID: 12542 RVA: 0x0012D6FC File Offset: 0x0012B8FC
        private static bool UpdateAllowed()
        {
            MultiplayerBuilder.SetDefaultPlaceTransform(ref MultiplayerBuilder.placePosition, ref MultiplayerBuilder.placeRotation);
            bool flag = false;
            ConstructableBase componentInParent = MultiplayerBuilder.ghostModel.GetComponentInParent <ConstructableBase>();
            bool flag2;

            if (componentInParent != null)
            {
                Transform transform = componentInParent.transform;
                transform.position = MultiplayerBuilder.placePosition;
                transform.rotation = MultiplayerBuilder.placeRotation;
                flag2 = componentInParent.UpdateGhostModel(MultiplayerBuilder.GetAimTransform(), MultiplayerBuilder.ghostModel, default(RaycastHit), out flag);
                MultiplayerBuilder.placePosition = transform.position;
                MultiplayerBuilder.placeRotation = transform.rotation;
                if (flag)
                {
                    MultiplayerBuilder.renderers = MaterialExtensions.AssignMaterial(MultiplayerBuilder.ghostModel, MultiplayerBuilder.ghostStructureMaterial);
                    MultiplayerBuilder.InitBounds(MultiplayerBuilder.ghostModel);
                }
            }
            else
            {
                flag2 = MultiplayerBuilder.CheckAsSubModule();
            }
            if (flag2)
            {
                List <GameObject> list = new List <GameObject>();
                MultiplayerBuilder.GetObstacles(MultiplayerBuilder.placePosition, MultiplayerBuilder.placeRotation, MultiplayerBuilder.bounds, list);
                flag2 = (list.Count == 0);
                list.Clear();
            }
            return(flag2);
        }