Skip to content

Commit 156d727

Browse files
committed
added new rush cards
1 parent a0fd12f commit 156d727

8 files changed

Lines changed: 424 additions & 0 deletions

File tree

rush/c160022009.lua

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
--揮楽姫ナギナタクト
2+
--Botonaginata the Music Princess
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Name becomes "Boton the Music Princess" in the Graveyard
7+
local e0=Effect.CreateEffect(c)
8+
e0:SetType(EFFECT_TYPE_SINGLE)
9+
e0:SetCode(EFFECT_CHANGE_CODE)
10+
e0:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
11+
e0:SetRange(LOCATION_GRAVE)
12+
e0:SetValue(160208031)
13+
c:RegisterEffect(e0)
14+
--Name change
15+
local e1=Effect.CreateEffect(c)
16+
e1:SetDescription(aux.Stringid(id,1))
17+
e1:SetCategory(CATEGORY_TOHAND)
18+
e1:SetType(EFFECT_TYPE_IGNITION)
19+
e1:SetRange(LOCATION_MZONE)
20+
e1:SetCountLimit(1)
21+
e1:SetCost(s.cost)
22+
e1:SetTarget(s.target)
23+
e1:SetOperation(s.operation)
24+
c:RegisterEffect(e1)
25+
end
26+
s.listed_names={160208031,CARD_FUSION}
27+
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
28+
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_HAND,0,1,nil) end
29+
end
30+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
31+
local c=e:GetHandler()
32+
if chk==0 then return not c:IsCode(160208031) end
33+
end
34+
function s.thfilter(c)
35+
return c:IsCode(CARD_FUSION) and c:IsAbleToHand()
36+
end
37+
function s.operation(e,tp,eg,ep,ev,re,r,rp)
38+
--Requirement
39+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
40+
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToGraveAsCost,tp,LOCATION_HAND,0,1,1,nil)
41+
if Duel.SendtoGrave(g,REASON_COST)==0 then return end
42+
--Effect
43+
local c=e:GetHandler()
44+
--Name becomes "Boton the Music Princess"
45+
local e1=Effect.CreateEffect(c)
46+
e1:SetType(EFFECT_TYPE_SINGLE)
47+
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
48+
e1:SetCode(EFFECT_CHANGE_CODE)
49+
e1:SetValue(160208031)
50+
e1:SetReset(RESETS_STANDARD_PHASE_END)
51+
c:RegisterEffect(e1)
52+
if Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
53+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
54+
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
55+
if #g>0 then
56+
Duel.SendtoHand(g,nil,REASON_EFFECT)
57+
Duel.ConfirmCards(1-tp,g)
58+
end
59+
end
60+
--Prevent non-WIND Warriors from attacking
61+
local e2=Effect.CreateEffect(e:GetHandler())
62+
e2:SetType(EFFECT_TYPE_FIELD)
63+
e2:SetCode(EFFECT_CANNOT_ATTACK)
64+
e2:SetProperty(EFFECT_FLAG_OATH)
65+
e2:SetTargetRange(LOCATION_MZONE,0)
66+
e2:SetTarget(s.ftarget)
67+
e2:SetReset(RESET_PHASE|PHASE_END)
68+
Duel.RegisterEffect(e2,tp)
69+
end
70+
function s.ftarget(e,c)
71+
return not c:IsRace(RACE_WARRIOR) or not c:IsAttribute(ATTRIBUTE_WIND)
72+
end

