From 2e3f344c4cb097d4b3e5e6300321ca9b5708df4f Mon Sep 17 00:00:00 2001 From: Naim Date: Wed, 21 Oct 2026 19:21:40 -0300 Subject: [PATCH] Add files via upload --- rush/c160027027.lua | 47 ++++++++++++++++++++++++++++++++ rush/c160027028.lua | 37 ++++++++++++++++++++++++++ rush/c160027029.lua | 49 ++++++++++++++++++++++++++++++++++ rush/c160027042.lua | 65 +++++++++++++++++++++++++++++++++++++++++++++ rush/c160027047.lua | 27 +++++++++++++++++++ rush/c160027056.lua | 38 ++++++++++++++++++++++++++ rush/c160027057.lua | 15 +++++++++++ rush/c160027058.lua | 60 +++++++++++++++++++++++++++++++++++++++++ rush/c160027069.lua | 7 +++++ 9 files changed, 345 insertions(+) create mode 100644 rush/c160027027.lua create mode 100644 rush/c160027028.lua create mode 100644 rush/c160027029.lua create mode 100644 rush/c160027042.lua create mode 100644 rush/c160027047.lua create mode 100644 rush/c160027056.lua create mode 100644 rush/c160027057.lua create mode 100644 rush/c160027058.lua create mode 100644 rush/c160027069.lua diff --git a/rush/c160027027.lua b/rush/c160027027.lua new file mode 100644 index 0000000000..9115974509 --- /dev/null +++ b/rush/c160027027.lua @@ -0,0 +1,47 @@ +--剛腕のサイクロプス +--Strong-Armed Hitotsu-Me Giant +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + --Choose 1 "Revival of Sennen Genjin" in your Graveyard and Set it to your Spell & Trap Zone + local e1=Effect.CreateEffect(c) + e1:SetDescription(aux.Stringid(id,0)) + e1:SetCategory(CATEGORY_SET) + e1:SetType(EFFECT_TYPE_IGNITION) + e1:SetRange(LOCATION_MZONE) + e1:SetCountLimit(1) + e1:SetCondition(s.condition) + e1:SetCost(s.cost) + e1:SetTarget(s.target) + e1:SetOperation(s.operation) + c:RegisterEffect(e1) +end +s.listed_names={160027057} --Revival of Sennen Genjin +function s.condition(e,tp,eg,ep,ev,re,r,rp) + local c=e:GetHandler() + return c:IsSummonPhaseMain() and c:IsStatus(STATUS_SUMMON_TURN+STATUS_SPSUMMON_TURN) +end +function s.cost(e,tp,eg,ep,ev,re,r,rp,chk) + if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToDeckOrExtraAsCost,tp,LOCATION_HAND,0,1,nil) end +end +function s.setfilter(c) + return c:IsCode(160027057) and c:IsSSetable() +end +function s.target(e,tp,eg,ep,ev,re,r,rp,chk) + if chk==0 then return Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.setfilter),tp,LOCATION_GRAVE,0,1,nil) end + Duel.SetOperationInfo(0,CATEGORY_SET,nil,1,tp,LOCATION_GRAVE) +end +function s.operation(e,tp,eg,ep,ev,re,r,rp) + --Requirement + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) + local td=Duel.SelectMatchingCard(tp,Card.IsAbleToDeckOrExtraAsCost,tp,LOCATION_HAND,0,1,1,nil) + if #td==0 or Duel.SendtoDeck(td,nil,SEQ_DECKBOTTOM,REASON_COST)==0 then return end + --Effect + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET) + local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.setfilter),tp,LOCATION_GRAVE,0,1,1,nil) + if #g==0 then return end + if Duel.SSet(tp,g)>0 and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=10 + and Duel.IsPlayerCanDraw(tp,1) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then + Duel.Draw(tp,1,REASON_EFFECT) + end +end \ No newline at end of file diff --git a/rush/c160027028.lua b/rush/c160027028.lua new file mode 100644 index 0000000000..0c503792c1 --- /dev/null +++ b/rush/c160027028.lua @@ -0,0 +1,37 @@ +--俊敏なるタイガー・アックス +--Keen and Nimble Tiger Axe +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + --Destroy 1 Spell/Trap your opponent controls + local e1=Effect.CreateEffect(c) + e1:SetDescription(aux.Stringid(id,0)) + e1:SetCategory(CATEGORY_DESTROY) + e1:SetType(EFFECT_TYPE_IGNITION) + e1:SetRange(LOCATION_MZONE) + e1:SetCountLimit(1) + e1:SetCondition(s.condition) + e1:SetTarget(s.target) + e1:SetOperation(s.operation) + c:RegisterEffect(e1) +end +function s.filter(c) + return c:IsRace(RACE_BEASTWARRIOR) and c:IsLevel(8) and c:IsFaceup() +end +function s.condition(e,tp,eg,ep,ev,re,r,rp) + return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_MZONE,0,1,nil) +end +function s.target(e,tp,eg,ep,ev,re,r,rp,chk) + local dg=Duel.GetMatchingGroup(Card.IsSpellTrap,tp,0,LOCATION_ONFIELD,nil) + if chk==0 then return #dg>0 end + Duel.SetOperationInfo(0,CATEGORY_DESTROY,dg,1,tp,0) +end +function s.operation(e,tp,eg,ep,ev,re,r,rp) + local dg=Duel.GetMatchingGroup(Card.IsSpellTrap,tp,0,LOCATION_ONFIELD,nil) + if #dg>0 then + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) + local sg=dg:Select(tp,1,1,nil) + Duel.HintSelection(sg) + Duel.Destroy(sg,REASON_EFFECT) + end +end \ No newline at end of file diff --git a/rush/c160027029.lua b/rush/c160027029.lua new file mode 100644 index 0000000000..1ec6c3e0ce --- /dev/null +++ b/rush/c160027029.lua @@ -0,0 +1,49 @@ +--圧壊のゴーレム +--Crusher Golem +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + --This card's name is treated as "Destroyer Golem" for the rest of this turn + local e1=Effect.CreateEffect(c) + e1:SetDescription(aux.Stringid(id,0)) + e1:SetType(EFFECT_TYPE_IGNITION) + e1:SetRange(LOCATION_MZONE) + e1:SetCountLimit(1) + e1:SetCost(s.cost) + e1:SetTarget(s.target) + e1:SetOperation(s.operation) + c:RegisterEffect(e1) +end +s.listed_names={73481154} +function s.cost(e,tp,eg,ep,ev,re,r,rp,chk) + if chk==0 then return Duel.IsPlayerCanDiscardDeckAsCost(tp,2) end +end +function s.target(e,tp,eg,ep,ev,re,r,rp,chk) + local c=e:GetHandler() + if chk==0 then return not c:IsCode(73481154) end +end +function s.operation(e,tp,eg,ep,ev,re,r,rp) + local c=e:GetHandler() + --Requirement + if Duel.DiscardDeck(tp,2,REASON_COST)<2 then return end + --Effect + local e1=Effect.CreateEffect(c) + e1:SetType(EFFECT_TYPE_SINGLE) + e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) + e1:SetCode(EFFECT_CHANGE_CODE) + e1:SetValue(73481154) + e1:SetReset(RESETS_STANDARD_PHASE_END) + c:RegisterEffect(e1) + --You cannot attack with monsters for the rest of this turn, except EARTH monsters. + local e1=Effect.CreateEffect(c) + e1:SetType(EFFECT_TYPE_FIELD) + e1:SetCode(EFFECT_CANNOT_ATTACK) + e1:SetProperty(EFFECT_FLAG_OATH) + e1:SetTargetRange(LOCATION_MZONE,0) + e1:SetTarget(s.ftarget) + e1:SetReset(RESET_PHASE|PHASE_END) + Duel.RegisterEffect(e1,tp) +end +function s.ftarget(e,c) + return not c:IsAttribute(ATTRIBUTE_EARTH) +end \ No newline at end of file diff --git a/rush/c160027042.lua b/rush/c160027042.lua new file mode 100644 index 0000000000..38f655ef8e --- /dev/null +++ b/rush/c160027042.lua @@ -0,0 +1,65 @@ +--堅守する千年ゴーレム +--Invincible Millennium Golem +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + c:EnableReviveLimit() + --Fusion materials: "Destroyer Golem" + 1 Level 5 or lower EARTH monster + Fusion.AddProcMixN(c,true,true,73481154,1,s.matfilter,1) + Fusion.AddContactProc(c,s.contactfil,s.contactop,nil,nil,SUMMON_TYPE_FUSION,nil,false) + --Choose 1 "Revival of Sennin Genjin" in your Graveyard and add it to the hand. Then, you can choose up to 2 cards in your opponent's Graveyard and shuffle them into the Deck. If they are returned, then this card's Level is increased by 2 until the end of the turn. + local e1=Effect.CreateEffect(c) + e1:SetDescription(aux.Stringid(id,0)) + e1:SetCategory(CATEGORY_TOHAND+CATEGORY_TODECK+CATEGORY_LVCHANGE) + e1:SetType(EFFECT_TYPE_IGNITION) + e1:SetRange(LOCATION_MZONE) + e1:SetCountLimit(1) + e1:SetCondition(s.condition) + e1:SetTarget(s.target) + e1:SetOperation(s.operation) + c:RegisterEffect(e1) +end +s.named_material={73481154} --Destroyer Golem +s.listed_names={160027057} --"Revival of Sennin Genjin" +function s.contactfil(tp) + return Duel.GetMatchingGroup(aux.FaceupFilter(Card.IsAbleToDeckOrExtraAsCost),tp,LOCATION_MZONE,0,nil) +end +function s.contactop(g,tp) + Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_COST+REASON_MATERIAL) +end +function s.matfilter(c,scard,sumtype,tp) + return c:IsAttribute(ATTRIBUTE_EARTH,scard,sumtype,tp) and c:IsLevelBelow(5) +end +function s.condition(e,tp,eg,ep,ev,re,r,rp) + local c=e:GetHandler() + return c:IsSummonPhaseMain() and c:IsStatus(STATUS_SPSUMMON_TURN) and c:IsFusionSummoned() +end +function s.thfilter(c) + return c:IsCode(160027057) and c:IsAbleToHand() +end +function s.target(e,tp,eg,ep,ev,re,r,rp,chk) + if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_GRAVE,0,1,nil) end + Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE) + Duel.SetPossibleOperationInfo(0,CATEGORY_TODECK,nil,1,1-tp,LOCATION_GRAVE) + Duel.SetPossibleOperationInfo(0,CATEGORY_LVCHANGE,e:GetHandler(),1,tp,2) +end +function s.tdfilter(c) + return c:IsAbleToDeck() +end +function s.operation(e,tp,eg,ep,ev,re,r,rp) + --Effect + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) + local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_GRAVE,0,1,1,nil) + if #g>0 and Duel.SendtoHand(g,nil,REASON_EFFECT)>0 then + Duel.ConfirmCards(1-tp,g) + if Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,0,LOCATION_GRAVE,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) + local todeck_g=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,0,LOCATION_GRAVE,1,2,nil) + Duel.HintSelection(todeck_g) + if Duel.SendtoDeck(todeck_g,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)>0 then + --This card's Level is increased by 2 until the end of the turn. + e:GetHandler():UpdateLevel(2,RESETS_STANDARD_PHASE_END,e:GetHandler()) + end + end + end +end \ No newline at end of file diff --git a/rush/c160027047.lua b/rush/c160027047.lua new file mode 100644 index 0000000000..89ace4912d --- /dev/null +++ b/rush/c160027047.lua @@ -0,0 +1,27 @@ +--押し通す千年原人 +--The Unstoppable Sengenjin +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + c:EnableReviveLimit() + --If this card battles an opponent's monster, any battle damage this card inflicts to your opponent is doubled + local e1=Effect.CreateEffect(c) + e1:SetType(EFFECT_TYPE_SINGLE) + e1:SetCode(EFFECT_CHANGE_BATTLE_DAMAGE) + e1:SetCondition(function(e) local bc=e:GetHandler():GetBattleTarget() return bc and bc:IsControler(1-e:GetHandlerPlayer()) end) + e1:SetValue(aux.ChangeBattleDamage(1,DOUBLE_DAMAGE)) + c:RegisterEffect(e1) + --During your turn, if there are 10 or more monsters in your Graveyard, this card gains 500 ATK. + local e2=Effect.CreateEffect(c) + e2:SetType(EFFECT_TYPE_SINGLE) + e2:SetCode(EFFECT_UPDATE_ATTACK) + e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) + e2:SetRange(LOCATION_MZONE) + e2:SetCondition(s.con) + e2:SetValue(500) + c:RegisterEffect(e2) +end +function s.con(e) + local tp=e:GetHandlerPlayer() + return Duel.IsTurnPlayer(tp) and Duel.GetMatchingGroupCount(Card.IsMonster,tp,LOCATION_GRAVE,0,nil)>=10 +end \ No newline at end of file diff --git a/rush/c160027056.lua b/rush/c160027056.lua new file mode 100644 index 0000000000..6d6b6b1ea4 --- /dev/null +++ b/rush/c160027056.lua @@ -0,0 +1,38 @@ +--千年原人の儀式 +--Ritual of Sennen Genjin +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + --Name becomes "Revival of Sennin Genjin" in the Graveyard + local e0=Effect.CreateEffect(c) + e0:SetType(EFFECT_TYPE_SINGLE) + e0:SetCode(EFFECT_CHANGE_CODE) + e0:SetProperty(EFFECT_FLAG_SINGLE_RANGE) + e0:SetRange(LOCATION_GRAVE) + e0:SetValue(160027057) + c:RegisterEffect(e0) + --Ritual Summon "Sengenjin" or "The Unstoppable Sennen Genjin" by sending face-up EARTH monsters from your field whose total Levels equal 8 or more to the Graveyard + local e1=Ritual.CreateProc({handler=c,lvtype=RITPROC_GREATER,filter=s.ritualfil,matfilter=s.forcedgroup,stage2=s.stage2}) + c:RegisterEffect(e1) +end +s.listed_names={76232340,160027047,160027057} --"Sengenjin", "The Unstoppable Sengenjin", "Revival of Sennen Genjin" +function s.ritualfil(c) + return c:IsCode(76232340,160027047) +end +function s.forcedgroup(c,e,tp) + return c:IsLocation(LOCATION_MZONE) and c:IsAttribute(ATTRIBUTE_EARTH) and c:IsFaceup() +end +function s.stage2(mg,e,tp,eg,ep,ev,re,r,rp,tc) + local c=e:GetHandler() + local e1=Effect.CreateEffect(c) + e1:SetType(EFFECT_TYPE_FIELD) + e1:SetCode(EFFECT_CANNOT_ATTACK) + e1:SetProperty(EFFECT_FLAG_OATH) + e1:SetTargetRange(LOCATION_MZONE,0) + e1:SetTarget(s.ftarget) + e1:SetReset(RESET_PHASE|PHASE_END) + Duel.RegisterEffect(e1,tp) +end +function s.ftarget(e,c) + return not c:IsAttribute(ATTRIBUTE_EARTH) +end \ No newline at end of file diff --git a/rush/c160027057.lua b/rush/c160027057.lua new file mode 100644 index 0000000000..8edc9069a4 --- /dev/null +++ b/rush/c160027057.lua @@ -0,0 +1,15 @@ +--千年原人の復活 +--Revival of Sennen Genjin +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + local e1=Ritual.CreateProc({handler=c,lvtype=RITPROC_GREATER,filter=s.ritualfil,matfilter=s.forcedgroup}) + c:RegisterEffect(e1) +end +s.listed_names={76232340} --"Sengenjin" +function s.ritualfil(c) + return c:IsCode(76232340) +end +function s.forcedgroup(c,e,tp) + return c:IsLocation(LOCATION_MZONE|LOCATION_HAND) +end \ No newline at end of file diff --git a/rush/c160027058.lua b/rush/c160027058.lua new file mode 100644 index 0000000000..d44c18c788 --- /dev/null +++ b/rush/c160027058.lua @@ -0,0 +1,60 @@ +--千年の粉砕者 +--Millennium Smasher +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + --Name becomes "Revival of Sennin Genjin" in the Graveyard + local e0=Effect.CreateEffect(c) + e0:SetType(EFFECT_TYPE_SINGLE) + e0:SetCode(EFFECT_CHANGE_CODE) + e0:SetProperty(EFFECT_FLAG_SINGLE_RANGE) + e0:SetRange(LOCATION_GRAVE) + e0:SetValue(160027057) + c:RegisterEffect(e0) + --Choose 1 "Sengenjin" in your Graveyard and Special Summon it to your field face-up + local e1=Effect.CreateEffect(c) + e1:SetDescription(aux.Stringid(id,0)) + e1:SetCategory(CATEGORY_SPECIAL_SUMMON) + e1:SetType(EFFECT_TYPE_ACTIVATE) + e1:SetCode(EVENT_FREE_CHAIN) + e1:SetTarget(s.target) + e1:SetOperation(s.activate) + c:RegisterEffect(e1) +end +s.listed_names={160027057,76232340} --"Revival of Sennin Genjin", "Sengenjin" +function s.spfilter(c,e,tp) + return c:IsCode(76232340) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) +end +function s.target(e,tp,eg,ep,ev,re,r,rp,chk) + if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 + and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end + Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE) +end +function s.activate(e,tp,eg,ep,ev,re,r,rp) + --Effect + if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) + local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) + Duel.HintSelection(g) + if #g>0 and Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)>0 + and Duel.IsExistingMatchingCard(Card.IsNotMaximumModeSide,tp,0,LOCATION_ONFIELD,1,nil) + and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then + Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) + local dg=Duel.SelectMatchingCard(tp,Card.IsNotMaximumModeSide,tp,0,LOCATION_ONFIELD,1,1,nil) + local dg2=dg:AddMaximumCheck() + Duel.HintSelection(dg2) + Duel.Destroy(dg,REASON_EFFECT) + end + --You cannot attack with monsters for the rest of this turn, except EARTH monsters. + local e1=Effect.CreateEffect(e:GetHandler()) + e1:SetType(EFFECT_TYPE_FIELD) + e1:SetCode(EFFECT_CANNOT_ATTACK) + e1:SetProperty(EFFECT_FLAG_OATH) + e1:SetTargetRange(LOCATION_MZONE,0) + e1:SetTarget(s.ftarget) + e1:SetReset(RESET_PHASE|PHASE_END) + Duel.RegisterEffect(e1,tp) +end +function s.ftarget(e,c) + return not c:IsAttribute(ATTRIBUTE_EARTH) +end \ No newline at end of file diff --git a/rush/c160027069.lua b/rush/c160027069.lua new file mode 100644 index 0000000000..36680ef59d --- /dev/null +++ b/rush/c160027069.lua @@ -0,0 +1,7 @@ +--千年原人 (Rush) +--Sengenjin (Rush) +--scripted by Cybercatman +local s,id=GetID() +function s.initial_effect(c) + c:EnableReviveLimit() +end \ No newline at end of file