TGAP-Trixie
Member Title : Trixie does not even... Posts : 273 Join date : 2014-04-17
| Subject: Traptrix meh support Wed Feb 18, 2015 10:51 pm | |
| I could try to do more. I already have a ton of hand support by itself though - Traptrix monsters:
Here's the effects for huntsman and fencers if that's hard to read - effects:
Huntsman: 2 Level 4 "Traptrix" monsters This card is unaffected by the effects of "Hole" normal trap cards. 2 of your monster card zones cannot be used. Immediately after resolving a "Hole" normal trap card you control, you can set that card instead of sending it to the graveyard. Once per turn: you can return 1 set spell/trap card you control to your hand; destroy 1 card your opponent controls. Once per turn: you can detach 1 Xyz material from this card; select 1 unused monster card zone. That monster card zone cannot be used as long as this card remains face-up on the field.
Fencers: This card is unaffected by the effects of "Hole" normal trap cards. When a "Hole" normal trap card is activated (except during the damage step): you can equip 1 "Artifact" monster from your deck or graveyard to this card. You can only use this effect of "Traptrix Fencers" once per turn. When an "Artifact" monster is equipped to this card: you can choose to apply the effect of that monster as if it was special summoned during your opponent's turn as this card's effect. If an "Artifact" monster equipped to this card would be sent to the graveyard: special summon it to your side of the field instead (even if this card is no longer on the field or flipped face-down).
- Scripts:
Orchestina: - Code:
-
function c65000015.initial_effect(c) --immune local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e1:SetRange(LOCATION_MZONE) e1:SetCode(EFFECT_IMMUNE_EFFECT) e1:SetValue(c65000015.efilter) c:RegisterEffect(e1) --search local e2=Effect.CreateEffect(c) e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e2:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE) e2:SetCode(EVENT_SUMMON_SUCCESS) e2:SetTarget(c65000015.thtg) e2:SetOperation(c65000015.thop) c:RegisterEffect(e2) --Quick summon local e3=Effect.CreateEffect(c) e3:SetCategory(CATEGORY_SUMMON) e3:SetType(EFFECT_TYPE_QUICK_O) e3:SetCode(EVENT_FREE_CHAIN) e3:SetRange(LOCATION_MZONE) e3:SetCountLimit(1,65000015) e3:SetCondition(c65000015.qscon) e3:SetTarget(c65000015.qstg) e3:SetOperation(c65000015.qsop) c:RegisterEffect(e3) end function c65000015.efilter(e,te) local c=te:GetHandler() return c:GetType()==TYPE_TRAP and (c:IsSetCard(0x4c) or c:IsSetCard(0x89)) end function c65000015.filter(c) return c:IsSetCard(0x108a) and c:GetCode()~=65000015 and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() end function c65000015.thtg(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.IsExistingMatchingCard(c65000015.filter,tp,LOCATION_DECK,0,1,nil) end Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) end function c65000015.thop(e,tp,eg,ep,ev,re,r,rp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) local g=Duel.SelectMatchingCard(tp,c65000015.filter,tp,LOCATION_DECK,0,1,1,nil) if g:GetCount()>0 then Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.ConfirmCards(1-tp,g) end end function c65000015.qscon(e,tp,eg,ep,ev,re,r,rp) return Duel.GetTurnPlayer()~=tp end function c65000015.qsfilter(c) return c:IsSetCard(0x108a) and c:GetCode()~=65000015 and c:IsSummonable(true,nil) end function c65000015.qstg(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.IsExistingMatchingCard(c65000015.qsfilter,tp,LOCATION_HAND,0,1,nil) end Duel.SetOperationInfo(0,CATEGORY_SUMMON,nil,1,0,0) end function c65000015.qsop(e,tp,eg,ep,ev,re,r,rp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SUMMON) local g=Duel.SelectMatchingCard(tp,c65000015.qsfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil) local tc=g:GetFirst() if tc then local s1=tc:IsSummonable(true,nil) if s1 then Duel.Summon(tp,tc,true,nil) end end end Huntsman: - Code:
-
function c65000017.initial_effect(c) --xyz summon aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x108a),4,2) c:EnableReviveLimit() --immune local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e1:SetRange(LOCATION_MZONE) e1:SetCode(EFFECT_IMMUNE_EFFECT) e1:SetValue(c65000017.efilter) c:RegisterEffect(e1) --use extra mzone local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_FIELD) e2:SetRange(LOCATION_MZONE) e2:SetCode(EFFECT_USE_EXTRA_MZONE) e2:SetValue(2) c:RegisterEffect(e2) --set "Hole" normal traps local e3=Effect.CreateEffect(c) e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCode(EVENT_CHAIN_SOLVED) e3:SetRange(LOCATION_MZONE) e3:SetCondition(c65000017.setcon) e3:SetOperation(c65000017.setop) c:RegisterEffect(e3) --destroy local e4=Effect.CreateEffect(c) e4:SetDescription(aux.Stringid(65000017,1)) e4:SetCategory(CATEGORY_DESTROY) e4:SetType(EFFECT_TYPE_IGNITION) e4:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e4:SetRange(LOCATION_MZONE) e4:SetCountLimit(1) e4:SetCost(c65000017.descost) e4:SetTarget(c65000017.destg) e4:SetOperation(c65000017.desop) c:RegisterEffect(e4) --ground local e5=Effect.CreateEffect(c) e5:SetDescription(aux.Stringid(65000017,2)) e5:SetType(EFFECT_TYPE_IGNITION) e5:SetCode(EVENT_FREE_CHAIN) e5:SetRange(LOCATION_MZONE) e5:SetCountLimit(1) e5:SetCost(c65000017.grndcost) e5:SetOperation(c65000017.grndop) c:RegisterEffect(e5) end function c65000017.efilter(e,te) local c=te:GetHandler() return c:GetType()==TYPE_TRAP and (c:IsSetCard(0x4c) or c:IsSetCard(0x89)) end function c65000017.setcon(e,tp,eg,ep,ev,re,r,rp) local c=re:GetHandler() return re and re:IsActiveType(TYPE_TRAP) and (c:IsSetCard(0x4c) or c:IsSetCard(0x89)) and re:IsHasType(EFFECT_TYPE_ACTIVATE) end function c65000017.setop(e,tp,eg,ep,ev,re,r,rp) local c=re:GetHandler() if not re:GetHandler():IsType(TYPE_TRAP) then return end Duel.Hint(HINT_CARD,0,65000017) Duel.BreakEffect() c:CancelToGrave() if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_EFFECT) end if Duel.SelectYesNo(tp,aux.Stringid(65000017,0)) then Duel.ChangePosition(c,POS_FACEDOWN) return true else return Duel.SendtoGrave(c,REASON_RULE) end end function c65000017.retfilter(c) return c:IsFacedown() and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHandAsCost() end function c65000017.descost(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.IsExistingMatchingCard(c65000017.retfilter,tp,LOCATION_SZONE,0,1,nil) end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND) local g=Duel.SelectMatchingCard(tp,c65000017.retfilter,tp,LOCATION_SZONE,0,1,1,nil) Duel.SendtoHand(g,nil,REASON_COST) end function c65000017.desfilter(c) return c:IsDestructable() end function c65000017.destg(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.IsExistingMatchingCard(c65000017.desfilter,tp,0,LOCATION_ONFIELD,1,nil) end local g=Duel.GetMatchingGroup(c65000017.desfilter,tp,0,LOCATION_ONFIELD,nil) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) end function c65000017.desop(e,tp,eg,ep,ev,re,r,rp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) local g=Duel.SelectMatchingCard(tp,c65000017.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil) if g:GetCount()>0 then Duel.HintSelection(g) Duel.Destroy(g,REASON_EFFECT) end end function c65000017.grndcost(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) end function c65000017.grndop(e,tp,eg,ep,ev,re,r,rp) if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 and Duel.GetLocationCount(1-tp,LOCATION_MZONE)<=0 then return end --disable field local e1=Effect.CreateEffect(e:GetHandler()) e1:SetType(EFFECT_TYPE_FIELD) e1:SetRange(LOCATION_MZONE) e1:SetCode(EFFECT_DISABLE_FIELD) e1:SetOperation(c65000017.disop) e:GetHandler():RegisterEffect(e1) end function c65000017.disop(e,tp) local dis1=Duel.SelectDisableField(tp,1,LOCATION_MZONE,LOCATION_MZONE,0) return dis1 end
Don't get excited about fencers though, she's incomplete. I didn't add in her script. Still trying to figure out how to make the artifact monster considered special summoned when equipped. |
|