rush/c160022015.lua

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
--アンダーディーラー
2+
--Under Dealer
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Draw
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetDescription(aux.Stringid(id,0))
9+
e1:SetCategory(CATEGORY_DRAW)
10+
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
11+
e1:SetType(EFFECT_TYPE_IGNITION)
12+
e1:SetRange(LOCATION_MZONE)
13+
e1:SetCountLimit(1)
14+
e1:SetCondition(s.condition)
15+
e1:SetCost(s.cost)
16+
e1:SetTarget(s.target)
17+
e1:SetOperation(s.operation)
18+
c:RegisterEffect(e1)
19+
end
20+
s.listed_names={160022013,160022014}
21+
function s.condition(e,tp,eg,ep,ev,re,r,rp)
22+
return e:GetHandler():IsStatus(STATUS_SUMMON_TURN) and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=10
23+
end
24+
function s.costfilter(c)
25+
return c:IsMonster() and c:IsAttribute(ATTRIBUTE_WIND) and c:IsDefense(1200) and c:IsAbleToGraveAsCost()
26+
end
27+
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
28+
if chk==0 then return Duel.IsExistingMatchingCard(s.costfilter,tp,LOCATION_HAND,0,1,nil) end
29+
end
30+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
31+
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
32+
Duel.SetTargetPlayer(tp)
33+
Duel.SetTargetParam(1)
34+
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
35+
end
36+
function s.thfilter(c)
37+
return c:IsCode(160022013,160022014) and c:IsAbleToHand()
38+
end
39+
function s.operation(e,tp,eg,ep,ev,re,r,rp)
40+
--Requirement
41+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
42+
local g=Duel.SelectMatchingCard(tp,s.costfilter,tp,LOCATION_HAND,0,1,1,nil)
43+
if Duel.SendtoGrave(g,REASON_COST)<1 then return end
44+
--Effect
45+
local sg=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_GRAVE,0,nil,e,tp)
46+
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
47+
if Duel.Draw(p,d,REASON_EFFECT)>0 and Duel.IsExistingMatchingCard(Card.IsTrap,tp,LOCATION_GRAVE,0,2,nil)
48+
and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,1,nil)
49+
and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
50+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
51+
local g2=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,1,1,nil)
52+
if #g2>0 then
53+
Duel.BreakEffect()
54+
Duel.SendtoHand(g2,nil,REASON_EFFECT)
55+
Duel.ConfirmCards(1-tp,g2)
56+
end
57+
end
58+
end

rush/c160022026.lua

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
--牽引のキャトルヒーラー
2+
--Driving Cattle Healer
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
local params = {s.fusfilter,s.matfilter}
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetDescription(aux.Stringid(id,0))
9+
e1:SetCategory(CATEGORY_RECOVER+CATEGORY_SPECIAL_SUMMON)
10+
e1:SetType(EFFECT_TYPE_IGNITION)
11+
e1:SetRange(LOCATION_MZONE)
12+
e1:SetCountLimit(1)
13+
e1:SetCost(s.cost)
14+
e1:SetTarget(s.target)
15+
e1:SetOperation(s.operation(Fusion.SummonEffTG(table.unpack(params)),Fusion.SummonEffOP(table.unpack(params))))
16+
c:RegisterEffect(e1)
17+
end
18+
function s.fusfilter(c)
19+
return c:IsAttribute(ATTRIBUTE_WIND)
20+
end
21+
function s.matfilter(c)
22+
return c:IsLocation(LOCATION_HAND|LOCATION_MZONE) and c:IsAttribute(ATTRIBUTE_WIND) and c:IsAbleToGrave()
23+
end
24+
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
25+
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_MZONE,0,1,nil) end
26+
end
27+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
28+
if chk==0 then return true end
29+
Duel.SetTargetPlayer(tp)
30+
Duel.SetTargetParam(300)
31+
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,300)
32+
end
33+
function s.operation(fustg,fusop)
34+
return function(e,tp,eg,ep,ev,re,r,rp)
35+
--Requirement
36+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
37+
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToGraveAsCost,tp,LOCATION_MZONE,0,1,1,nil)
38+
if Duel.SendtoGrave(g,REASON_COST)<1 then return end
39+
--Effect
40+
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
41+
Duel.Recover(p,d,REASON_EFFECT)
42+
if fustg(e,tp,eg,ep,ev,re,r,rp,0) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
43+
Duel.BreakEffect()
44+
fusop(e,tp,eg,ep,ev,re,r,rp)
45+
end
46+
--Prevent non-WIND monsters from attacking
47+
local e1=Effect.CreateEffect(e:GetHandler())
48+
e1:SetType(EFFECT_TYPE_FIELD)
49+
e1:SetCode(EFFECT_CANNOT_ATTACK)
50+
e1:SetProperty(EFFECT_FLAG_OATH)
51+
e1:SetTargetRange(LOCATION_MZONE,0)
52+
e1:SetTarget(s.ftarget)
53+
e1:SetReset(RESET_PHASE|PHASE_END)
54+
Duel.RegisterEffect(e1,tp)
55+
end
56+
end
57+
function s.ftarget(e,c)
58+
return not c:IsAttribute(ATTRIBUTE_WIND)
59+
end

