@rpg-engine/long-bow 0.8.50 → 0.8.52

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.
@@ -29306,6 +29306,40 @@ var EmptyState = /*#__PURE__*/styled.div.withConfig({
29306
29306
  componentId: "sc-19q95ue-15"
29307
29307
  })(["position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:", ";width:100%;padding:2rem;svg{font-size:3rem;margin-bottom:1rem;opacity:0.7;}p{font-family:'Press Start 2P',cursive;font-size:0.9rem;margin:0;}"], uiColors.lightGray);
29308
29308
 
29309
+ function useDailyTasksState(_ref) {
29310
+ var onClaimReward = _ref.onClaimReward,
29311
+ onClaimGlobalReward = _ref.onClaimGlobalReward;
29312
+ var _useState = useState(false),
29313
+ globalRewardClaimed = _useState[0],
29314
+ setGlobalRewardClaimed = _useState[1];
29315
+ var _useState2 = useState([]),
29316
+ claimedTaskKeys = _useState2[0],
29317
+ setClaimedTaskKeys = _useState2[1];
29318
+ var handleClaimReward = function handleClaimReward(taskKey, type) {
29319
+ onClaimReward({
29320
+ type: type,
29321
+ taskKey: taskKey
29322
+ });
29323
+ setClaimedTaskKeys(function (prev) {
29324
+ return [].concat(prev, [taskKey]);
29325
+ });
29326
+ };
29327
+ var handleClaimGlobalRewards = function handleClaimGlobalRewards(tasks) {
29328
+ onClaimGlobalReward(tasks);
29329
+ setGlobalRewardClaimed(true);
29330
+ };
29331
+ var isTaskRewardClaimed = function isTaskRewardClaimed(taskKey) {
29332
+ return claimedTaskKeys.includes(taskKey);
29333
+ };
29334
+ return {
29335
+ globalRewardClaimed: globalRewardClaimed,
29336
+ claimedTaskKeys: claimedTaskKeys,
29337
+ isTaskRewardClaimed: isTaskRewardClaimed,
29338
+ handleClaimReward: handleClaimReward,
29339
+ handleClaimGlobalRewards: handleClaimGlobalRewards
29340
+ };
29341
+ }
29342
+
29309
29343
  var formatTaskKey = function formatTaskKey(key) {
29310
29344
  var formatted = key.replace(/[-_]/g, ' ');
29311
29345
  formatted = formatted.replace(/([A-Z])/g, ' $1');
@@ -29408,13 +29442,13 @@ var DailyRewardsTooltip = function DailyRewardsTooltip(_ref) {
29408
29442
  return React.createElement(TooltipContainer$1, null, React.createElement(CollapsibleHeader, {
29409
29443
  onClick: toggleExpand
29410
29444
  }, React.createElement(HeaderText, null, "Rewards?"), React.createElement(ExpandIcon, null, isExpanded ? '▼' : '▶')), isExpanded && React.createElement(CollapsibleContent, null, React.createElement(RewardsList, null, sortedRewards.map(function (reward, index) {
29411
- var _reward$key;
29445
+ var _reward$texturePath, _reward$key;
29412
29446
  return React.createElement(RewardItem, {
29413
29447
  key: index
29414
29448
  }, React.createElement(SpriteFromAtlas, {
29415
29449
  atlasJSON: itemsAtlasJSON,
29416
29450
  atlasIMG: itemsAtlasIMG,
29417
- spriteKey: reward.type === RewardType.Gold ? 'others/gold-coin-qty-6.png' : reward.type === RewardType.Experience ? 'others/royal-chalice.png' : reward.texturePath || 'others/no-image.png',
29451
+ spriteKey: (_reward$texturePath = reward.texturePath) != null ? _reward$texturePath : 'check.png',
29418
29452
  width: 24,
29419
29453
  height: 24,
29420
29454
  imgScale: 1.75
@@ -29459,7 +29493,7 @@ var ItemContent = /*#__PURE__*/styled.div.withConfig({
29459
29493
  var RewardLabel = /*#__PURE__*/styled.span.withConfig({
29460
29494
  displayName: "DailyRewardsTooltip__RewardLabel",
29461
29495
  componentId: "sc-wxzcu4-8"
29462
- })(["color:", ";font-size:0.9rem;line-height:1.2;display:inline-flex;align-items:center;"], uiColors.yellow);
29496
+ })(["color:", ";font-size:0.9rem;line-height:1.2;padding-top:15px;display:inline-flex;align-items:center;"], uiColors.yellow);
29463
29497
  var RewardValue = /*#__PURE__*/styled.span.withConfig({
29464
29498
  displayName: "DailyRewardsTooltip__RewardValue",
29465
29499
  componentId: "sc-wxzcu4-9"
@@ -29625,10 +29659,11 @@ var DailyTaskItem = function DailyTaskItem(_ref) {
29625
29659
  itemsAtlasJSON = _ref.itemsAtlasJSON,
29626
29660
  itemsAtlasIMG = _ref.itemsAtlasIMG,
29627
29661
  iconAtlasJSON = _ref.iconAtlasJSON,
29628
- iconAtlasIMG = _ref.iconAtlasIMG;
29662
+ iconAtlasIMG = _ref.iconAtlasIMG,
29663
+ isRewardClaimed = _ref.isRewardClaimed;
29629
29664
  var isMobile = isMobileOrTablet();
29630
29665
  var isCompleted = task.status === TaskStatus.Completed;
29631
- var isClaimed = task.claimed;
29666
+ var isClaimed = task.claimed || isRewardClaimed;
29632
29667
  var handleClaimReward = function handleClaimReward() {
29633
29668
  onClaimReward(task.key, task.type);
29634
29669
  };
@@ -29689,29 +29724,36 @@ var CollectWrapper = /*#__PURE__*/styled.div.withConfig({
29689
29724
 
29690
29725
  var GlobalDailyProgress = function GlobalDailyProgress(_ref) {
29691
29726
  var tasks = _ref.tasks,
29692
- onClaimAllRewards = _ref.onClaimAllRewards;
29727
+ onClaimAllRewards = _ref.onClaimAllRewards,
29728
+ globalRewardClaimed = _ref.globalRewardClaimed;
29693
29729
  var totalTasks = tasks.length;
29694
29730
  var completedTasks = tasks.filter(function (task) {
29695
29731
  return task.status === TaskStatus.Completed;
29696
29732
  }).length;
29697
- var claimedTasks = tasks.filter(function (task) {
29733
+ var allCompleted = tasks.length > 0 && tasks.every(function (task) {
29734
+ return task.status === TaskStatus.Completed;
29735
+ });
29736
+ var allClaimed = tasks.length > 0 && tasks.every(function (task) {
29698
29737
  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);
29738
+ });
29739
+ var shouldShowGlobalButton = allCompleted && allClaimed && !globalRewardClaimed;
29740
+ var handleClaimAll = function handleClaimAll() {
29741
+ var taskIdentifiers = tasks.map(function (task) {
29742
+ return {
29743
+ taskKey: task.key,
29744
+ type: task.type
29745
+ };
29746
+ });
29747
+ onClaimAllRewards({
29748
+ tasks: taskIdentifiers
29749
+ });
29708
29750
  };
29709
29751
  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
29752
  percentage: completedTasks / totalTasks * 100
29711
- })), totalTasks > 0 && allCompleted && allClaimed && React.createElement(React.Fragment, null, isClaimed ? React.createElement(ClaimedText$1, null, "Global Rewards Claimed") : React.createElement(CollectWrapper$1, null, React.createElement(Button, {
29753
+ })), allCompleted && React.createElement(React.Fragment, null, shouldShowGlobalButton ? React.createElement(CollectWrapper$1, null, React.createElement(Button, {
29712
29754
  buttonType: ButtonTypes.RPGUIButton,
29713
29755
  onPointerDown: handleClaimAll
29714
- }, "Collect Global Rewards"))));
29756
+ }, "Collect Global Rewards")) : React.createElement(ClaimedText$1, null, "Global Rewards Claimed")));
29715
29757
  };
29716
29758
  var GlobalProgressContainer = /*#__PURE__*/styled.div.withConfig({
29717
29759
  displayName: "GlobalDailyProgress__GlobalProgressContainer",
@@ -29760,35 +29802,16 @@ var DailyTasks = function DailyTasks(_ref) {
29760
29802
  iconAtlasJSON = _ref.iconAtlasJSON,
29761
29803
  iconAtlasIMG = _ref.iconAtlasIMG;
29762
29804
  var _React$useState = React.useState(tasks),
29763
- localTasks = _React$useState[0],
29764
- setLocalTasks = _React$useState[1];
29805
+ localTasks = _React$useState[0];
29765
29806
  var size = useResponsiveSize(scale);
29766
- var handleClaimReward = function handleClaimReward(taskKey, type) {
29767
- setLocalTasks(function (prevTasks) {
29768
- return prevTasks.map(function (task) {
29769
- return task.key === taskKey ? _extends({}, task, {
29770
- claimed: true
29771
- }) : task;
29772
- });
29773
- });
29774
- onClaimReward({
29775
- type: type,
29776
- taskKey: taskKey
29777
- });
29778
- };
29779
- var handleClaimAllRewards = function handleClaimAllRewards() {
29780
- var tasksToReward = localTasks.filter(function (task) {
29781
- return task.status === TaskStatus.Completed && !task.claimed;
29782
- }).map(function (task) {
29783
- return {
29784
- type: task.type,
29785
- taskKey: task.key
29786
- };
29787
- });
29788
- onClaimGlobalReward({
29789
- tasks: tasksToReward
29790
- });
29791
- };
29807
+ var _useDailyTasksState = useDailyTasksState({
29808
+ onClaimReward: onClaimReward,
29809
+ onClaimGlobalReward: onClaimGlobalReward
29810
+ }),
29811
+ globalRewardClaimed = _useDailyTasksState.globalRewardClaimed,
29812
+ handleClaimReward = _useDailyTasksState.handleClaimReward,
29813
+ handleClaimGlobalRewards = _useDailyTasksState.handleClaimGlobalRewards,
29814
+ isTaskRewardClaimed = _useDailyTasksState.isTaskRewardClaimed;
29792
29815
  if (!size) return null;
29793
29816
  return React.createElement(TasksContainer, {
29794
29817
  type: RPGUIContainerTypes.Framed,
@@ -29801,7 +29824,8 @@ var DailyTasks = function DailyTasks(_ref) {
29801
29824
  className: "tasks-container"
29802
29825
  }, React.createElement(GlobalDailyProgress, {
29803
29826
  tasks: localTasks,
29804
- onClaimAllRewards: handleClaimAllRewards
29827
+ onClaimAllRewards: handleClaimGlobalRewards,
29828
+ globalRewardClaimed: globalRewardClaimed
29805
29829
  }), localTasks.map(function (task) {
29806
29830
  return React.createElement(DailyTaskItem, {
29807
29831
  key: task.key,
@@ -29811,7 +29835,8 @@ var DailyTasks = function DailyTasks(_ref) {
29811
29835
  itemsAtlasJSON: itemsAtlasJSON,
29812
29836
  itemsAtlasIMG: itemsAtlasIMG,
29813
29837
  iconAtlasJSON: iconAtlasJSON,
29814
- iconAtlasIMG: iconAtlasIMG
29838
+ iconAtlasIMG: iconAtlasIMG,
29839
+ isRewardClaimed: isTaskRewardClaimed(task.key)
29815
29840
  });
29816
29841
  }))));
29817
29842
  };