Commit dca71bfb authored by TanakaKotoha's avatar TanakaKotoha

update

parent a2cf14d4
......@@ -72,31 +72,11 @@ pack:
only:
- master
cut_pics:
stage: prepare
dependencies: []
tags:
- linux
script:
- apt update && apt -y install imagemagick
- mkdir -p dist/pics/thumbnail
- cd expansions/pics
- ls -1 *.jpg | xargs -P $(nproc) -I {} convert {} -resize 177x254! ../../dist/pics/{}
- ls -1 *.jpg | xargs -P $(nproc) -I {} convert {} -resize 44x64! ../../dist/pics/thumbnail/{}
- ls -1 *.png | sed 's/.png$//g' | xargs -P $(nproc) -I {} convert {}.png -resize 177x254! ../../dist/pics/{}.jpg
- ls -1 *.png | sed 's/.png$//g' | xargs -P $(nproc) -I {} convert {}.png -resize 44x64! ../../dist/pics/thumbnail/{}.jpg
artifacts:
paths:
- dist/
only:
- master
upload_to_minio:
stage: deploy
dependencies:
- redtext
- pack
- cut_pics
tags:
- linux
image: python
......
stages:
- prepare
- deploy
variables:
GIT_DEPTH: "1"
LAST_UPDATE_DATE: "2021.1.19"
CURRENT_UPDATE_DATE: "2021.1.31"
redtext:
stage: prepare
dependencies: []
tags:
- linux
image: git-registry.mycard.moe/nanahira/srvpro:lite
variables:
DATABASE_FILE: expansions/222DIY.cdb
script:
- apt update && apt -y install sqlite3
- mv /ygopro-server/ygopro .
- mkdir dist
- cd ygopro
- mv ../expansions .
- echo "# Result of redtext test of commit $CI_COMMIT_SHA"
- echo "select id from datas;" | sqlite3 $DATABASE_FILE | xargs -I {} ./ygopro {} 2>&1 | tee ../dist/redtext.txt
- cd ..
artifacts:
paths:
- dist/
deploy_to_ygopro_server:
stage: prepare
dependencies: []
tags:
- linux
script:
- apt update && apt -y install openssh-client rsync coreutils
- mkdir ~/.ssh
- chmod 700 ~/.ssh
- ssh-keyscan 222diy.momobako.com >> ~/.ssh/known_hosts
- echo $NANAHIRA_SSH_KEY | base64 --decode > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/*
- rsync -4cavz --exclude=pics --delete ./expansions/ nanahira@222diy.momobako.com:~/ygopro/expansions
only:
- master
pack:
stage: prepare
dependencies: []
tags:
- linux
image: mono
variables:
GIT_DEPTH: "100"
script:
- sed -i '/mono-project.com/d' /etc/apt/sources.list /etc/apt/sources.list.d/*
- apt update && apt -y install p7zip-full wget git
- mkdir -p dist/archive dist/contents
- git log --pretty=%H --since=$LAST_UPDATE_DATE | xargs -I {} git diff-tree --no-commit-id --name-only --diff-filter=ACMR -r {} | sed "/sound\//d;/update\//d;/.yml/d" | sort | uniq | sed "s/^/'/g;s/\$/'/g" | xargs 7z a -mx9 dist/archive/ygopro-222DIY-update.7z || true
- git clone --depth=1 https://code.mycard.moe/alstroemeria-silentlove/ygopro-222DIY-sound sound
- wget -O update/filelist.txt https://cdn01.moecube.com/ygopro-222DIY/contents/update/filelist.txt || rm -rf update/filelist.txt
- rm -rf .*.yml .git* sound/.git*
- cd update
- ./update-server.sh
- cd ..
- 7z a -mx9 dist/archive/ygopro-222DIY-data.7z expansions update ygopro.exe
- 7z a -mx9 dist/archive/ygopro-222DIY-sound.7z sound
- ls -1 | sed '/dist/d' | xargs -I {} mv {} dist/contents/
artifacts:
paths:
- dist/
only:
- master
cut_pics:
stage: prepare
dependencies: []
tags:
- linux
script:
- apt update && apt -y install imagemagick
- mkdir -p dist/pics/thumbnail
- cd expansions/pics
- ls -1 *.jpg | xargs -P $(nproc) -I {} convert {} -resize 177x254! ../../dist/pics/{}
- ls -1 *.jpg | xargs -P $(nproc) -I {} convert {} -resize 44x64! ../../dist/pics/thumbnail/{}
- ls -1 *.png | sed 's/.png$//g' | xargs -P $(nproc) -I {} convert {}.png -resize 177x254! ../../dist/pics/{}.jpg
- ls -1 *.png | sed 's/.png$//g' | xargs -P $(nproc) -I {} convert {}.png -resize 44x64! ../../dist/pics/thumbnail/{}.jpg
artifacts:
paths:
- dist/
only:
- master
upload_to_minio:
stage: deploy
dependencies:
- redtext
- pack
- cut_pics
tags:
- linux
image: python
script:
- pip install -U -i https://mirrors.aliyun.com/pypi/simple/ awscli
- cp dist/archive/ygopro-222DIY-data.7z dist/archive/ygopro-222DIY-data-$CURRENT_UPDATE_DATE.7z
- cp dist/archive/ygopro-222DIY-update.7z dist/archive/ygopro-222DIY-update-$CURRENT_UPDATE_DATE.7z
- aws s3 --endpoint=https://minio.mycard.moe:9000 sync dist/ s3://mycard/ygopro-222DIY > /dev/null
only:
- master
No preview for this file type
......@@ -243,6 +243,7 @@
12054004 2 --海之家的霸者 顾拉
12056005 1 --你偷看了?
12061000 2 --清奏姬 鹭草
12066023 1 --天境一闪
#140
14000000 0 --时穿剑阵·斩魄
14000002 0 --时穿剑阵·诛仙
......@@ -303,6 +304,11 @@
#143
14370004 0 --灰烬少女的原核
#148
14800101 0--陆星恐兽 布莱克王
14800102 0--陆星恐兽 雷德王
14800103 0--陆星恐兽 雷德王
14800191 0 --陆星怨灵鬼 恋鬼
14800219 1 --陆星 红莲斩
14801271 0 --星际战舰 电力干扰器
14801734 0 --星际战舰 环绕级工业舰
#150
......
......@@ -2,7 +2,7 @@
function c112316.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,012316)
......@@ -21,21 +21,21 @@ function c112316.initial_effect(c)
c:RegisterEffect(e2)
end
function c112316.thfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x0ca8) or c:IsSetCard(0x0ca7) and c:IsAbleToHand()
return c:IsType(TYPE_MONSTER) and (c:IsSetCard(0x0ca8) or c:IsSetCard(0x0ca7)) and c:IsAbleToHand()
end
function c112316.activate(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local g=Duel.GetMatchingGroup(c112316.thfilter,tp,LOCATION_DECK,0,nil)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(112316,0)) then Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,1,1,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(112316,0)) then Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,1,1,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
end
end
function c112316.cost(e,tp,eg,ep,ev,re,r,rp)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) end Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD)
end
function c112316.filter(c,e,sp)
function c112316.filter(c,e,sp)
return (c:IsSetCard(0x0ca8) or c:IsSetCard(0x0ca7)) and c:IsCanBeSpecialSummoned(e,0,sp,false,false) and c:IsLevelBelow(6)
end
function c112316.target(e,tp,eg,ep,ev,re,r,rp,chk)
......@@ -46,12 +46,12 @@ function c112316.operation(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)>0 then return end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c112316.filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if g:GetCount()>0 then
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTargetRange(1,0)
e1:SetTarget(c112316.splimit)
......
......@@ -54,7 +54,7 @@ function cm.spcost(e,c,tp)
return Duel.IsExistingMatchingCard(cm.costfilter,tp,LOCATION_GRAVE,0,1,nil)
end
function cm.costfilter(c)
return c:IsType(TYPE_MONSTER) and ( c:IsSetCard(0xfb1) or c:IsRace(RACE_DRAGON)
return c:IsType(TYPE_MONSTER) and (c:IsSetCard(0xfb1) or c:IsRace(RACE_DRAGON))
end
function cm.thfilter(c)
return c:IsAbleToHand()
......
......@@ -126,5 +126,4 @@ function c21520238.igop(e,tp,eg,ep,ev,re,r,rp)
Duel.Damage(tp,2000,REASON_RULE)
end
end
end
end
......@@ -7,6 +7,7 @@ function cm.initial_effect(c)
e1:SetCategory(CATEGORY_HANDES+CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m+EFFECT_COUNT_CODE_DUEL)
e1:SetCondition(cm.condition)
e1:SetTarget(cm.target)
e1:SetOperation(cm.activate)
......@@ -21,9 +22,6 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
local sg=Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)
if chk==0 then return Duel.GetFieldGroupCount(1-tp,LOCATION_HAND,0)>0 and sg>0 end
Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,1-tp,sg)
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
Duel.SetChainLimit(aux.FALSE)
end
end
function cm.cffilter(c)
return not (c:IsLocation(LOCATION_MZONE) and c:GetSequence()>4)
......
......@@ -82,15 +82,16 @@ function cm.rmop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
if Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)~=0 then
Duel.BreakEffect()
if c:IsRelateToEffect(e) and c:IsFaceup() then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_COPY_INHERIT)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
Duel.BreakEffect()
if c:IsRelateToEffect(e) and c:IsFaceup() then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_COPY_INHERIT)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1000)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
end
end
end
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment