@rpg-engine/long-bow 0.6.0 → 0.6.2
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.
- package/dist/components/Item/Inventory/ItemGem.d.ts +8 -0
- package/dist/long-bow.cjs.development.js +67 -6
- package/dist/long-bow.cjs.development.js.map +1 -1
- package/dist/long-bow.cjs.production.min.js +1 -1
- package/dist/long-bow.cjs.production.min.js.map +1 -1
- package/dist/long-bow.esm.js +67 -6
- package/dist/long-bow.esm.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Item/Inventory/ItemGem.tsx +80 -0
- package/src/components/Item/Inventory/ItemSlotRenderer.tsx +15 -1
- package/src/mocks/itemContainer.mocks.ts +58 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IItem } from '@rpg-engine/shared';
|
|
3
|
+
interface IProps {
|
|
4
|
+
item: IItem;
|
|
5
|
+
}
|
|
6
|
+
export declare const onRenderGems: (item: IItem) => JSX.Element | undefined;
|
|
7
|
+
export declare const ItemSlotQty: ({ item }: IProps) => JSX.Element;
|
|
8
|
+
export default ItemSlotQty;
|
|
@@ -13665,6 +13665,62 @@ var rarityColor = function rarityColor(item) {
|
|
|
13665
13665
|
}
|
|
13666
13666
|
};
|
|
13667
13667
|
|
|
13668
|
+
var gemColors = {
|
|
13669
|
+
'emerald-gem': '#50C878',
|
|
13670
|
+
'topaz-radiance': '#FFC87C',
|
|
13671
|
+
'sapphire-gem': '#0F52BA',
|
|
13672
|
+
'ruby-gem': '#E0115F',
|
|
13673
|
+
'misty-quartz-gem': '#D9D9F3',
|
|
13674
|
+
'coral-reef-gem': '#FF7F50',
|
|
13675
|
+
'jasper-gem': '#D73B3E',
|
|
13676
|
+
'earthstone-gem': '#8B4513',
|
|
13677
|
+
'obsidian-gem': '#0B0C0E',
|
|
13678
|
+
'amethyst-gem': '#9966CC'
|
|
13679
|
+
};
|
|
13680
|
+
var defaultColor = '#FFFFFF'; // Default color (white)
|
|
13681
|
+
var onRenderGems = function onRenderGems(item) {
|
|
13682
|
+
var _item$attachedGems;
|
|
13683
|
+
var gemQty = ((_item$attachedGems = item.attachedGems) == null ? void 0 : _item$attachedGems.length) || 0;
|
|
13684
|
+
if (gemQty > 0) {
|
|
13685
|
+
return React__default.createElement(ItemSlotQty, {
|
|
13686
|
+
item: item
|
|
13687
|
+
});
|
|
13688
|
+
}
|
|
13689
|
+
return undefined;
|
|
13690
|
+
};
|
|
13691
|
+
var ItemSlotQty = function ItemSlotQty(_ref) {
|
|
13692
|
+
var _item$attachedGems2;
|
|
13693
|
+
var item = _ref.item;
|
|
13694
|
+
console.log(item.attachedGems);
|
|
13695
|
+
var itemId = item._id;
|
|
13696
|
+
return React__default.createElement(ItemQtyContainer, {
|
|
13697
|
+
key: "qty-" + itemId,
|
|
13698
|
+
className: "item-slot-qty"
|
|
13699
|
+
}, (_item$attachedGems2 = item.attachedGems) == null ? void 0 : _item$attachedGems2.map(function (gem, index) {
|
|
13700
|
+
return React__default.createElement(Gem, {
|
|
13701
|
+
key: itemId + "-gem-" + index,
|
|
13702
|
+
color: gemColors[gem.key] || defaultColor
|
|
13703
|
+
});
|
|
13704
|
+
}));
|
|
13705
|
+
};
|
|
13706
|
+
var ItemQtyContainer = /*#__PURE__*/styled__default.div.withConfig({
|
|
13707
|
+
displayName: "ItemGem__ItemQtyContainer",
|
|
13708
|
+
componentId: "sc-1ekseaq-0"
|
|
13709
|
+
})(["position:relative;width:85%;height:16px;top:26px;left:-2px;pointer-events:none;transform:scale(0.8);display:flex;align-items:center;justify-content:center;opacity:0.8;"]);
|
|
13710
|
+
var Gem = /*#__PURE__*/styled__default.div.withConfig({
|
|
13711
|
+
displayName: "ItemGem__Gem",
|
|
13712
|
+
componentId: "sc-1ekseaq-1"
|
|
13713
|
+
})(["width:8px;height:8px;background-color:", ";border:1px solid black;transform:rotate(45deg);margin:0 2px;box-shadow:0 0 5px ", ";transition:transform 0.2s,box-shadow 0.2s;&:hover{transform:rotate(45deg) scale(1.2);box-shadow:0 0 10px ", ";}"], function (_ref2) {
|
|
13714
|
+
var color = _ref2.color;
|
|
13715
|
+
return color;
|
|
13716
|
+
}, function (_ref3) {
|
|
13717
|
+
var color = _ref3.color;
|
|
13718
|
+
return color;
|
|
13719
|
+
}, function (_ref4) {
|
|
13720
|
+
var color = _ref4.color;
|
|
13721
|
+
return color;
|
|
13722
|
+
});
|
|
13723
|
+
|
|
13668
13724
|
var onRenderStackInfo = function onRenderStackInfo(itemId, stackQty) {
|
|
13669
13725
|
var isFractionalStackQty = stackQty % 1 !== 0;
|
|
13670
13726
|
var isLargerThan999 = stackQty > 999;
|
|
@@ -13672,7 +13728,7 @@ var onRenderStackInfo = function onRenderStackInfo(itemId, stackQty) {
|
|
|
13672
13728
|
if (isLargerThan999) qtyClassName = 'small';
|
|
13673
13729
|
if (isFractionalStackQty) qtyClassName = 'xsmall';
|
|
13674
13730
|
if (stackQty > 1) {
|
|
13675
|
-
return React__default.createElement(ItemSlotQty, {
|
|
13731
|
+
return React__default.createElement(ItemSlotQty$1, {
|
|
13676
13732
|
itemId: itemId,
|
|
13677
13733
|
stackQty: stackQty,
|
|
13678
13734
|
qtyClassName: qtyClassName
|
|
@@ -13680,11 +13736,11 @@ var onRenderStackInfo = function onRenderStackInfo(itemId, stackQty) {
|
|
|
13680
13736
|
}
|
|
13681
13737
|
return undefined;
|
|
13682
13738
|
};
|
|
13683
|
-
var ItemSlotQty = function ItemSlotQty(_ref) {
|
|
13739
|
+
var ItemSlotQty$1 = function ItemSlotQty(_ref) {
|
|
13684
13740
|
var itemId = _ref.itemId,
|
|
13685
13741
|
stackQty = _ref.stackQty,
|
|
13686
13742
|
qtyClassName = _ref.qtyClassName;
|
|
13687
|
-
return React__default.createElement(ItemQtyContainer, {
|
|
13743
|
+
return React__default.createElement(ItemQtyContainer$1, {
|
|
13688
13744
|
key: "qty-" + itemId,
|
|
13689
13745
|
className: "item-slot-qty"
|
|
13690
13746
|
}, React__default.createElement(Ellipsis, {
|
|
@@ -13694,7 +13750,7 @@ var ItemSlotQty = function ItemSlotQty(_ref) {
|
|
|
13694
13750
|
className: qtyClassName
|
|
13695
13751
|
}, Math.round(stackQty * 100) / 100, ' ')));
|
|
13696
13752
|
};
|
|
13697
|
-
var ItemQtyContainer = /*#__PURE__*/styled__default.div.withConfig({
|
|
13753
|
+
var ItemQtyContainer$1 = /*#__PURE__*/styled__default.div.withConfig({
|
|
13698
13754
|
displayName: "ItemSlotQty__ItemQtyContainer",
|
|
13699
13755
|
componentId: "sc-keb1s5-0"
|
|
13700
13756
|
})(["position:relative;width:85%;height:16px;top:25px;left:2px;pointer-events:none;display:flex;justify-content:flex-end;"]);
|
|
@@ -13709,8 +13765,13 @@ var ItemSlotRenderer = function ItemSlotRenderer(_ref) {
|
|
|
13709
13765
|
atlasIMG = _ref.atlasIMG,
|
|
13710
13766
|
slotSpriteMask = _ref.slotSpriteMask,
|
|
13711
13767
|
item = _ref.item;
|
|
13768
|
+
var renderStackInfo = function renderStackInfo(item) {
|
|
13769
|
+
return item.stackQty && item.stackQty > 1 && onRenderStackInfo(item._id, item.stackQty);
|
|
13770
|
+
};
|
|
13771
|
+
var renderGems = function renderGems(item) {
|
|
13772
|
+
return item.attachedGems && onRenderGems(item);
|
|
13773
|
+
};
|
|
13712
13774
|
var renderItem = function renderItem(item) {
|
|
13713
|
-
var _item$stackQty;
|
|
13714
13775
|
if (!(item != null && item.texturePath)) {
|
|
13715
13776
|
return null;
|
|
13716
13777
|
}
|
|
@@ -13727,7 +13788,7 @@ var ItemSlotRenderer = function ItemSlotRenderer(_ref) {
|
|
|
13727
13788
|
}, atlasJSON),
|
|
13728
13789
|
imgScale: 3,
|
|
13729
13790
|
imgClassname: "sprite-from-atlas-img--item"
|
|
13730
|
-
}),
|
|
13791
|
+
}), renderStackInfo(item), renderGems(item));
|
|
13731
13792
|
};
|
|
13732
13793
|
var renderEquipment = function renderEquipment(itemToRender) {
|
|
13733
13794
|
var _itemToRender$allowed;
|