diff --git a/scpt/character.zsh b/scpt/character.zsh new file mode 100755 index 0000000..c92df2a --- /dev/null +++ b/scpt/character.zsh @@ -0,0 +1,110 @@ +#!/bin/zsh + +function download_character_icon(){ +t=( +"https://sketchfab.com/3d-models/cerberus-quirky-series-4379b571b5a440119d1ebaddb0711142" +"https://sketchfab.com/3d-models/chinese-dragon-quirky-series-a383d3cf5b004978ac620806558b2924" +"https://sketchfab.com/3d-models/dragon-quirky-series-9a0989aae9b84ebdade28e84a0702a71" +"https://sketchfab.com/3d-models/kirin-quirky-series-b280c8bc5b87471eac1068acc91fdce1" +"https://sketchfab.com/3d-models/kitsune-quirky-series-4fc8b2ade43f4d4bb8a8e6e227f00a62" +"https://sketchfab.com/3d-models/leviathan-quirky-series-002200e1db2c461fbcaa8d2fdac2d766" +"https://sketchfab.com/3d-models/pegasus-quirky-series-a4488ae7a2d2405c927a50f5a8b2d6bb" +"https://sketchfab.com/3d-models/phoenix-quirky-series-1f0a01247b78441ab5b9cf8e9711e78e" +"https://sketchfab.com/3d-models/wyvern-quirky-series-7baad217325a45b4877514b3f5924be9" +) + +t=( + "https://sketchfab.com/3d-models/super-9a80a6d6cf6f4b08906505c7f945d3ce" +) + +for i in $t; do + name=`echo $i|cut -d / -f 5|cut -d - -f 1` + tt=`curl -sL $i|tr ' ' '\n' |grep .jpeg|cut -d '"' -f 2` + normal=`echo $tt|awk "NR==1"` + min=`echo $tt|awk "NR==2"` + if [ ! -f $name.jpeg ];then + curl -sL $normal -o $name.jpeg + fi + if [ ! -f ${name}-min.jpeg ];then + #curl -sL $min -o ${name}-min.jpeg + fi + array+=(`echo $tt|sed "1,2d"|cut -d ";" -f 2|cut -d '&' -f 1|tr '\n' ' '`) + echo $name + for ((i=1; i<=$#array; i++)); do + #echo "Index: $i, Value: ${array[$i]}" + #curl -sL ${array[$i]} -o ${name}-${i}.jpeg + done +done +} + +handle_yui=yui.syui.ai +did_yui=did:plc:4hqjfn7m6n5hno3doamuhgef +token_yui=`cat ~/.config/ai/token.json|jq -r .accessJwt` +host=bsky.social +day=`date --iso-8601=seconds` + +function create_game_character() { + t=( + ai chinese kirin leviathan phoenix wyvern cerberus dragon kitsune pegasus + ) + + for ((i=1; i<=$#t; i++)); do + created=2001-01-01T00:00:00+09:00 + col=ai.syui.game.character + req=com.atproto.repo.putRecord + url=https://$host/xrpc/$req + + id=$i + name=${t[$i]} + chara=$name + nickname=$name + fullname=$name + uri=at://${did_yui}/$col/$chara + if [ -f ./${name}.jpeg ];then + jj=`ai img-upload ./${name}.jpeg` + elif [ -f ./${name}.png ];then + jj=`ai img-upload ./${name}.png` + fi + if [ "$name" = "ai" ];then + group=origin + else + group=fantasy + fi + echo $jj + link=`echo $jj|jq -r ".blob.ref.[]"` + size=`echo $jj|jq -r .blob.size` + mtype=`echo $jj|jq -r .blob.mimeType` + json=" + { + \"repo\": \"$handle_yui\", + \"did\": \"$did_yui\", + \"collection\": \"$col\", + \"rkey\": \"$chara\", + \"record\": { + \"id\": $id, + \"name\": \"$name\", + \"fullname\": \"$fullname\", + \"nickname\": \"$nickname\", + \"group\": \"$group\", + \"embed\": { + \"\$type\": \"app.bsky.embed.external\", + \"external\": { + \"uri\": \"$uri\", + \"thumb\": { + \"\$type\": \"blob\", + \"ref\": { + \"\$link\": \"$link\" + }, + \"mimeType\": \"$mtype\", + \"size\": $size + } } }, \"createdAt\": \"$created\", \"updatedAt\": \"$day\" } }" + + if echo $json|jq . ;then + curl -sL -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $token_yui" -d $json $url + fi + done + +} + +#download_character_icon +#create_game_character diff --git a/verse/img/mode_ai.jpeg b/verse/img/mode_ai.jpeg new file mode 100644 index 0000000..eaafbf2 Binary files /dev/null and b/verse/img/mode_ai.jpeg differ