Commit b8c0e2b6 authored by nekrozar's avatar nekrozar Committed by nanahira

fix activate limit (#1197)

* fix activate limit

* fix activate limit
parent 83799fbe
......@@ -24,7 +24,7 @@ function c12255007.initial_effect(c)
c:RegisterEffect(e2)
end
function c12255007.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e) and re:IsHasType(EFFECT_TYPE_ACTIVATE)
return re:IsHasType(EFFECT_TYPE_ACTIVATE)
end
function c12255007.actcon(e)
local tc=Duel.GetAttacker()
......
......@@ -89,7 +89,7 @@ end
function c13331639.limval(e,re,rp)
local rc=re:GetHandler()
return rc:IsLocation(LOCATION_MZONE) and re:IsActiveType(TYPE_MONSTER)
and rc:IsType(TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ) and not rc:IsImmuneToEffect(e)
and rc:IsType(TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ)
end
function c13331639.ddcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()~=PHASE_DRAW
......
......@@ -65,5 +65,5 @@ function c15419596.actcon(e)
end
function c15419596.aclimit(e,re,tp)
local tc=re:GetHandler()
return tc:IsLocation(LOCATION_MZONE) and re:IsActiveType(TYPE_MONSTER) and e:GetHandler():GetColumnGroup():IsContains(tc) and not tc:IsImmuneToEffect(e)
return tc:IsLocation(LOCATION_MZONE) and re:IsActiveType(TYPE_MONSTER) and e:GetHandler():GetColumnGroup():IsContains(tc)
end
......@@ -58,5 +58,5 @@ function c17194258.sumlimit(e,c)
return c:IsCode(e:GetLabel())
end
function c17194258.aclimit(e,re,tp)
return re:GetHandler():IsCode(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER)
end
......@@ -62,7 +62,7 @@ function c17663375.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return bit.band(sumpos,POS_FACEDOWN)>0
end
function c17663375.aclimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER)
end
function c17663375.actcon(e)
return Duel.GetAttacker()==e:GetHandler()
......
......@@ -46,7 +46,7 @@ function c24940422.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp)
end
function c24940422.aclimit(e,re,tp)
return not re:GetHandler():IsCode(24940422) and re:IsActiveType(TYPE_SPELL+TYPE_TRAP) and not re:GetHandler():IsImmuneToEffect(e)
return not re:GetHandler():IsCode(24940422) and re:IsActiveType(TYPE_SPELL+TYPE_TRAP)
end
function c24940422.tdfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsAbleToDeck()
......
......@@ -17,7 +17,7 @@ function c25494711.initial_effect(c)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(0,1)
e2:SetValue(c25494711.aclimit)
e2:SetValue(1)
e2:SetCondition(c25494711.actcon)
c:RegisterEffect(e2)
--destroy replace
......@@ -64,9 +64,6 @@ end
function c25494711.ftarget(e,c)
return e:GetLabel()~=c:GetFieldID()
end
function c25494711.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c25494711.actcon(e)
return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler()
end
......
......@@ -63,7 +63,7 @@ function c2602411.eqlimit(e,c)
end
function c2602411.aclimit(e,re,tp)
local loc=re:GetActivateLocation()
return loc==LOCATION_GRAVE and re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return loc==LOCATION_GRAVE and re:IsActiveType(TYPE_MONSTER)
end
function c2602411.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
......
......@@ -44,5 +44,5 @@ function c26202165.operation(e,tp,eg,ep,ev,re,r,rp)
end
function c26202165.aclimit(e,re,tp)
local tc=e:GetLabelObject()
return re:GetHandler():IsCode(tc:GetCode()) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(tc:GetCode())
end
......@@ -70,7 +70,7 @@ function c26232916.thop(e,tp,eg,ep,ev,re,r,rp)
end
function c26232916.aclimit(e,re,tp)
local tc=e:GetLabelObject()
return re:GetHandler():IsCode(tc:GetCode()) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(tc:GetCode())
end
function c26232916.repfilter(c,tp)
return c:IsFaceup() and (c:IsType(TYPE_MONSTER) and c:IsSetCard(0x2b) or c:IsSetCard(0x61))
......@@ -99,4 +99,3 @@ function c26232916.repop(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
Duel.Remove(tc,POS_FACEUP,REASON_EFFECT+REASON_REPLACE)
end
......@@ -70,5 +70,5 @@ function c29208536.aclimit(e,re,tp)
table.insert(cg,tc:GetCode())
tc=g:GetNext()
end
return re:GetHandler():IsCode(table.unpack(cg)) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(table.unpack(cg))
end
......@@ -36,5 +36,5 @@ function c32231618.spop(e,tp,eg,ep,ev,re,r,rp)
end
function c32231618.actlimit(e,re,rp)
local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and not rc:IsSetCard(0xcc) and not rc:IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER) and not rc:IsSetCard(0xcc)
end
......@@ -68,7 +68,7 @@ function c32465539.efop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,1)
e1:SetValue(c32465539.aclimit)
e1:SetValue(1)
e1:SetCondition(c32465539.actcon)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true)
......@@ -81,9 +81,6 @@ function c32465539.efop(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e2,true)
end
end
function c32465539.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c32465539.actcon(e)
return Duel.GetAttacker()==e:GetHandler() and Duel.GetAttackTarget() and Duel.GetAttackTarget():IsPosition(POS_DEFENSE)
end
......@@ -25,7 +25,7 @@ function c33022867.initial_effect(c)
e3:SetRange(LOCATION_MZONE)
e3:SetTargetRange(0,1)
e3:SetCondition(c33022867.condition)
e3:SetValue(c33022867.aclimit)
e3:SetValue(1)
c:RegisterEffect(e3)
end
function c33022867.fselect(g,tp)
......@@ -71,6 +71,3 @@ function c33022867.condition(e)
local ph=Duel.GetCurrentPhase()
return ph>=PHASE_BATTLE_START and ph<=PHASE_BATTLE
end
function c33022867.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -30,13 +30,13 @@ function c33950246.initial_effect(c)
c:RegisterEffect(e3)
end
function c33950246.aclimit(e,re,tp)
return re:IsActiveType(TYPE_FLIP) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsActiveType(TYPE_FLIP)
end
function c33950246.disable(e,c)
return c:IsType(TYPE_FLIP)
end
function c33950246.disop(e,tp,eg,ep,ev,re,r,rp)
if re:IsActiveType(TYPE_FLIP) then
Duel.NegateEffect(ev)
if re:IsActiveType(TYPE_FLIP) then
Duel.NegateEffect(ev)
end
end
......@@ -23,7 +23,7 @@ function c34010534.initial_effect(c)
e3:SetRange(LOCATION_SZONE)
e3:SetTargetRange(0,1)
e3:SetCondition(c34010534.actcon)
e3:SetValue(c34010534.aclimit)
e3:SetValue(1)
c:RegisterEffect(e3)
end
function c34010534.sumfilter(c)
......@@ -61,6 +61,3 @@ function c34010534.actcon(e)
local d=Duel.GetAttackTarget()
return (a and c34010534.cfilter(a,tp)) or (d and c34010534.cfilter(d,tp))
end
function c34010534.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -78,7 +78,7 @@ function c35618217.actop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(0,1)
e1:SetCondition(c35618217.actcon)
e1:SetValue(c35618217.actlimit)
e1:SetValue(1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
......@@ -86,6 +86,3 @@ function c35618217.actcon(e)
local ph=Duel.GetCurrentPhase()
return ph>=PHASE_BATTLE_START and ph<=PHASE_BATTLE
end
function c35618217.actlimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -60,7 +60,7 @@ function c38601126.eqlimit(e,c)
end
function c38601126.aclimit(e,re,tp)
local loc=re:GetActivateLocation()
return loc==LOCATION_SZONE and not re:IsHasType(EFFECT_TYPE_ACTIVATE) and not re:GetHandler():IsImmuneToEffect(e)
return loc==LOCATION_SZONE and not re:IsHasType(EFFECT_TYPE_ACTIVATE)
end
function c38601126.dacost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
......
......@@ -23,10 +23,7 @@ function c402568.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(0,1)
e1:SetValue(c402568.aclimit)
e1:SetValue(1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c402568.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -10,7 +10,7 @@ function c40509732.initial_effect(c)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,1)
e1:SetValue(c40509732.aclimit)
e1:SetValue(1)
e1:SetCondition(c40509732.con)
c:RegisterEffect(e1)
--disable
......@@ -36,9 +36,6 @@ function c40509732.initial_effect(c)
e4:SetOperation(c40509732.spop)
c:RegisterEffect(e4)
end
function c40509732.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c40509732.con(e)
local c=e:GetHandler()
return (Duel.GetAttacker()==c and c:GetBattleTarget()) or Duel.GetAttackTarget()==c
......
......@@ -28,7 +28,7 @@ function c40583194.operation(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SELECT_EFFECT_TARGET)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,0xff)
e1:SetValue(c40583194.etarget)
......
......@@ -24,13 +24,10 @@ function c41128647.initial_effect(c)
e4:SetCode(EFFECT_CANNOT_ACTIVATE)
e4:SetRange(LOCATION_FZONE)
e4:SetTargetRange(0,1)
e4:SetValue(c41128647.aclimit)
e4:SetValue(1)
e4:SetCondition(c41128647.actcon)
c:RegisterEffect(e4)
end
function c41128647.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c41128647.cfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0xd8) and c:IsControler(tp)
end
......
......@@ -40,7 +40,7 @@ function c43845801.activate(e,tp,eg,ep,ev,re,r,rp)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetTargetRange(0,1)
e2:SetLabelObject(tc)
e2:SetValue(c43845801.aclimit)
e2:SetValue(1)
e2:SetCondition(c43845801.actcon)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
......@@ -49,6 +49,3 @@ end
function c43845801.actcon(e)
return Duel.GetAttacker()==e:GetLabelObject()
end
function c43845801.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -65,7 +65,7 @@ function c43994202.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function c43994202.aclimit(e,re,tp)
return re:GetHandler():IsCode(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER)
end
function c43994202.splimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsCode(e:GetLabel())
......
......@@ -10,7 +10,7 @@ function c44509529.initial_effect(c)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,1)
e1:SetValue(c44509529.aclimit)
e1:SetValue(1)
e1:SetCondition(c44509529.actcon)
c:RegisterEffect(e1)
--spsummon
......@@ -29,9 +29,6 @@ function c44509529.initial_effect(c)
e2:SetOperation(c44509529.spop)
c:RegisterEffect(e2)
end
function c44509529.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c44509529.actcon(e)
local a=Duel.GetAttacker()
return a and a:IsControler(e:GetHandlerPlayer()) and a:IsSetCard(0x120)
......
......@@ -70,7 +70,7 @@ function c44874522.regop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c44874522.aclimit(e,re,tp)
return (re:IsHasType(EFFECT_TYPE_ACTIVATE) or re:IsActiveType(TYPE_MONSTER)) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) or re:IsActiveType(TYPE_MONSTER)
end
function c44874522.actcon(e)
return Duel.GetAttacker()==e:GetHandler()
......
......@@ -12,7 +12,7 @@ function c45349196.initial_effect(c)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetCondition(c45349196.accon)
e1:SetValue(c45349196.aclimit)
e1:SetValue(1)
c:RegisterEffect(e1)
--damage
local e2=Effect.CreateEffect(c)
......@@ -37,9 +37,6 @@ end
function c45349196.accon(e)
return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler()
end
function c45349196.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c45349196.damcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsSummonType(SUMMON_TYPE_FUSION) and c:GetBattledGroupCount()>0
......
......@@ -18,7 +18,7 @@ function c46897277.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(0,1)
e1:SetValue(c46897277.aclimit)
e1:SetValue(1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(e:GetHandler())
......@@ -29,6 +29,3 @@ function c46897277.operation(e,tp,eg,ep,ev,re,r,rp)
e2:SetTargetRange(0,1)
Duel.RegisterEffect(e2,tp)
end
function c46897277.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -66,7 +66,7 @@ function c48770333.atkop(e,tp,eg,ep,ev,re,r,rp)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(0,1)
e1:SetValue(c48770333.aclimit)
e1:SetValue(1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
if c:IsRelateToEffect(e) then
......@@ -79,6 +79,3 @@ function c48770333.atkop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e2)
end
end
function c48770333.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -73,7 +73,7 @@ function c49306994.operation(e,tp,eg,ep,ev,re,r,rp)
end
end
function c49306994.aclimit(e,re,tp)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsHasType(EFFECT_TYPE_ACTIVATE)
end
function c49306994.actcon(e)
local tc=e:GetHandler():GetEquipTarget()
......
......@@ -79,10 +79,7 @@ function c50139096.actop(e,tp,eg,ep,ev,re,r,rp)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetValue(c50139096.actlimit)
e1:SetValue(1)
e1:SetReset(RESET_PHASE+PHASE_DAMAGE)
Duel.RegisterEffect(e1,tp)
end
function c50139096.actlimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -48,5 +48,5 @@ function c51788412.actcon(e)
return ph>=PHASE_BATTLE_START and ph<=PHASE_BATTLE
end
function c51788412.actlimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER)
end
......@@ -17,7 +17,7 @@ function c56421754.initial_effect(c)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(0,1)
e2:SetValue(c56421754.aclimit)
e2:SetValue(1)
e2:SetCondition(c56421754.actcon)
c:RegisterEffect(e2)
end
......@@ -37,9 +37,6 @@ function c56421754.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectMatchingCard(tp,c56421754.spfilter,tp,LOCATION_MZONE,0,1,1,nil,ft)
Duel.SendtoHand(g,nil,REASON_COST)
end
function c56421754.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c56421754.actcon(e)
return Duel.GetAttacker()==e:GetHandler()
end
......@@ -10,7 +10,7 @@ function c57477163.initial_effect(c)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,1)
e1:SetValue(c57477163.aclimit)
e1:SetValue(1)
e1:SetCondition(c57477163.actcon)
c:RegisterEffect(e1)
--spsummon
......@@ -25,9 +25,6 @@ function c57477163.initial_effect(c)
e2:SetOperation(c57477163.operation)
c:RegisterEffect(e2)
end
function c57477163.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c57477163.actcon(e)
return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler()
end
......
......@@ -29,7 +29,7 @@ function c58569561.accon(e)
return Duel.GetLP(tp)>Duel.GetLP(1-tp) and ac and ac:IsControler(tp) and ac:IsRace(RACE_PLANT)
end
function c58569561.actlimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER)
end
function c58569561.poscon(e,tp,eg,ep,ev,re,r,rp)
return ep==tp
......
......@@ -41,7 +41,7 @@ function c60508057.damop(e,tp,eg,ep,ev,re,r,rp)
end
function c60508057.actlimit(e,re,rp)
local rc=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and not rc:IsSetCard(0xba) and not rc:IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER) and not rc:IsSetCard(0xba)
end
function c60508057.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE)
......
......@@ -19,7 +19,7 @@ function c62000467.initial_effect(c)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(0,1)
e2:SetValue(c62000467.aclimit)
e2:SetValue(1)
e2:SetCondition(c62000467.actcon)
c:RegisterEffect(e2)
--special summon
......@@ -39,9 +39,6 @@ end
function c62000467.indtg(e,c)
return c:IsSetCard(0x19) and Duel.GetAttacker()==c
end
function c62000467.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c62000467.actcon(e)
local tc=Duel.GetAttacker()
local tp=e:GetHandlerPlayer()
......
......@@ -73,5 +73,5 @@ function c65330383.setop(e,tp,eg,ep,ev,re,r,rp)
end
function c65330383.aclimit(e,re,tp)
local tc=re:GetHandler()
return tc:IsLocation(LOCATION_MZONE) and tc:IsFaceup() and tc:IsSummonType(SUMMON_TYPE_SPECIAL) and not tc:IsLinkState() and re:IsActiveType(TYPE_MONSTER) and not tc:IsImmuneToEffect(e)
return tc:IsLocation(LOCATION_MZONE) and tc:IsFaceup() and tc:IsSummonType(SUMMON_TYPE_SPECIAL) and not tc:IsLinkState() and re:IsActiveType(TYPE_MONSTER)
end
......@@ -17,16 +17,13 @@ function c67985943.initial_effect(c)
e3:SetCode(EFFECT_CANNOT_ACTIVATE)
e3:SetRange(LOCATION_MZONE)
e3:SetTargetRange(0,1)
e3:SetValue(c67985943.aclimit)
e3:SetValue(1)
e3:SetCondition(c67985943.actcon)
c:RegisterEffect(e3)
end
function c67985943.splimit(e,se,sp,st)
return not e:GetHandler():IsLocation(LOCATION_EXTRA) or bit.band(st,SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION
end
function c67985943.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c67985943.actcon(e)
return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler()
end
......@@ -58,7 +58,7 @@ function c68396121.negop(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp)
end
function c68396121.aclimit(e,re,tp)
return re:GetHandler():IsOnField() and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsOnField()
end
function c68396121.atkcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsAbleToEnterBP()
......@@ -83,4 +83,3 @@ function c68396121.atkop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1)
end
end
......@@ -65,7 +65,7 @@ function c68431965.lvop1(e,tp,eg,ep,ev,re,r,rp)
end
function c68431965.aclimit(e,re,tp)
local tc=e:GetLabelObject()
return re:GetHandler():IsCode(tc:GetCode()) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(tc:GetCode())
end
function c68431965.sccon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp
......
......@@ -22,5 +22,5 @@ function c68937720.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c68937720.aclimit(e,re,tp)
local rc=re:GetHandler()
return rc:IsLocation(LOCATION_HAND) and re:IsActiveType(TYPE_MONSTER) and not rc:IsImmuneToEffect(e)
return rc:IsLocation(LOCATION_HAND) and re:IsActiveType(TYPE_MONSTER)
end
......@@ -50,7 +50,7 @@ function c70917315.limcon(e)
end
function c70917315.limval(e,re,rp)
local rc=re:GetHandler()
return re:IsActiveType(TYPE_SPELL) and not rc:IsSetCard(0xe0) and not rc:IsImmuneToEffect(e)
return re:IsActiveType(TYPE_SPELL) and not rc:IsSetCard(0xe0)
end
function c70917315.descon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp
......
......@@ -65,5 +65,5 @@ function c7305060.limcon(e)
end
function c7305060.limval(e,re,rp)
local rc=re:GetHandler()
return re:IsActiveType(TYPE_TRAP) and not rc:IsSetCard(0xe0) and not rc:IsImmuneToEffect(e)
return re:IsActiveType(TYPE_TRAP) and not rc:IsSetCard(0xe0)
end
......@@ -22,5 +22,5 @@ function c73599290.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c73599290.aclimit(e,re,tp)
local loc=re:GetActivateLocation()
return (loc==LOCATION_GRAVE or loc==LOCATION_REMOVED) and re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return (loc==LOCATION_GRAVE or loc==LOCATION_REMOVED) and re:IsActiveType(TYPE_MONSTER)
end
......@@ -42,5 +42,5 @@ end
function c7403341.aclimit(e,re,tp)
local c=re:GetHandler()
local tc=e:GetLabelObject()
return c:IsOriginalCodeRule(tc:GetOriginalCodeRule()) and not c:IsImmuneToEffect(e)
return c:IsOriginalCodeRule(tc:GetOriginalCodeRule())
end
......@@ -25,5 +25,5 @@ function c74717840.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e1,tp)
end
function c74717840.aclimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER)
end
......@@ -97,7 +97,7 @@ function c75059201.lvop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c75059201.aclimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER)
end
function c75059201.actcon(e)
if not e:GetHandler():IsLevelAbove(7) then return false end
......
......@@ -44,5 +44,5 @@ function c78010363.operation(e,tp,eg,ep,ev,re,r,rp)
end
function c78010363.aclimit(e,re,tp)
local tc=e:GetLabelObject()
return re:GetHandler():IsCode(tc:GetCode()) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(tc:GetCode())
end
......@@ -51,7 +51,7 @@ function c81055000.thop1(e,tp,eg,ep,ev,re,r,rp)
end
function c81055000.aclimit(e,re,tp)
local tc=e:GetLabelObject()
return re:GetHandler():IsCode(tc:GetCode()) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(tc:GetCode())
end
function c81055000.thtg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsAbleToHand() end
......
......@@ -24,7 +24,7 @@ function c81193865.initial_effect(c)
e3:SetRange(LOCATION_SZONE)
e3:SetTargetRange(0,1)
e3:SetCondition(c81193865.actcon)
e3:SetValue(c81193865.actlimit)
e3:SetValue(1)
c:RegisterEffect(e3)
--chain attack
local e4=Effect.CreateEffect(c)
......@@ -87,9 +87,6 @@ function c81193865.actcon(e)
local ph=Duel.GetCurrentPhase()
return Duel.GetTurnPlayer()==e:GetHandler():GetControler() and ph>=PHASE_BATTLE_START and ph<=PHASE_BATTLE
end
function c81193865.actlimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c81193865.cacon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetAttacker()==e:GetHandler():GetEquipTarget() and Duel.GetAttackTarget()~=nil
end
......
......@@ -82,7 +82,7 @@ function c81269231.rmop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c81269231.aclimit(e,re,tp)
return (re:IsHasType(EFFECT_TYPE_ACTIVATE) or re:IsActiveType(TYPE_MONSTER)) and not re:GetHandler():IsImmuneToEffect(e)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) or re:IsActiveType(TYPE_MONSTER)
end
function c81269231.actcon(e)
local tp=e:GetHandlerPlayer()
......
......@@ -17,7 +17,7 @@ function c83866861.initial_effect(c)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(0,1)
e2:SetValue(c83866861.aclimit)
e2:SetValue(1)
e2:SetCondition(c83866861.actcon)
c:RegisterEffect(e2)
--special summon
......@@ -39,9 +39,6 @@ function c83866861.initial_effect(c)
e4:SetValue(c83866861.atkval)
c:RegisterEffect(e4)
end
function c83866861.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c83866861.actcon(e)
return Duel.GetAttacker()==e:GetHandler() or Duel.GetAttackTarget()==e:GetHandler()
end
......
......@@ -35,7 +35,7 @@ function c8529136.activate(e,tp,eg,ep,ev,re,r,rp)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(0,1)
e1:SetCondition(c8529136.actcon)
e1:SetValue(c8529136.aclimit)
e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
......@@ -73,9 +73,6 @@ function c8529136.actcon(e)
return (Duel.GetAttacker()==c or Duel.GetAttackTarget()==c) and c:GetBattleTarget()~=nil
and e:GetOwnerPlayer()==e:GetHandlerPlayer()
end
function c8529136.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c8529136.effcon(e)
return e:GetOwnerPlayer()==e:GetHandlerPlayer()
end
......
......@@ -50,13 +50,10 @@ function c86221741.operation(e,tp,eg,ep,ev,re,r,rp)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetTargetRange(0,1)
e2:SetValue(c86221741.aclimit)
e2:SetValue(1)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
function c86221741.aclimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
function c86221741.atkcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetOverlayGroup():IsExists(Card.IsSetCard,1,nil,0xba)
end
......
......@@ -63,7 +63,7 @@ function c88581108.atop(e,tp,eg,ep,ev,re,r,rp)
end
function c88581108.aclimit(e,re,tp)
local c=re:GetHandler()
return re:IsActiveType(TYPE_MONSTER) and c:IsAttribute(e:GetLabel()) and not c:IsImmuneToEffect(e)
return re:IsActiveType(TYPE_MONSTER) and c:IsAttribute(e:GetLabel())
end
function c88581108.atktarget(e,c)
return c:IsAttribute(e:GetLabel())
......
......@@ -36,7 +36,7 @@ function c92781606.initial_effect(c)
e4:SetRange(LOCATION_MZONE)
e4:SetLabel(4)
e4:SetCondition(c92781606.actcon)
e4:SetValue(c92781606.actlimit)
e4:SetValue(1)
c:RegisterEffect(e4)
--direct attack
local e5=Effect.CreateEffect(c)
......@@ -97,6 +97,3 @@ function c92781606.actcon(e)
local ph=Duel.GetCurrentPhase()
return c92781606.effcon(e) and ph>=PHASE_BATTLE_START and ph<=PHASE_BATTLE
end
function c92781606.actlimit(e,re,tp)
return not re:GetHandler():IsImmuneToEffect(e)
end
......@@ -50,5 +50,5 @@ function c94016752.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function c94016752.aclimit(e,re,tp)
return re:GetHandler():IsCode(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
return re:GetHandler():IsCode(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER)
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment