攻略
Combo
考据
好物分享
卡图故事
支缓
盘点整理
Duel Links
--No.42 スターシップ・ギャラクシー・トマホーク function c10389142.initial_effect(c) --xyz summon aux.AddXyzProcedure(c,nil,7,2) c:EnableReviveLimit() --token local e1=Effect.CreateEffect(c) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN) e1:SetDescription(aux.Stringid(10389142,0)) e1:SetType(EFFECT_TYPE_IGNITION) e1:SetCountLimit(1) e1:SetRange(LOCATION_MZONE) e1:SetCost(c10389142.spcost) e1:SetTarget(c10389142.sptg) e1:SetOperation(c10389142.spop) c:RegisterEffect(e1) end c10389142.xyz_number=42 function c10389142.spcost(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,2,REASON_COST) end e:GetHandler():RemoveOverlayCard(tp,2,2,REASON_COST) end function c10389142.sptg(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsPlayerCanSpecialSummonMonster(tp,10389143,0,0x4011,2000,0,6,RACE_MACHINE,ATTRIBUTE_WIND) end local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,ft,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,ft,0,0) end function c10389142.spop(e,tp,eg,ep,ev,re,r,rp) local e0=Effect.CreateEffect(e:GetHandler()) e0:SetType(EFFECT_TYPE_FIELD) e0:SetCode(EFFECT_AVOID_BATTLE_DAMAGE) e0:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e0:SetTargetRange(0,1) e0:SetValue(1) e0:SetReset(RESET_PHASE+PHASE_END) Duel.RegisterEffect(e0,tp) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) if ft<=0 or not Duel.IsPlayerCanSpecialSummonMonster(tp,10389143,0,0x4011,2000,0,6,RACE_MACHINE,ATTRIBUTE_WIND) then return end if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end local fid=e:GetHandler():GetFieldID() local g=Group.CreateGroup() for i=1,ft do local token=Duel.CreateToken(tp,10389143) Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP) token:RegisterFlagEffect(10389142,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,fid) g:AddCard(token) end Duel.SpecialSummonComplete() g:KeepAlive() local e1=Effect.CreateEffect(e:GetHandler()) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetCode(EVENT_PHASE+PHASE_END) e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE) e1:SetReset(RESET_PHASE+PHASE_END) e1:SetCountLimit(1) e1:SetLabel(fid) e1:SetLabelObject(g) e1:SetCondition(c10389142.descon) e1:SetOperation(c10389142.desop) Duel.RegisterEffect(e1,tp) end function c10389142.desfilter(c,fid) return c:GetFlagEffectLabel(10389142)==fid end function c10389142.descon(e,tp,eg,ep,ev,re,r,rp) local g=e:GetLabelObject() if not g:IsExists(c10389142.desfilter,1,nil,e:GetLabel()) then g:DeleteGroup() e:Reset() return false else return true end end function c10389142.desop(e,tp,eg,ep,ev,re,r,rp) local g=e:GetLabelObject() local tg=g:Filter(c10389142.desfilter,nil,e:GetLabel()) g:DeleteGroup() Duel.Destroy(tg,REASON_EFFECT) end