diff --git a/contracts/libraries/svgs/Profile/Face.sol b/contracts/libraries/svgs/Profile/Face.sol
index 9b7a04a..a11c894 100644
--- a/contracts/libraries/svgs/Profile/Face.sol
+++ b/contracts/libraries/svgs/Profile/Face.sol
@@ -2,23 +2,47 @@
pragma solidity ^0.8.0;
import {LensColors} from './LensColors.sol';
+import {Face2} from './Face2.sol';
library Face {
enum FaceVariants {
- BUBBLEGUM,
- GRIN_TONGUE,
- GRIN,
- LAUGH,
- LOVE,
- OOPS,
- SLEEPY,
- SMILE_TEETH,
- SMILE,
- SMIRK,
- TONGUE,
- WINK,
- WOW_TONGUE,
- WOW
+ BUBBLEGUM, // 0
+ GRIN_TONGUE, // 1
+ GRIN, // 2
+ LAUGH, // 3
+ LOVE, // 4
+ OOPS, // 5
+ SLEEPY, // 6
+ SMILE_TEETH, // 7
+ SMILE, // 8
+ SMIRK, // 9
+ TONGUE, // 10
+ WINK, // 11
+ WOW_TONGUE, // 12
+ WOW, // 13
+ BABY, // 14 /////////// New variants in Face2
+ KAWAII,
+ PIXIE,
+ TODDLER,
+ VAMP
+ }
+
+ // Variants in this library (old variants)
+ enum FaceVariants1 {
+ BUBBLEGUM, // 0
+ GRIN_TONGUE, // 1
+ GRIN, // 2
+ LAUGH, // 3
+ LOVE, // 4
+ OOPS, // 5
+ SLEEPY, // 6
+ SMILE_TEETH, // 7
+ SMILE, // 8
+ SMIRK, // 9
+ TONGUE, // 10
+ WINK, // 11
+ WOW_TONGUE, // 12
+ WOW // 13
}
enum FaceColors {
@@ -26,112 +50,76 @@ library Face {
GOLD
}
- // // We take the 2nd byte from the left for the headwear variant
- // uint8 variant = uint8((seed >> 240) & 0xFF) % 14;
function getFace(FaceVariants faceVariant, FaceColors faceColor) external pure returns (string memory) {
string memory faceSvgStart = string.concat(
''
- );
+ '';
} else if (faceVariant == FaceVariants.GRIN_TONGUE) {
// grin-tongue
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.GRIN) {
// grin
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.LAUGH) {
// laugh
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.LOVE) {
// love
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.OOPS) {
// oops
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.SLEEPY) {
// sleepy
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.SMILE_TEETH) {
// smile-teeth
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.SMILE) {
// smile
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.SMIRK) {
// smirk
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.TONGUE) {
// tongue
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.WINK) {
// wink
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.WOW_TONGUE) {
// wow-tongue
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else if (faceVariant == FaceVariants.WOW) {
// wow
return
- string.concat(
- faceSvgStart,
- ''
- );
+ '';
} else {
revert(); // Avoid warnings.
}
diff --git a/contracts/libraries/svgs/Profile/Face2.sol b/contracts/libraries/svgs/Profile/Face2.sol
new file mode 100644
index 0000000..3f06fb0
--- /dev/null
+++ b/contracts/libraries/svgs/Profile/Face2.sol
@@ -0,0 +1,23 @@
+// SPDX-License-Identifier: MIT
+pragma solidity ^0.8.0;
+
+import {LensColors} from './LensColors.sol';
+import {Face} from './Face.sol';
+
+library Face2 {
+ function getFaceVariant(Face.FaceVariants faceVariant) external pure returns (string memory) {
+ if (faceVariant == Face.FaceVariants.BABY) {
+ return '';
+ } else if (faceVariant == Face.FaceVariants.KAWAII) {
+ return '';
+ } else if (faceVariant == Face.FaceVariants.PIXIE) {
+ return '';
+ } else if (faceVariant == Face.FaceVariants.TODDLER) {
+ return '';
+ } else if (faceVariant == Face.FaceVariants.VAMP) {
+ return '';
+ } else {
+ revert(); // Avoid warnings.
+ }
+ }
+}