예제 #1
0
 public MotionOperator(
     EntityCommandBuffer.ParallelWriter command,
     ComponentDataFromEntity <Motion.InfoData> motionInfos,
     ComponentDataFromEntity <Motion.CursorData> motionCursors,
     Entity motionEntity, int jobIndex
     )
 {
     this.info = motionInfos[motionEntity];
     //this.cursor = motionCursors[ motionEntity ];
     this.entity   = motionEntity;
     this.jobIndex = jobIndex;
     this.cmd      = command;
 }
예제 #2
0
        /// <summary>
        /// モーション初期化セット、disable があれば消す
        /// </summary>
        static public void Start(int entityIndex,
                                 ref EntityCommandBuffer.ParallelWriter cmd, Entity motinEntity, Motion.InfoData motionInfo,
                                 int motionIndex, bool isLooping, float delayTime = 0.0f, bool isContinuous = true
                                 )
        {
            if (motionInfo.MotionIndex == motionIndex)
            {
                return;
            }

            cmd.AddComponent(entityIndex, motinEntity,
                             new Motion.InitializeData
            {
                MotionIndex  = motionIndex,
                DelayTime    = delayTime,
                IsContinuous = isContinuous,
                IsLooping    = isLooping,
            }
                             );
            cmd.AddComponent(entityIndex, motinEntity, new Motion.ProgressTimerTag {
            });
        }