diff --git a/ENGLISH.md b/ENGLISH.md index d0d4e9d..3a7437e 100644 --- a/ENGLISH.md +++ b/ENGLISH.md @@ -119,6 +119,7 @@ _New contributions may take up to 1 hour to be reflected._ | name | ratio | Description | |---------------------------------------------------------------------------------------------------------|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| TURTLE
| 0.03 | Designed by [@JIWOO CHOI](https://www.behance.net/sopungcjw42af) | | SLOTH_SUNGLASSES
| 0.06 | | | SLOTH_KING
| 0.05 | | | SLOTH
| 0.7 | | diff --git a/README.md b/README.md index a4cf458..de5d718 100644 --- a/README.md +++ b/README.md @@ -112,79 +112,80 @@ _새로운 contribution은 반영은 최대 1시간이 소요될 수 있어요._ ### 등장 가능한 펫들 -| name | ratio | Description | -|----------------------------------------------------------------------------------------------------------|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| SLOTH_SUNGLASSES
| 0.06 | | -| SLOTH_KING
| 0.05 | | -| SLOTH
| 0.7 | | -| DESSERT_FOX
| 0.05 | | -| RABBIT
| 0.9 | | -| MOLE
| 0.3 | | -| MOLE_GRASS
| 0.1 | | -| QUOKKA
| 0.3 | | -| QUOKKA_LEAF
| 0.1 | | -| QUOKKA_SUNGLASSES
| 0.05 | | -| FISH_MAN
| 0.001 | | -| FISH_MAN_GLASSES
| 0.001 | | -| flamingo
| 0.08 | | -| TEN_MM
| 0.00 | Character created by `10MM` donations
Only buy in shop
10MM | -| goblin
| 0.06 | | -| goblin-bag
| 0.03 | | -| bibbi
| 0.00 | Character created by `BIBBI` donations
Only buy in shop
BIBBI | -| cat
| 0.1 | | -| cheese-cat
| 0.04 | | -| galchi-cat
| 0.06 | | -| white-cat
| 0.04 | | -| goose
| 1.0 | | -| goose_sunglasses
| 0.05 | | -| goose_kotlin
| 0.01 | | -| goose_java
| 0.01 | | -| goose_js
| 0.01 | | -| goose_node
| 0.01 | | -| goose_swift
| 0.01 | | -| goose_linux
| 0.01 | | -| goose_spring
| 0.01 | | -| little_chick
| 0.9 | | +| name | ratio | Description | +|---------------------------------------------------------------------------------------------------------|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| TURTLE
| 0.03 | Designed by [@JIWOO CHOI](https://www.behance.net/sopungcjw42af) | +| SLOTH_SUNGLASSES
| 0.06 | | +| SLOTH_KING
| 0.05 | | +| SLOTH
| 0.7 | | +| DESSERT_FOX
| 0.05 | | +| RABBIT
| 0.9 | | +| MOLE
| 0.3 | | +| MOLE_GRASS
| 0.1 | | +| QUOKKA
| 0.3 | | +| QUOKKA_LEAF
| 0.1 | | +| QUOKKA_SUNGLASSES
| 0.05 | | +| FISH_MAN
| 0.001 | | +| FISH_MAN_GLASSES
| 0.001 | | +| flamingo
| 0.08 | | +| TEN_MM
| 0.00 | Character created by `10MM` donations
Only buy in shop
10MM | +| goblin
| 0.06 | | +| goblin-bag
| 0.03 | | +| bibbi
| 0.00 | Character created by `BIBBI` donations
Only buy in shop
BIBBI | +| cat
| 0.1 | | +| cheese-cat
| 0.04 | | +| galchi-cat
| 0.06 | | +| white-cat
| 0.04 | | +| goose
| 1.0 | | +| goose_sunglasses
| 0.05 | | +| goose_kotlin
| 0.01 | | +| goose_java
| 0.01 | | +| goose_js
| 0.01 | | +| goose_node
| 0.01 | | +| goose_swift
| 0.01 | | +| goose_linux
| 0.01 | | +| goose_spring
| 0.01 | | +| little_chick
| 0.9 | | | little_chick_sunfsuglasses
| 0.4 | | -| little_chick_kotlin
| 0.01 | | -| little_chick_java
| 0.01 | | -| little_chick_js
| 0.01 | | -| little_chick_node
| 0.01 | | -| little_chick_swift
| 0.01 | | -| little_chick_linux
| 0.01 | | -| little_chick_spring
| 0.01 | | -| penguin
| 0.5 | | -| penguin_sunglasses
| 0.2 | | -| penguin_kotlin
| 0.01 | | -| penguin_java
| 0.01 | | -| penguin_js
| 0.01 | | -| penguin_node
| 0.01 | | -| penguin_swift
| 0.01 | | -| penguin_linux
| 0.01 | | -| penguin_spring
| 0.01 | | -| pig
| 0.2 | | -| pig_sunglasses
| 0.08 | | -| pig_kotlin
| 0.01 | | -| pig_java
| 0.01 | | -| pig_js
| 0.01 | | -| pig_node
| 0.01 | | -| pig_swift
| 0.01 | | -| pig_linux
| 0.01 | | -| pig_spring
| 0.01 | | -| slime_red
| 0.1 | | -| slime_red_kotlin
| 0.001 | | -| slime_red_java
| 0.001 | | -| slime_red_js
| 0.001 | | -| slime_red_node
| 0.001 | | -| slime_red_swift
| 0.001 | | -| slime_red_linux
| 0.001 | | -| slime_green
| 0.1 | | -| slime_blue
| 0.1 | | -| cheese_cat_collaborator
| 0.0 | Pet made for collaborator [devxb](https://github.com/devxb) | -| dessert_fox_collaborator
| 0.0 | Pet made for collaborator [sumi-001](https://github.com/sumi-0011) | -| white_cat_collaborator
| 0.0 | Pet made for collaborator [Ha youna](https://www.behance.net/hyn991022a6be) | -| pig_collaborator
| 0.0 | Pet made for collaborator [hyesungoh](https://github.com/hyesungoh) | -| rabbit_collaborator
| 0.0 | Pet made for collaborator [Choi jiwoo](https://www.behance.net/sopungcjw42af) | +| little_chick_kotlin
| 0.01 | | +| little_chick_java
| 0.01 | | +| little_chick_js
| 0.01 | | +| little_chick_node
| 0.01 | | +| little_chick_swift
| 0.01 | | +| little_chick_linux
| 0.01 | | +| little_chick_spring
| 0.01 | | +| penguin
| 0.5 | | +| penguin_sunglasses
| 0.2 | | +| penguin_kotlin
| 0.01 | | +| penguin_java
| 0.01 | | +| penguin_js
| 0.01 | | +| penguin_node
| 0.01 | | +| penguin_swift
| 0.01 | | +| penguin_linux
| 0.01 | | +| penguin_spring
| 0.01 | | +| pig
| 0.2 | | +| pig_sunglasses
| 0.08 | | +| pig_kotlin
| 0.01 | | +| pig_java
| 0.01 | | +| pig_js
| 0.01 | | +| pig_node
| 0.01 | | +| pig_swift
| 0.01 | | +| pig_linux
| 0.01 | | +| pig_spring
| 0.01 | | +| slime_red
| 0.1 | | +| slime_red_kotlin
| 0.001 | | +| slime_red_java
| 0.001 | | +| slime_red_js
| 0.001 | | +| slime_red_node
| 0.001 | | +| slime_red_swift
| 0.001 | | +| slime_red_linux
| 0.001 | | +| slime_green
| 0.1 | | +| slime_blue
| 0.1 | | +| cheese_cat_collaborator
| 0.0 | Pet made for collaborator [devxb](https://github.com/devxb) | +| dessert_fox_collaborator
| 0.0 | Pet made for collaborator [sumi-001](https://github.com/sumi-0011) | +| white_cat_collaborator
| 0.0 | Pet made for collaborator [Ha youna](https://www.behance.net/hyn991022a6be) | +| pig_collaborator
| 0.0 | Pet made for collaborator [hyesungoh](https://github.com/hyesungoh) | +| rabbit_collaborator
| 0.0 | Pet made for collaborator [Choi jiwoo](https://www.behance.net/sopungcjw42af) | ## diff --git a/docs/turtle.svg b/docs/turtle.svg new file mode 100644 index 0000000..b61f942 --- /dev/null +++ b/docs/turtle.svg @@ -0,0 +1,167 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/kotlin/org/gitanimals/render/domain/PersonaType.kt b/src/main/kotlin/org/gitanimals/render/domain/PersonaType.kt index 67e2f0b..f776959 100644 --- a/src/main/kotlin/org/gitanimals/render/domain/PersonaType.kt +++ b/src/main/kotlin/org/gitanimals/render/domain/PersonaType.kt @@ -1242,6 +1242,21 @@ enum class PersonaType(val weight: Double, private var dropRate: String? = null) StringBuilder().moveRandomly("sloth", id, 5, "180s", 5, 16.5) .toString() }, + TURTLE(0.03) { + override fun loadSvg(user: User, persona: Persona, mode: Mode): String { + return turtleSvg.replace("*{act}", act(persona.id)) + .replace("*{id}", persona.id.toString()) + .replace("*{level}", persona.level.value.toSvg(14.0, 2.0)) + .replace( + "*{levelx}", + (-1 + (-1 * (persona.level.value.toString().length))).toString() + ) + } + + override fun act(id: Long): String = + StringBuilder().moveRandomly("turtle", id, 5, "180s", 5, 33.5) + .toString() + }, ; init { diff --git a/src/main/kotlin/org/gitanimals/render/domain/Svgs.kt b/src/main/kotlin/org/gitanimals/render/domain/Svgs.kt index 98102c5..f1bab0b 100644 --- a/src/main/kotlin/org/gitanimals/render/domain/Svgs.kt +++ b/src/main/kotlin/org/gitanimals/render/domain/Svgs.kt @@ -223,6 +223,9 @@ val slothSunglassesSvg: String = ClassPathResource("persona/animal/sloth-sunglas val rabbitCollaboratorSvg: String = ClassPathResource("persona/animal/rabbit-collaborator.svg") .getContentAsString(Charset.defaultCharset()) +val turtleSvg: String = ClassPathResource("persona/animal/turtle.svg") + .getContentAsString(Charset.defaultCharset()) + val largeTextSvgs = lazy { val map = mutableMapOf() for (i in 'A'..'Z') { diff --git a/src/main/resources/persona/animal/turtle.svg b/src/main/resources/persona/animal/turtle.svg new file mode 100644 index 0000000..dda1d15 --- /dev/null +++ b/src/main/resources/persona/animal/turtle.svg @@ -0,0 +1,211 @@ + + + + + + + + + + + + + *{contribution} + + + + + + + + + + + + + + + + + + + + *{level} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +