Commit 34e283ae authored by VanillaSalt's avatar VanillaSalt

fix

parent 793a6bbc
...@@ -2461,7 +2461,7 @@ int32 field::special_summon(uint16 step, effect * reason_effect, uint8 reason_pl ...@@ -2461,7 +2461,7 @@ int32 field::special_summon(uint16 step, effect * reason_effect, uint8 reason_pl
if(summontype && (*cit)->material_cards.size()) { if(summontype && (*cit)->material_cards.size()) {
int32 matreason = (summontype == SUMMON_TYPE_FUSION) ? REASON_FUSION : (summontype == SUMMON_TYPE_RITUAL) ? REASON_RITUAL : (summontype == SUMMON_TYPE_XYZ) ? REASON_XYZ : 0; int32 matreason = (summontype == SUMMON_TYPE_FUSION) ? REASON_FUSION : (summontype == SUMMON_TYPE_RITUAL) ? REASON_RITUAL : (summontype == SUMMON_TYPE_XYZ) ? REASON_XYZ : 0;
for(auto mit = (*cit)->material_cards.begin(); mit != (*cit)->material_cards.end(); ++mit) for(auto mit = (*cit)->material_cards.begin(); mit != (*cit)->material_cards.end(); ++mit)
raise_single_event(*mit, 0, EVENT_BE_MATERIAL, core.reason_effect, matreason, core.reason_player, (*cit)->summon_player, 0); raise_single_event(*mit, &targets->container, EVENT_BE_MATERIAL, core.reason_effect, matreason, core.reason_player, (*cit)->summon_player, 0);
raise_event(&((*cit)->material_cards), EVENT_BE_MATERIAL, core.reason_effect, matreason, core.reason_player, (*cit)->summon_player, 0); raise_event(&((*cit)->material_cards), EVENT_BE_MATERIAL, core.reason_effect, matreason, core.reason_player, (*cit)->summon_player, 0);
} }
} }
......
...@@ -18,7 +18,8 @@ function c30492798.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,7 +18,8 @@ function c30492798.condition(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_RITUAL return r==REASON_RITUAL
end end
function c30492798.operation(e,tp,eg,ep,ev,re,r,rp) function c30492798.operation(e,tp,eg,ep,ev,re,r,rp)
local rc=e:GetHandler():GetReasonCard() local rc=eg:GetFirst()
while rc do
if rc:GetFlagEffect(30492798)==0 then if rc:GetFlagEffect(30492798)==0 then
--immune --immune
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -32,6 +33,8 @@ function c30492798.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -32,6 +33,8 @@ function c30492798.operation(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
rc:RegisterFlagEffect(30492798,RESET_EVENT+0x1fe0000,0,1) rc:RegisterFlagEffect(30492798,RESET_EVENT+0x1fe0000,0,1)
end end
rc=eg:GetNext()
end
end end
function c30492798.efilter(e,te) function c30492798.efilter(e,te)
return te:IsActiveType(TYPE_TRAP) return te:IsActiveType(TYPE_TRAP)
......
...@@ -18,7 +18,8 @@ function c33145233.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,7 +18,8 @@ function c33145233.condition(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_RITUAL return r==REASON_RITUAL
end end
function c33145233.operation(e,tp,eg,ep,ev,re,r,rp) function c33145233.operation(e,tp,eg,ep,ev,re,r,rp)
local rc=e:GetHandler():GetReasonCard() local rc=eg:GetFirst()
while rc do
if rc:GetFlagEffect(33145233)==0 then if rc:GetFlagEffect(33145233)==0 then
--untargetable --untargetable
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -32,4 +33,6 @@ function c33145233.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -32,4 +33,6 @@ function c33145233.operation(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
rc:RegisterFlagEffect(33145233,RESET_EVENT+0x1fe0000,0,1) rc:RegisterFlagEffect(33145233,RESET_EVENT+0x1fe0000,0,1)
end end
rc=eg:GetNext()
end
end end
...@@ -18,7 +18,8 @@ function c34358408.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,7 +18,8 @@ function c34358408.condition(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_RITUAL return r==REASON_RITUAL
end end
function c34358408.operation(e,tp,eg,ep,ev,re,r,rp) function c34358408.operation(e,tp,eg,ep,ev,re,r,rp)
local rc=e:GetHandler():GetReasonCard() local rc=eg:GetFirst()
while rc do
if rc:GetFlagEffect(34358408)==0 then if rc:GetFlagEffect(34358408)==0 then
--draw --draw
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -31,6 +32,8 @@ function c34358408.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -31,6 +32,8 @@ function c34358408.operation(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
rc:RegisterFlagEffect(34358408,RESET_EVENT+0x1fe0000,0,1) rc:RegisterFlagEffect(34358408,RESET_EVENT+0x1fe0000,0,1)
end end
rc=eg:GetNext()
end
end end
function c34358408.drawop(e,tp,eg,ep,ev,re,r,rp) function c34358408.drawop(e,tp,eg,ep,ev,re,r,rp)
Duel.Draw(tp,1,REASON_EFFECT) Duel.Draw(tp,1,REASON_EFFECT)
......
...@@ -18,7 +18,8 @@ function c4141820.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,7 +18,8 @@ function c4141820.condition(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_RITUAL return r==REASON_RITUAL
end end
function c4141820.operation(e,tp,eg,ep,ev,re,r,rp) function c4141820.operation(e,tp,eg,ep,ev,re,r,rp)
local rc=e:GetHandler():GetReasonCard() local rc=eg:GetFirst()
while rc do
if rc:GetFlagEffect(4141820)==0 then if rc:GetFlagEffect(4141820)==0 then
--draw --draw
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -31,6 +32,8 @@ function c4141820.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -31,6 +32,8 @@ function c4141820.operation(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
rc:RegisterFlagEffect(4141820,RESET_EVENT+0x1fe0000,0,1) rc:RegisterFlagEffect(4141820,RESET_EVENT+0x1fe0000,0,1)
end end
rc=eg:GetNext()
end
end end
function c4141820.hdop(e,tp,eg,ep,ev,re,r,rp) function c4141820.hdop(e,tp,eg,ep,ev,re,r,rp)
Duel.DiscardHand(1-tp,nil,1,1,REASON_EFFECT+REASON_DISCARD) Duel.DiscardHand(1-tp,nil,1,1,REASON_EFFECT+REASON_DISCARD)
......
...@@ -18,7 +18,8 @@ function c77153811.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,7 +18,8 @@ function c77153811.condition(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_RITUAL return r==REASON_RITUAL
end end
function c77153811.operation(e,tp,eg,ep,ev,re,r,rp) function c77153811.operation(e,tp,eg,ep,ev,re,r,rp)
local rc=e:GetHandler():GetReasonCard() local rc=eg:GetFirst()
while rc do
if rc:GetFlagEffect(77153811)==0 then if rc:GetFlagEffect(77153811)==0 then
--cannot special summon --cannot special summon
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -40,6 +41,8 @@ function c77153811.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,6 +41,8 @@ function c77153811.operation(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e2,true) rc:RegisterEffect(e2,true)
rc:RegisterFlagEffect(77153811,RESET_EVENT+0x1fe0000,0,1) rc:RegisterFlagEffect(77153811,RESET_EVENT+0x1fe0000,0,1)
end end
rc=eg:GetNext()
end
end end
function c77153811.distg(e,c) function c77153811.distg(e,c)
return c:IsType(TYPE_SYNCHRO) return c:IsType(TYPE_SYNCHRO)
......
...@@ -18,7 +18,8 @@ function c8903700.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -18,7 +18,8 @@ function c8903700.condition(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_RITUAL return r==REASON_RITUAL
end end
function c8903700.operation(e,tp,eg,ep,ev,re,r,rp) function c8903700.operation(e,tp,eg,ep,ev,re,r,rp)
local rc=e:GetHandler():GetReasonCard() local rc=eg:GetFirst()
while rc do
if rc:GetFlagEffect(8903700)==0 then if rc:GetFlagEffect(8903700)==0 then
--cannot special summon --cannot special summon
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
...@@ -32,4 +33,6 @@ function c8903700.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -32,4 +33,6 @@ function c8903700.operation(e,tp,eg,ep,ev,re,r,rp)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
rc:RegisterFlagEffect(8903700,RESET_EVENT+0x1fe0000,0,1) rc:RegisterFlagEffect(8903700,RESET_EVENT+0x1fe0000,0,1)
end end
rc=eg:GetNext()
end
end 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