@rpg-engine/long-bow 0.8.51 → 0.8.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29625,10 +29625,11 @@ var DailyTaskItem = function DailyTaskItem(_ref) {
29625
29625
  itemsAtlasJSON = _ref.itemsAtlasJSON,
29626
29626
  itemsAtlasIMG = _ref.itemsAtlasIMG,
29627
29627
  iconAtlasJSON = _ref.iconAtlasJSON,
29628
- iconAtlasIMG = _ref.iconAtlasIMG;
29628
+ iconAtlasIMG = _ref.iconAtlasIMG,
29629
+ isRewardClaimed = _ref.isRewardClaimed;
29629
29630
  var isMobile = isMobileOrTablet();
29630
29631
  var isCompleted = task.status === TaskStatus.Completed;
29631
- var isClaimed = task.claimed;
29632
+ var isClaimed = task.claimed || isRewardClaimed;
29632
29633
  var handleClaimReward = function handleClaimReward() {
29633
29634
  onClaimReward(task.key, task.type);
29634
29635
  };
@@ -29689,29 +29690,37 @@ var CollectWrapper = /*#__PURE__*/styled.div.withConfig({
29689
29690
 
29690
29691
  var GlobalDailyProgress = function GlobalDailyProgress(_ref) {
29691
29692
  var tasks = _ref.tasks,
29692
- onClaimAllRewards = _ref.onClaimAllRewards;
29693
+ onClaimAllRewards = _ref.onClaimAllRewards,
29694
+ globalRewardClaimed = _ref.globalRewardClaimed;
29693
29695
  var totalTasks = tasks.length;
29694
29696
  var completedTasks = tasks.filter(function (task) {
29695
29697
  return task.status === TaskStatus.Completed;
29696
29698
  }).length;
29697
- var claimedTasks = tasks.filter(function (task) {
29699
+ var allCompleted = tasks.length > 0 && tasks.every(function (task) {
29700
+ return task.status === TaskStatus.Completed;
29701
+ });
29702
+ var allClaimed = tasks.length > 0 && tasks.every(function (task) {
29698
29703
  return task.claimed === true;
29699
- }).length;
29700
- var allCompleted = completedTasks === totalTasks;
29701
- var allClaimed = claimedTasks === totalTasks;
29702
- var _React$useState = React.useState(false),
29703
- isClaimed = _React$useState[0],
29704
- setIsClaimed = _React$useState[1];
29705
- var handleClaimAll = function handleClaimAll(tasks) {
29706
- onClaimAllRewards(tasks);
29707
- setIsClaimed(true);
29704
+ });
29705
+ var shouldShowGlobalButton = allCompleted && allClaimed && !globalRewardClaimed;
29706
+ var shouldShowClaimedMessage = globalRewardClaimed;
29707
+ var handleClaimAll = function handleClaimAll() {
29708
+ var taskIdentifiers = tasks.map(function (task) {
29709
+ return {
29710
+ taskKey: task.key,
29711
+ type: task.type
29712
+ };
29713
+ });
29714
+ onClaimAllRewards({
29715
+ tasks: taskIdentifiers
29716
+ });
29708
29717
  };
29709
29718
  return React.createElement(GlobalProgressContainer, null, React.createElement(HeaderContainer$1, null, React.createElement(GlobeIcon, null, "\uD83C\uDF0D"), React.createElement(ProgressText, null, "Global Tasks Completed: ", completedTasks, "/", totalTasks)), React.createElement(ProgressBar, null, React.createElement(ProgressFill, {
29710
29719
  percentage: completedTasks / totalTasks * 100
29711
- })), totalTasks > 0 && allCompleted && React.createElement(React.Fragment, null, allClaimed || isClaimed ? React.createElement(ClaimedText$1, null, "Global Rewards Claimed") : React.createElement(CollectWrapper$1, null, React.createElement(Button, {
29720
+ })), allCompleted && React.createElement(React.Fragment, null, shouldShowGlobalButton && React.createElement(CollectWrapper$1, null, React.createElement(Button, {
29712
29721
  buttonType: ButtonTypes.RPGUIButton,
29713
29722
  onPointerDown: handleClaimAll
29714
- }, "Collect Global Rewards"))));
29723
+ }, "Collect Global Rewards")), shouldShowClaimedMessage && React.createElement(ClaimedText$1, null, "Global Rewards Claimed")));
29715
29724
  };
29716
29725
  var GlobalProgressContainer = /*#__PURE__*/styled.div.withConfig({
29717
29726
  displayName: "GlobalDailyProgress__GlobalProgressContainer",
@@ -29758,18 +29767,33 @@ var DailyTasks = function DailyTasks(_ref) {
29758
29767
  itemsAtlasJSON = _ref.itemsAtlasJSON,
29759
29768
  itemsAtlasIMG = _ref.itemsAtlasIMG,
29760
29769
  iconAtlasJSON = _ref.iconAtlasJSON,
29761
- iconAtlasIMG = _ref.iconAtlasIMG;
29770
+ iconAtlasIMG = _ref.iconAtlasIMG,
29771
+ _ref$globalRewardClai = _ref.globalRewardClaimed,
29772
+ globalRewardClaimed = _ref$globalRewardClai === void 0 ? false : _ref$globalRewardClai;
29762
29773
  var _React$useState = React.useState(tasks),
29763
29774
  localTasks = _React$useState[0];
29764
29775
  var size = useResponsiveSize(scale);
29765
- var handleClaimReward = function handleClaimReward(taskKey, type) {
29776
+ var _useState = useState([]),
29777
+ claimedTasks = _useState[0],
29778
+ setClaimedTasks = _useState[1];
29779
+ var _useState2 = useState(false),
29780
+ globalRewardClaimedLocal = _useState2[0],
29781
+ setGlobalRewardClaimedLocal = _useState2[1];
29782
+ var handleClaimReward = function handleClaimReward(taskKey, taskType) {
29766
29783
  onClaimReward({
29767
- type: type,
29768
- taskKey: taskKey
29784
+ taskKey: taskKey,
29785
+ type: taskType
29786
+ });
29787
+ setClaimedTasks(function (prev) {
29788
+ return [].concat(prev, [taskKey]);
29769
29789
  });
29770
29790
  };
29771
29791
  var handleClaimGlobalRewards = function handleClaimGlobalRewards(tasks) {
29772
29792
  onClaimGlobalReward(tasks);
29793
+ setGlobalRewardClaimedLocal(true);
29794
+ };
29795
+ var isTaskRewardClaimed = function isTaskRewardClaimed(taskKey) {
29796
+ return claimedTasks.includes(taskKey);
29773
29797
  };
29774
29798
  if (!size) return null;
29775
29799
  return React.createElement(TasksContainer, {
@@ -29783,7 +29807,8 @@ var DailyTasks = function DailyTasks(_ref) {
29783
29807
  className: "tasks-container"
29784
29808
  }, React.createElement(GlobalDailyProgress, {
29785
29809
  tasks: localTasks,
29786
- onClaimAllRewards: handleClaimGlobalRewards
29810
+ onClaimAllRewards: handleClaimGlobalRewards,
29811
+ globalRewardClaimed: globalRewardClaimed || globalRewardClaimedLocal
29787
29812
  }), localTasks.map(function (task) {
29788
29813
  return React.createElement(DailyTaskItem, {
29789
29814
  key: task.key,
@@ -29793,7 +29818,8 @@ var DailyTasks = function DailyTasks(_ref) {
29793
29818
  itemsAtlasJSON: itemsAtlasJSON,
29794
29819
  itemsAtlasIMG: itemsAtlasIMG,
29795
29820
  iconAtlasJSON: iconAtlasJSON,
29796
- iconAtlasIMG: iconAtlasIMG
29821
+ iconAtlasIMG: iconAtlasIMG,
29822
+ isRewardClaimed: task.claimed || isTaskRewardClaimed(task.key)
29797
29823
  });
29798
29824
  }))));
29799
29825
  };