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