/// <summary> /// The Walk is only used for animation, not used during the game playing /// </summary> /// <param name="moveAction"></param> public void CreatureWalks(List <SingleWalkAction> walkActions) { if (walkActions == null || walkActions.Count == 0) { return; } if (walkActions.Count == 1) { var movePack = HandleWalkAction(walkActions[0]); gameCallback.OnHandlePack(movePack); } else { BatchPack batch = new BatchPack(); for (int i = 0; i < walkActions.Count; i++) { var movePack = HandleWalkAction(walkActions[i]); if (movePack != null) { batch.Add(movePack); } } gameCallback.OnHandlePack(batch); } }
private static ActivityBase BuildBatchActivity(BatchPack pack) { BatchActivity batch = new BatchActivity(); if (pack != null) { foreach (PackBase p in pack.Packs) { if (p == null) { throw new ArgumentNullException("BatchActivity"); } var a = BuildFromPack(p); if (a != null) { batch.Add(a); } } } return(batch); }