codepet 1.0.0
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/README.md +69 -0
- package/adapters/skill/SKILL.md +697 -0
- package/bin/codepet.js +384 -0
- package/bin/pet-render.sh +43 -0
- package/core/index.js +206 -0
- package/package.json +45 -0
- package/scripts/animate.py +207 -0
- package/scripts/auto_exp.js +91 -0
- package/scripts/crop_all.py +46 -0
- package/scripts/crop_expressions.py +73 -0
- package/scripts/gen_expressions.py +95 -0
- package/scripts/gen_variants.py +107 -0
- package/scripts/img2ascii.py +41 -0
- package/scripts/img2emoji.py +61 -0
- package/scripts/img2terminal.py +88 -0
- package/scripts/pet_bubble.js +136 -0
- package/scripts/pet_card.py +472 -0
- package/scripts/polaroid.py +103 -0
- package/scripts/popup_pet.sh +29 -0
- package/scripts/render_sprite.py +558 -0
- package/scripts/render_to_image.py +44 -0
- package/scripts/show_all.py +45 -0
- package/scripts/show_all_expressions.py +41 -0
- package/scripts/sprites.sh +184 -0
- package/sprites/bababoyi.png +0 -0
- package/sprites/bagayalu.png +0 -0
- package/sprites/bibilabu.png +0 -0
- package/sprites/gugugaga.png +0 -0
- package/sprites/waibibabu.png +0 -0
- package/sprites/wodedaodun.png +0 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# CodePet 彩色角色精灵渲染器
|
|
3
|
+
# 用法: sprites.sh [角色名] [状态]
|
|
4
|
+
# 角色: bibilabu / bagayalu / wodedaodun / bababoyi / waibibabu / gugugaga / all
|
|
5
|
+
# 状态: normal / happy / sleep (默认 normal)
|
|
6
|
+
|
|
7
|
+
# ── 调色板(基于原图取色)──
|
|
8
|
+
Y=$'\033[38;2;230;190;50m' # 香蕉黄
|
|
9
|
+
YD=$'\033[38;2;200;160;30m' # 香蕉暗黄
|
|
10
|
+
YL=$'\033[38;2;245;220;100m' # 香蕉亮黄
|
|
11
|
+
WF=$'\033[38;2;240;220;190m' # 猫脸米白
|
|
12
|
+
BH=$'\033[38;2;170;120;70m' # 猫发棕
|
|
13
|
+
CB=$'\033[38;2;185;125;65m' # 水豚棕
|
|
14
|
+
CD=$'\033[38;2;145;95;45m' # 水豚深棕
|
|
15
|
+
CL=$'\033[38;2;215;185;145m' # 水豚浅棕
|
|
16
|
+
OB=$'\033[38;2;215;185;135m' # 猫头鹰米色
|
|
17
|
+
OD=$'\033[38;2;115;75;35m' # 猫头鹰眼圈深棕
|
|
18
|
+
OG=$'\033[38;2;130;130;135m' # 猫头鹰耳灰
|
|
19
|
+
WT=$'\033[38;2;235;235;235m' # 白T恤
|
|
20
|
+
JN=$'\033[38;2;75;95;135m' # 牛仔裤蓝
|
|
21
|
+
PG=$'\033[38;2;75;75;85m' # 企鹅灰
|
|
22
|
+
PB=$'\033[38;2;45;45;50m' # 企鹅刘海黑
|
|
23
|
+
PW=$'\033[38;2;235;230;215m' # 企鹅白肚
|
|
24
|
+
PK=$'\033[38;2;215;135;135m' # 粉嘴/腮红
|
|
25
|
+
BK=$'\033[38;2;35;35;35m' # 黑
|
|
26
|
+
R=$'\033[0m' # 重置
|
|
27
|
+
B=$'\033[1m' # 粗体
|
|
28
|
+
|
|
29
|
+
CHARACTER=${1:-all}
|
|
30
|
+
STATE=${2:-normal}
|
|
31
|
+
|
|
32
|
+
render_bibilabu() {
|
|
33
|
+
local state=${1:-normal}
|
|
34
|
+
local eyes_l="·" eyes_r="·" mouth="ω" extra="" tail=""
|
|
35
|
+
case $state in
|
|
36
|
+
happy) eyes_l="^" eyes_r="^" mouth="▽" tail="~" ;;
|
|
37
|
+
sleep) eyes_l="-" eyes_r="-" mouth="ω" extra=" zzZ" ;;
|
|
38
|
+
esac
|
|
39
|
+
|
|
40
|
+
printf "\n"
|
|
41
|
+
printf " ${B}比比拉布${R}(香蕉猫)\n\n"
|
|
42
|
+
printf " ${YL}_(${R} ${YL})_${R}\n"
|
|
43
|
+
printf " ${Y}/ ${BH}|${R} ${BH}|${Y} \\${R}\n"
|
|
44
|
+
printf " ${Y}/${R} ${WF}${eyes_l} ${eyes_r}${R} ${Y}\\${R}\n"
|
|
45
|
+
printf " ${Y}|${R} ${PK} ${mouth} ${R} ${Y}|${R}\n"
|
|
46
|
+
printf " ${Y}|${YD}------${Y}|${R}\n"
|
|
47
|
+
printf " ${YD}| | | |${R}\n"
|
|
48
|
+
printf " ${YD}| | | |${R}\n"
|
|
49
|
+
printf " ${YD}\\ \\/ /${R}\n"
|
|
50
|
+
printf " ${YD}\\__/${R}${tail}\n"
|
|
51
|
+
printf " ${WF} _| |_${R}${extra}\n"
|
|
52
|
+
printf "\n"
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
render_bagayalu() {
|
|
56
|
+
local state=${1:-normal}
|
|
57
|
+
local eyes_l="·" eyes_r="·" extra=""
|
|
58
|
+
case $state in
|
|
59
|
+
happy) eyes_l="^" eyes_r="^" ;;
|
|
60
|
+
sleep) eyes_l="-" eyes_r="-" extra=" zzZ" ;;
|
|
61
|
+
esac
|
|
62
|
+
|
|
63
|
+
printf "\n"
|
|
64
|
+
printf " ${B}八嘎呀路${R}(坐姿水豚)\n\n"
|
|
65
|
+
printf " ${CD}__${R}\n"
|
|
66
|
+
printf " ${CB}/${CD}(${CB} ${CD})${CB}\\${R}\n"
|
|
67
|
+
printf " ${CB}/ \\${R}\n"
|
|
68
|
+
printf " ${CB}/ ${BK}${eyes_l}${R} ${BK}${eyes_r}${R} ${CB}\\${R}\n"
|
|
69
|
+
printf " ${CB}| ${CD}nn${CB} |${R}\n"
|
|
70
|
+
printf " ${CB}| ${CL}\`----'${CB} |${R}\n"
|
|
71
|
+
printf " ${CB}\\ ${CL}____${CB} /${R}\n"
|
|
72
|
+
printf " ${CB}\\${CD}| |${CB}/${R}\n"
|
|
73
|
+
printf " ${CD}_| |_${R}${extra}\n"
|
|
74
|
+
printf "\n"
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
render_wodedaodun() {
|
|
78
|
+
local state=${1:-normal}
|
|
79
|
+
local eyes_l="·" eyes_r="·" extra=""
|
|
80
|
+
case $state in
|
|
81
|
+
happy) eyes_l="^" eyes_r="^" extra=" ♪" ;;
|
|
82
|
+
sleep) eyes_l="-" eyes_r="-" extra=" zzZ" ;;
|
|
83
|
+
esac
|
|
84
|
+
|
|
85
|
+
printf "\n"
|
|
86
|
+
printf " ${B}我的刀盾${R}(趴姿水豚)\n\n"
|
|
87
|
+
printf " ${CD}__${CB}______${R}\n"
|
|
88
|
+
printf " ${CB}/${BK}${eyes_l} ${eyes_r}${CB} \\${R}${extra}\n"
|
|
89
|
+
printf " ${CB}| ${CD}nn${CB} |${R}\n"
|
|
90
|
+
printf " ${CB}\\${CL}__________${CB}/${R}\n"
|
|
91
|
+
printf " ${CD}_|| ||_${R}\n"
|
|
92
|
+
printf "\n"
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
render_bababoyi() {
|
|
96
|
+
local state=${1:-normal}
|
|
97
|
+
local eyes_l="◉" eyes_r="◉" extra=""
|
|
98
|
+
case $state in
|
|
99
|
+
happy) eyes_l="★" eyes_r="★" ;;
|
|
100
|
+
sleep) eyes_l="-" eyes_r="-" extra=" zzZ" ;;
|
|
101
|
+
esac
|
|
102
|
+
|
|
103
|
+
printf "\n"
|
|
104
|
+
printf " ${B}巴巴博一${R}(猫头鹰)\n\n"
|
|
105
|
+
printf " ${OG}/\\${R} ${OG}/\\${R}\n"
|
|
106
|
+
printf " ${OB}/ \\${R}\n"
|
|
107
|
+
printf " ${OB}/${R} ${OD}(${BK}${eyes_l}${OD})${R} ${OD}(${BK}${eyes_r}${OD})${R} ${OB}\\${R}\n"
|
|
108
|
+
printf " ${OB}|${R} ${CD}<>${R} ${OB}|${R}\n"
|
|
109
|
+
printf " ${OB}|${R} ${CL}\\________/${R} ${OB}|${R}\n"
|
|
110
|
+
printf " ${OB}\\${R} ${CL}________${R} ${OB}/${R}\n"
|
|
111
|
+
printf " ${OB}\\__________/${R}\n"
|
|
112
|
+
printf " ${CD}_|| ||_${R}${extra}\n"
|
|
113
|
+
printf "\n"
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
render_waibibabu() {
|
|
117
|
+
local state=${1:-normal}
|
|
118
|
+
local eyes_l="·" eyes_r="·" mouth=":----:" extra=""
|
|
119
|
+
case $state in
|
|
120
|
+
happy) eyes_l="^" eyes_r="^" mouth=":▽▽▽:" ;;
|
|
121
|
+
sleep) eyes_l="-" eyes_r="-" extra=" zzZ" ;;
|
|
122
|
+
esac
|
|
123
|
+
|
|
124
|
+
printf "\n"
|
|
125
|
+
printf " ${B}歪比巴卜${R}(水豚大叔)\n\n"
|
|
126
|
+
printf " ${CB} ____${R}\n"
|
|
127
|
+
printf " ${CB}/ ${BK}${eyes_l} ${eyes_r}${CB} \\${R}\n"
|
|
128
|
+
printf " ${CB}| ${CD}${mouth}${CB} |${R}\n"
|
|
129
|
+
printf " ${CB}\\${CD}____${CB}/${R}\n"
|
|
130
|
+
printf " ${WT} /|‾‾‾‾‾‾|\\${R}\n"
|
|
131
|
+
printf " ${WT}/ |${R} ${CB}><${R} ${WT}| \\${R}\n"
|
|
132
|
+
printf " ${WT}| |______| |${R}\n"
|
|
133
|
+
printf " ${JN}| | | |${R}\n"
|
|
134
|
+
printf " ${JN}|_| |_|${R}${extra}\n"
|
|
135
|
+
printf "\n"
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
render_gugugaga() {
|
|
139
|
+
local state=${1:-normal}
|
|
140
|
+
local eyes_l="·" eyes_r="·" beak="▼" extra=""
|
|
141
|
+
case $state in
|
|
142
|
+
happy) eyes_l="^" eyes_r="^" beak="▽" ;;
|
|
143
|
+
sleep) eyes_l="-" eyes_r="-" extra=" zzZ" ;;
|
|
144
|
+
esac
|
|
145
|
+
|
|
146
|
+
printf "\n"
|
|
147
|
+
printf " ${B}咕咕嘎嘎${R}(企鹅)\n\n"
|
|
148
|
+
printf " ${PB}_____${R}\n"
|
|
149
|
+
printf " ${PB}/ ||||| \\${R}\n"
|
|
150
|
+
printf " ${PB}/ ||||||| \\${R}\n"
|
|
151
|
+
printf " ${PG}|${R} ${BK}${eyes_l}${R} ${BK}${eyes_r}${R} ${PG}|${R}\n"
|
|
152
|
+
printf " ${PG}|${R} ${PK}${beak}${R} ${PG}|${R}\n"
|
|
153
|
+
printf " ${PG}\\${R} ${PW}____${R} ${PG}/${R}\n"
|
|
154
|
+
printf " ${PG}\\${PW}______${PG}/${R}\n"
|
|
155
|
+
printf " ${PG}_| |_${R}${extra}\n"
|
|
156
|
+
printf "\n"
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
# ── 主入口 ──
|
|
160
|
+
case $CHARACTER in
|
|
161
|
+
bibilabu|比比拉布) render_bibilabu "$STATE" ;;
|
|
162
|
+
bagayalu|八嘎呀路) render_bagayalu "$STATE" ;;
|
|
163
|
+
wodedaodun|我的刀盾) render_wodedaodun "$STATE" ;;
|
|
164
|
+
bababoyi|巴巴博一) render_bababoyi "$STATE" ;;
|
|
165
|
+
waibibabu|歪比巴卜) render_waibibabu "$STATE" ;;
|
|
166
|
+
gugugaga|咕咕嘎嘎) render_gugugaga "$STATE" ;;
|
|
167
|
+
all)
|
|
168
|
+
echo ""
|
|
169
|
+
echo "═══════════════════════════════════════"
|
|
170
|
+
echo " 🐾 CodePet 角色画廊(彩色版)"
|
|
171
|
+
echo "═══════════════════════════════════════"
|
|
172
|
+
for char in bibilabu bagayalu wodedaodun bababoyi waibibabu gugugaga; do
|
|
173
|
+
for s in normal happy sleep; do
|
|
174
|
+
render_${char} "$s"
|
|
175
|
+
done
|
|
176
|
+
echo "───────────────────────────────────────"
|
|
177
|
+
done
|
|
178
|
+
;;
|
|
179
|
+
*)
|
|
180
|
+
echo "用法: $0 [角色] [状态]"
|
|
181
|
+
echo "角色: bibilabu/bagayalu/wodedaodun/bababoyi/waibibabu/gugugaga/all"
|
|
182
|
+
echo "状态: normal/happy/sleep"
|
|
183
|
+
;;
|
|
184
|
+
esac
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|