Commit 05356fad authored by argon.sun's avatar argon.sun

fix

parent 908c02b5
......@@ -750,8 +750,10 @@ int32 scriptlib::card_register_effect(lua_State *L) {
duel* pduel = pcard->pduel;
if(peffect->owner == pduel->game_field->temp_card)
return 0;
if(!forced && pduel->game_field->core.reason_effect && !pcard->is_affect_by_effect(pduel->game_field->core.reason_effect))
if(!forced && pduel->game_field->core.reason_effect && !pcard->is_affect_by_effect(pduel->game_field->core.reason_effect)) {
pduel->game_field->core.reseted_effects.insert(peffect);
return 0;
}
int32 id;
if (peffect->handler)
id = -1;
......
......@@ -19,6 +19,7 @@ function c12607053.activate(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e2:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetTargetRange(LOCATION_MZONE,0)
e2:SetReset(RESET_PHASE+PHASE_END)
e2:SetValue(1)
......
......@@ -68,7 +68,7 @@ function c4694209.addc2(e,tp,eg,ep,ev,re,r,rp)
end
end
function c4694209.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetCounter(0x21)>0 end
if chk==0 then return not e:GetHandler():IsReason(REASON_RULE) and e:GetHandler():GetCounter(0x21)>0 end
return true
end
function c4694209.repop(e,tp,eg,ep,ev,re,r,rp,chk)
......
......@@ -33,7 +33,7 @@ function c48179393.initial_effect(c)
e4:SetRange(LOCATION_SZONE)
e4:SetCode(EFFECT_INDESTRUCTABLE_COUNT)
e4:SetCountLimit(1)
e4:SetValue(1)
e4:SetValue(c48179393.valcon)
c:RegisterEffect(e4)
--
local e5=Effect.CreateEffect(c)
......@@ -68,6 +68,9 @@ end
function c48179393.sumlimit(e,c,sump,sumtype,sumpos,targetp)
return c:IsLocation(LOCATION_EXTRA)
end
function c48179393.valcon(e,re,r,rp)
return bit.band(r,REASON_EFFECT)~=0
end
function c48179393.atkcon(e)
return Duel.IsExistingMatchingCard(Card.IsPosition,e:GetHandlerPlayer(),LOCATION_MZONE,0,2,nil,POS_FACEUP_ATTACK)
end
......
......@@ -43,8 +43,11 @@ function c67196946.op(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(67196946,1))
local sg=g:Select(tp,1,1,nil)
local tc=sg:GetFirst()
if tc:IsLocation(LOCATION_MZONE) then
Duel.HintSelection(sg)
end
Duel.ConfirmCards(1-tp,sg)
if tc:GetLocation()==LOCATION_HAND then Duel.ShuffleHand(tp) end
if tc:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(tp) end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_LEVEL)
......
......@@ -24,6 +24,7 @@ function c88789641.activate(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e2:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetTargetRange(LOCATION_MZONE,0)
e2:SetReset(RESET_PHASE+PHASE_END)
e2:SetValue(1)
......
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