コード例 #1
0
ファイル: ActorTags.cs プロジェクト: weimingtom/SVNovelEngine
        public override void Excute()
        {
            //base.Excute();

            //actor name
            string actorName = Params["name"];

            Debug.LogFormat("Move Actor: {0}", actorName);

            //get actor
            ActorObject ao = ImageManager.Instance.GetCreatedObject <ActorObject>(actorName);

            if (ao == default(ActorObject))
            {
                return;
            }

            ao.Go.SetActive(true);

            float time = float.Parse(Params["time"]);

            bool isAnim = false;

            if (Params["pos"] != "")
            {
                isAnim = true;
                float x_move = ActorTagsUtility.GetActorPositionX(Params["pos"]);
                float y      = ActorTagsUtility.GetActorPositionY();
                ao.MoveTo(new Vector2(x_move, y), time);
            }
            // Vector3 pos = ActorTagsUtility.GetActorPosition(Params["pos"],Params["z_pos"]);
            if (Params["z_pos"] != "")
            {
                isAnim = true;
                float z_scale = ActorTagsUtility.GetActorPositionZ(Params["z_pos"]);
                ao.ScaleTo(z_scale, time);
            }

            if (isAnim)
            {
                ao.OnAnimationFinish = OnFinishAnimation;
            }

            Engine.Status.EnableNextCommand = false;
        }