rush/c160022030.lua

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
--湾楽姫チューンコルネットラス
2+
--Tune Cornetlass the Music Princess
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--fusion material
7+
c:EnableReviveLimit()
8+
Fusion.AddProcMix(c,true,true,160215066,160208031)
9+
Fusion.AddContactProc(c,s.contactfil,s.contactop,nil,nil,SUMMON_TYPE_FUSION,nil,false)
10+
--Piercing battle damage
11+
local e1=Effect.CreateEffect(c)
12+
e1:SetType(EFFECT_TYPE_SINGLE)
13+
e1:SetCode(EFFECT_PIERCE)
14+
c:RegisterEffect(e1)
15+
--Face-up WIND WArrior monsters you control cannot be destroyed by your opponent's effects
16+
local e2=Effect.CreateEffect(c)
17+
e2:SetType(EFFECT_TYPE_FIELD)
18+
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
19+
e2:SetTargetRange(LOCATION_MZONE,0)
20+
e2:SetRange(LOCATION_MZONE)
21+
e2:SetTarget(s.indtg)
22+
e2:SetValue(aux.indoval)
23+
c:RegisterEffect(e2)
24+
end
25+
function s.contactfil(tp)
26+
return Duel.GetMatchingGroup(aux.FaceupFilter(Card.IsAbleToDeckOrExtraAsCost),tp,LOCATION_ONFIELD,0,nil)
27+
end
28+
function s.contactop(g,tp)
29+
Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_COST+REASON_MATERIAL)
30+
end
31+
function s.indtg(e,c)
32+
return c:IsFaceup() and c:IsRace(RACE_WARRIOR) and c:IsAttribute(ATTRIBUTE_WIND)
33+
end

rush/c160022031.lua

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
--断楽姫チューンオフィクレイモア
2+
--Tune Ophiclaymore the Music Princess
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--fusion material
7+
c:EnableReviveLimit()
8+
Fusion.AddProcMix(c,true,true,160208027,160208031)
9+
Fusion.AddContactProc(c,s.contactfil,s.contactop,nil,nil,SUMMON_TYPE_FUSION,nil,false)
10+
--Change position
11+
local e1=Effect.CreateEffect(c)
12+
e1:SetDescription(aux.Stringid(id,0))
13+
e1:SetCategory(CATEGORY_POSITION)
14+
e1:SetType(EFFECT_TYPE_IGNITION)
15+
e1:SetRange(LOCATION_MZONE)
16+
e1:SetCountLimit(1)
17+
e1:SetTarget(s.target)
18+
e1:SetOperation(s.operation)
19+
c:RegisterEffect(e1)
20+
end
21+
function s.contactfil(tp)
22+
return Duel.GetMatchingGroup(aux.FaceupFilter(Card.IsAbleToDeckOrExtraAsCost),tp,LOCATION_ONFIELD,0,nil)
23+
end
24+
function s.contactop(g,tp)
25+
Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_COST+REASON_MATERIAL)
26+
end
27+
function s.posfilter(c)
28+
return c:IsFaceup() and c:IsAttackPos() and c:IsCanTurnSet() and c:IsCanChangePositionRush()
29+
end
30+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
31+
if chk==0 then return Duel.IsExistingMatchingCard(s.posfilter,tp,0,LOCATION_MZONE,1,nil) end
32+
Duel.SetOperationInfo(0,CATEGORY_POSITION,nil,1,0,0)
33+
end
34+
function s.thfilter(c)
35+
return c:IsCode(160203036) and c:IsAbleToHand()
36+
end
37+
function s.operation(e,tp,eg,ep,ev,re,r,rp)
38+
--Effect
39+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
40+
local g=Duel.SelectMatchingCard(tp,s.posfilter,tp,0,LOCATION_MZONE,1,1,nil)
41+
Duel.HintSelection(g)
42+
if #g>0 then
43+
Duel.ChangePosition(g,POS_FACEDOWN_DEFENSE)
44+
if Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
45+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
46+
local g2=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE,0,1,1,nil)
47+
if #g2>0 then
48+
Duel.BreakEffect()
49+
Duel.SendtoHand(g2,nil,REASON_EFFECT)
50+
Duel.ConfirmCards(1-tp,g2)
51+
end
52+
end
53+
end
54+
end

