Prank-Kids Weather Washer
- Card ID:
44509529 - Format: Standard
- Script:
Scripts/c44509529.lua
Stats
| Field | Value |
|---|---|
| Type | 0x61 |
| ATK | 2000 |
| DEF | 0 |
| Level/Rank/Link | 0x5 |
| Race | 0x40 |
| Attribute | 0x2 |
| Category | 0x40000 |
Card Text
text
2 "Prank-Kids" monsters
If your "Prank-Kids" monster attacks, your opponent cannot activate cards or effects until the end of the Damage Step.
During your opponent's turn (Quick Effect): You can Tribute this card, then target 2 "Prank-Kids" non-Fusion Monsters with different names in your GY; Special Summon them.
They cannot be destroyed by battle this turn.
You can only use this effect of "Prank-Kids Weather Washer" once per turn.Detected API Calls
Auxiliary.AddFusionProcFunRepAuxiliary.FilterBoolFunctionAuxiliary.StringidAuxiliary.dncheckCard.EnableReviveLimitCard.GetCodeCard.IsAbleToRemoveAsCostCard.IsCanBeEffectTargetCard.IsCanBeSpecialSummonedCard.IsControlerCard.IsFaceupCard.IsFusionSetCardCard.IsHasEffectCard.IsLocationCard.IsRelateToEffectCard.IsSetCardCard.IsTypeCard.RegisterEffectDuel.GetAttackerDuel.GetChainInfoDuel.GetLocationCountDuel.GetMZoneCountDuel.GetMatchingGroupDuel.GetTurnPlayerDuel.HintDuel.IsPlayerAffectedByEffectDuel.ReleaseDuel.RemoveDuel.SetOperationInfoDuel.SetTargetCardDuel.SpecialSummonCompleteDuel.SpecialSummonStepEffect.CloneEffect.CreateEffectEffect.GetHandlerEffect.GetHandlerPlayerEffect.GetLabelEffect.SetCategoryEffect.SetCodeEffect.SetCondition- ...and 25 more
Script
lua
--プランキッズ・ウェザー
function c44509529.initial_effect(c)
--fusion material
c:EnableReviveLimit()
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x120),2,true)
--actlimit
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,1)
e1:SetValue(1)
e1:SetCondition(c44509529.actcon)
c:RegisterEffect(e1)
--spsummon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(44509529,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,44509529)
e2:SetHintTiming(0,TIMING_BATTLE_START+TIMING_END_PHASE)
e2:SetCondition(c44509529.spcon)
e2:SetCost(c44509529.spcost)
e2:SetTarget(c44509529.sptg)
e2:SetOperation(c44509529.spop)
c:RegisterEffect(e2)
end
function c44509529.actcon(e)
local a=Duel.GetAttacker()
return a and a:IsControler(e:GetHandlerPlayer()) and a:IsSetCard(0x120)
end
function c44509529.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp
end
function c44509529.excostfilter(c,tp)
return (c:IsFaceup() or c:IsLocation(LOCATION_GRAVE)) and c:IsAbleToRemoveAsCost() and c:IsHasEffect(25725326,tp)
end
function c44509529.costfilter(c,tp,g)
local tg=g:Clone()
tg:RemoveCard(c)
return Duel.GetMZoneCount(tp,c)>1 and tg:GetClassCount(Card.GetCode)>=2
end
function c44509529.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetLabel(0)
local g=Duel.GetMatchingGroup(c44509529.excostfilter,tp,LOCATION_MZONE+LOCATION_GRAVE,0,nil,tp)
local tg=Duel.GetMatchingGroup(c44509529.spfilter,tp,LOCATION_GRAVE,0,nil,e,tp)
if e:GetHandler():IsReleasable() then g:AddCard(e:GetHandler()) end
if chk==0 then
e:SetLabel(100)
return not Duel.IsPlayerAffectedByEffect(tp,59822133) and g:IsExists(c44509529.costfilter,1,nil,tp,tg)
end
local cg=g:Filter(c44509529.costfilter,nil,tp,tg)
local tc
if #cg>1 then
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(25725326,0))
tc=cg:Select(tp,1,1,nil):GetFirst()
else
tc=cg:GetFirst()
end
local te=tc:IsHasEffect(25725326,tp)
if te then
te:UseCountLimit(tp)
Duel.Remove(tc,POS_FACEUP,REASON_COST+REASON_REPLACE)
else
Duel.Release(tc,REASON_COST)
end
end
function c44509529.spfilter(c,e,tp)
return c:IsSetCard(0x120) and not c:IsType(TYPE_FUSION)
and c:IsCanBeEffectTarget(e) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c44509529.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end
if chk==0 then return e:GetLabel()==100 end
e:SetLabel(0)
local g=Duel.GetMatchingGroup(c44509529.spfilter,tp,LOCATION_GRAVE,0,nil,e,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g1=g:SelectSubGroup(tp,aux.dncheck,false,2,2)
Duel.SetTargetCard(g1)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g1,2,0,0)
end
function c44509529.spop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local tg=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
local g=tg:Filter(Card.IsRelateToEffect,nil,e)
if g:GetCount()==0 or ft<=0 or (g:GetCount()>1 and Duel.IsPlayerAffectedByEffect(tp,59822133)) then return end
if ft<g:GetCount() then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
g=g:Select(tp,ft,ft,nil)
end
local tc=g:GetFirst()
while tc do
if Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
tc=g:GetNext()
end
Duel.SpecialSummonComplete()
end