Exemplo n.º 1
0
        protected override void OnUpdate()
        {
            for (int i = 0; i < FollowEntities.Length; i++)
            {
                Transform         trans = FollowEntities.Transforms[i];
                FollowComponent   fc    = FollowEntities.FollowComponents[i];
                VelocityComponent vc    = FollowEntities.VelocityComponents[i];

                Vector3 direction = trans.InverseTransformDirection(fc.followTrans.position - trans.position);

                if (direction.magnitude < fc.stopDistance)
                {
                    vc.inputX = Mathf.Lerp(vc.inputX, 0, Time.deltaTime * 3);
                    vc.inputY = Mathf.Lerp(vc.inputY, 0, Time.deltaTime * 3);
                }
                else
                {
                    direction.Normalize();

                    vc.inputX = Mathf.Lerp(vc.inputX, direction.x, Time.deltaTime * 3);
                    vc.inputY = Mathf.Lerp(vc.inputY, direction.z, Time.deltaTime * 3);
                }
            }

            for (int i = 0; i < LookAtEntities.Length; i++)
            {
                Transform        trans   = LookAtEntities.Transforms[i];
                LookAtComponent  lookAt  = LookAtEntities.LookAtComponents[i];
                HeadingComponent heading = LookAtEntities.HeadingComponents[i];

                Vector3 direction = lookAt.lookTrans.position - trans.position;

                trans.rotation = Quaternion.Lerp(trans.rotation, Quaternion.LookRotation(direction), Time.deltaTime * heading.angularSpeed);
            }
        }
Exemplo n.º 2
0
        protected override void OnUpdate()
        {
            for (int i = 0; i < HeadingEntities.Length; i++)
            {
                Transform        trans   = HeadingEntities.Transforms[i];
                HeadingComponent heading = HeadingEntities.HeadingComponents[i];

                trans.Rotate(new Vector3(0, heading.lookX, 0) * heading.angularSpeed * Time.deltaTime, Space.World);
            }
        }
Exemplo n.º 3
0
        private static LanguageVariant GetNewTransferLanguageVariant(CreateTransferItemParameters createTransferItemParameters)
        {
            var(_, customer, fields) = createTransferItemParameters;

            var variant = new LanguageVariant
            {
                Elements =
                {
                    new CustomElement
                    {
                        Element = new Reference
                        {
                            Codename = "info"
                        },
                        Value = CoreHelper.Serialize(new
                        {
                            customer
                        })
                    },
                    new RichTextElement
                    {
                        Element = new Reference
                        {
                            Codename = "fields"
                        }
                    }
                }
            };

            if (variant.Elements[1] is RichTextElement richTextElement)
            {
                var fieldHtmlBuilder = new StringBuilder();

                if (fields != default)
                {
                    foreach (var field in fields)
                    {
                        AbstractComponent?component = default;

                        switch (field.Type)
                        {
                        case Field.heading:
                            component = new HeadingComponent(field);
                            break;

                        case Field.write_text:
                            component = new WriteTextComponent(field);
                            break;

                        case Field.upload_file:
                            component = new UploadFileComponent(field);
                            break;

                        case Field.download_asset:
                            component = new DownloadAssetComponent(field);
                            break;
                        }

                        if (component != default)
                        {
                            fieldHtmlBuilder.Append($"<object type=\"application/kenticocloud\" data-type=\"component\" data-id=\"{component.Id}\"></object>");

                            richTextElement.Components.Add(component);
                        }
                    }
                }

                fieldHtmlBuilder.Append("<p><br/></p>");

                richTextElement.Value = fieldHtmlBuilder.ToString();
            }

            return(variant);
        }