rush/c160022034.lua

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
--P・M AR-リステラ
2+
--Plasmatic Model Another Rising Lystella
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Ritual
7+
c:EnableReviveLimit()
8+
--Special Summon
9+
local e1=Effect.CreateEffect(c)
10+
e1:SetDescription(aux.Stringid(id,0))
11+
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
12+
e1:SetType(EFFECT_TYPE_IGNITION)
13+
e1:SetRange(LOCATION_MZONE)
14+
e1:SetCountLimit(1)
15+
e1:SetCondition(s.condition)
16+
e1:SetCost(s.cost)
17+
e1:SetTarget(s.target)
18+
e1:SetOperation(s.operation)
19+
c:RegisterEffect(e1)
20+
end
21+
function s.condition(e,tp,eg,ep,ev,re,r,rp)
22+
local c=e:GetHandler()
23+
return c:IsStatus(STATUS_SPSUMMON_TURN) and c:IsSummonType(SUMMON_TYPE_RITUAL)
24+
end
25+
function s.cfilter(c)
26+
return c:IsFaceup() and c:IsAbleToGraveAsCost() and not c:IsType(TYPE_RITUAL)
27+
end
28+
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
29+
if chk==0 then return Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_MZONE,0,1,nil) end
30+
end
31+
function s.spfilter(c,e,tp)
32+
return c:IsRace(RACE_THUNDER) and c:IsType(TYPE_RITUAL) and c:IsDefense(1600) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
33+
end
34+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
35+
if chk==0 then return Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
36+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,0,tp,LOCATION_GRAVE)
37+
end
38+
function s.operation(e,tp,eg,ep,ev,re,r,rp)
39+
--Requirement
40+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
41+
local g=Duel.SelectMatchingCard(tp,s.cfilter,tp,LOCATION_MZONE,0,1,1,nil)
42+
if Duel.SendtoGrave(g,REASON_COST)<1 then return end
43+
--Effect
44+
if Duel.GetLocationCount(tp,LOCATION_MZONE)<1 then return end
45+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
46+
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
47+
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
48+
end

rush/c160022043.lua

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
--楽姫の代演
2+
--Music Princess's Substitute
3+
--scripted by YoshiDuels
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Send the top 3 cards of your Deck to the GY
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetDescription(aux.Stringid(id,0))
9+
e1:SetCategory(CATEGORY_DECKDES|CATEGORY_SPECIAL_SUMMON)
10+
e1:SetType(EFFECT_TYPE_ACTIVATE)
11+
e1:SetCode(EVENT_FREE_CHAIN)
12+
e1:SetCost(s.cost)
13+
e1:SetTarget(s.target)
14+
e1:SetOperation(s.activate)
15+
c:RegisterEffect(e1)
16+
end
17+
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
18+
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_HAND,0,1,nil) end
19+
end
20+
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
21+
if chk==0 then return Duel.IsPlayerCanDiscardDeck(tp,3) end
22+
Duel.SetOperationInfo(0,CATEGORY_DECKDES,nil,0,tp,3)
23+
Duel.SetPossibleOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
24+
end
25+
function s.filter(c)
26+
return c:IsMonster() and not c:IsAttribute(ATTRIBUTE_WIND)
27+
end
28+
function s.spfilter(c,e,tp)
29+
return c:IsRace(RACE_WARRIOR) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
30+
end
31+
function s.activate(e,tp,eg,ep,ev,re,r,rp)
32+
--Requirement
33+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
34+
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToGraveAsCost,tp,LOCATION_HAND,0,1,1,nil)
35+
if Duel.SendtoGrave(g,REASON_COST)==0 then return end
36+
--Effect
37+
Duel.DiscardDeck(tp,3,REASON_EFFECT)
38+
local g2=Duel.GetMatchingGroup(aux.NecroValleyFilter(s.spfilter),tp,LOCATION_GRAVE,0,nil,e,tp)
39+
if Duel.IsExistingMatchingCard(Card.IsMonster,tp,LOCATION_GRAVE,0,1,nil)
40+
and not Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_GRAVE,0,1,nil)
41+
and #g2>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
42+
and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
43+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
44+
local sg=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
45+
if #sg>0 then
46+
Duel.BreakEffect()
47+
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
48+
end
49+
end
50+
--Prevent non-WIND Warriors from attacking
51+
local e1=Effect.CreateEffect(e:GetHandler())
52+
e1:SetType(EFFECT_TYPE_FIELD)
53+
e1:SetCode(EFFECT_CANNOT_ATTACK)
54+
e1:SetProperty(EFFECT_FLAG_OATH)
55+
e1:SetTargetRange(LOCATION_MZONE,0)
56+
e1:SetTarget(s.ftarget)
57+
e1:SetReset(RESET_PHASE|PHASE_END)
58+
Duel.RegisterEffect(e1,tp)
59+
end
60+
function s.ftarget(e,c)
61+
return not c:IsRace(RACE_WARRIOR) or not c:IsAttribute(ATTRIBUTE_WIND)
62+
end

0 commit comments

Comments
 (0)