Commit 7dda468f authored by nekrozar's avatar nekrozar

fix & update Arcana Force

update:

https://github.com/Fluorohydride/ygopro-core/commit/0dd8162d1d5621b6bc6c50369c46560e7185b2c0
fix:
http://yugioh-wiki.net/index.php?%A1%D4%B8%F7%A4%CE%B7%EB%B3%A6%A1%D5

このカードによって表または裏の効果を決定した場合、それは「コイントスによって得た効果」ではないので《逆転する運命》や《アルカナコール》で効果を変更することはできない。
parent f8bb1d08
......@@ -24,10 +24,7 @@ end
function c23846921.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c23846921.arcanareg(c,res)
end
function c23846921.arcanareg(c,coin)
......
......@@ -24,10 +24,7 @@ end
function c34568403.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c34568403.arcanareg(c,res)
if res==0 then
Duel.GetControl(c,1-tp)
......
......@@ -24,10 +24,7 @@ end
function c35781051.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c35781051.arcanareg(c,res)
end
function c35781051.arcanareg(c,coin)
......
......@@ -10,7 +10,7 @@ function c36690018.initial_effect(c)
c:RegisterEffect(e1)
end
function c36690018.filter(c)
return c:GetFlagEffect(36690018)~=0
return c:GetFlagEffect(36690018)~=0 and c:GetFlagEffect(73206827)==0
end
function c36690018.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c36690018.filter(chkc) end
......
......@@ -68,10 +68,7 @@ end
function c5861892.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c5861892.arcanareg(c,res)
end
function c5861892.arcanareg(c,coin)
......
......@@ -52,10 +52,7 @@ end
function c60953118.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c60953118.arcanareg(c,res)
end
function c60953118.arcanareg(c,coin)
......
......@@ -24,10 +24,7 @@ end
function c61175706.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c61175706.arcanareg(c,res)
end
function c61175706.arcanareg(c,coin)
......
......@@ -39,10 +39,7 @@ end
function c62892347.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c62892347.arcanareg(c,res)
end
function c62892347.arcanareg(c,coin)
......
......@@ -68,10 +68,7 @@ end
function c69831560.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c69831560.arcanareg(c,res)
end
function c69831560.arcanareg(c,coin)
......
......@@ -17,16 +17,15 @@ function c73206827.initial_effect(c)
e2:SetTarget(c73206827.cointg)
e2:SetOperation(c73206827.coinop)
c:RegisterEffect(e2)
--
--coin replace
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(73206827)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_TOSS_COIN_REPLACE)
e3:SetRange(LOCATION_FZONE)
e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x5))
e3:SetCondition(c73206827.effectcon)
e3:SetOperation(c73206827.effectop)
c:RegisterEffect(e3)
--
--recover
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(73206827,1))
e4:SetCategory(CATEGORY_RECOVER)
......@@ -54,9 +53,19 @@ function c73206827.coinop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterFlagEffect(73206828,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_STANDBY+RESET_SELF_TURN,0,2)
end
end
function c73206827.effectcon(e)
function c73206827.effectcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:GetFlagEffect(73206828)==0 or c:IsHasEffect(EFFECT_CANNOT_DISABLE)
return (c:GetFlagEffect(73206828)==0 or c:IsHasEffect(EFFECT_CANNOT_DISABLE))
and rp==tp and re and re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsSetCard(0x5)
end
function c73206827.effectop(e,tp,eg,ep,ev,re,r,rp)
local res=0
for i=0,ev-1 do
local ac=Duel.AnnounceCoin(tp)
res=res+bit.lshift(1-ac,i*4)
end
re:GetHandler():RegisterFlagEffect(73206827,RESET_EVENT+RESETS_STANDARD,0,1)
return res
end
function c73206827.reccon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -24,10 +24,7 @@ end
function c8396952.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c8396952.arcanareg(c,res)
end
function c8396952.arcanareg(c,coin)
......
......@@ -24,10 +24,7 @@ end
function c97452817.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c97452817.arcanareg(c,res)
end
function c97452817.arcanareg(c,coin)
......
......@@ -24,10 +24,7 @@ end
function c97574404.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local res=0
if c:IsHasEffect(73206827) then
res=1-Duel.SelectOption(tp,60,61)
else res=Duel.TossCoin(tp,1) end
local res=Duel.TossCoin(tp,1)
c97574404.arcanareg(c,res)
end
function c97574404.arcanareg(c,coin)
......
......@@ -10,7 +10,7 @@ function c99189322.initial_effect(c)
c:RegisterEffect(e1)
end
function c99189322.filter(c)
return c:GetFlagEffect(36690018)~=0
return c:GetFlagEffect(36690018)~=0 and c:GetFlagEffect(73206827)==0
end
function c99189322.rfilter(c)
return c:IsSetCard(0x5) and c:IsAbleToRemove()
......
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