Commit e1a93d09 authored by salix5's avatar salix5
parent e57b95dc
...@@ -98,7 +98,7 @@ function c11167052.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -98,7 +98,7 @@ function c11167052.thop(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.SendtoGrave(hg,REASON_EFFECT+REASON_DISCARD) local ct=Duel.SendtoGrave(hg,REASON_EFFECT+REASON_DISCARD)
if ct<=0 then return end if ct<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c11167052.thfilter),tp,LOCATION_GRAVE,0,ct,ct,nil) local g=Duel.SelectMatchingCard(tp,c11167052.thfilter,tp,LOCATION_GRAVE,0,ct,ct,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.BreakEffect() Duel.BreakEffect()
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
......
...@@ -11,6 +11,7 @@ function c12644061.initial_effect(c) ...@@ -11,6 +11,7 @@ function c12644061.initial_effect(c)
e2:SetRange(LOCATION_FZONE) e2:SetRange(LOCATION_FZONE)
e2:SetTargetRange(LOCATION_MZONE+LOCATION_GRAVE,LOCATION_MZONE+LOCATION_GRAVE) e2:SetTargetRange(LOCATION_MZONE+LOCATION_GRAVE,LOCATION_MZONE+LOCATION_GRAVE)
e2:SetCode(EFFECT_CHANGE_ATTRIBUTE) e2:SetCode(EFFECT_CHANGE_ATTRIBUTE)
e2:SetCondition(c12644061.condition)
e2:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x1034)) e2:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x1034))
e2:SetValue(ATTRIBUTE_DARK) e2:SetValue(ATTRIBUTE_DARK)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -39,6 +40,7 @@ function c12644061.initial_effect(c) ...@@ -39,6 +40,7 @@ function c12644061.initial_effect(c)
e5:SetRange(LOCATION_FZONE) e5:SetRange(LOCATION_FZONE)
e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e5:SetTargetRange(1,1) e5:SetTargetRange(1,1)
e5:SetCondition(c12644061.condition)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c12644061.discon(e,tp,eg,ep,ev,re,r,rp) function c12644061.discon(e,tp,eg,ep,ev,re,r,rp)
...@@ -59,6 +61,10 @@ function c12644061.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,6 +61,10 @@ function c12644061.disop(e,tp,eg,ep,ev,re,r,rp)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_BATTLE) e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_BATTLE)
tc:RegisterEffect(e2) tc:RegisterEffect(e2)
end end
function c12644061.condition(e)
local tp=e:GetHandlerPlayer()
return not Duel.IsPlayerAffectedByEffect(tp,EFFECT_NECRO_VALLEY)
end
function c12644061.damcon(e,tp,eg,ep,ev,re,r,rp) function c12644061.damcon(e,tp,eg,ep,ev,re,r,rp)
local a=Duel.GetAttacker() local a=Duel.GetAttacker()
local at=Duel.GetAttackTarget() local at=Duel.GetAttackTarget()
......
...@@ -19,9 +19,8 @@ function c16255442.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -19,9 +19,8 @@ function c16255442.target(e,tp,eg,ep,ev,re,r,rp,chk)
return hd>0 and Duel.IsExistingMatchingCard(c16255442.filter,tp,LOCATION_GRAVE,0,hd,nil) return hd>0 and Duel.IsExistingMatchingCard(c16255442.filter,tp,LOCATION_GRAVE,0,hd,nil)
end end
local sg=Duel.GetFieldGroup(tp,LOCATION_HAND,0) local sg=Duel.GetFieldGroup(tp,LOCATION_HAND,0)
local tg=Duel.GetMatchingGroup(c16255442.filter,tp,LOCATION_GRAVE,0,nil)
Duel.SetOperationInfo(0,CATEGORY_HANDES,sg,sg:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_HANDES,sg,sg:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,tg,sg:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,sg:GetCount(),tp,LOCATION_GRAVE)
end end
function c16255442.operation(e,tp,eg,ep,ev,re,r,rp) function c16255442.operation(e,tp,eg,ep,ev,re,r,rp)
local sg=Duel.GetFieldGroup(tp,LOCATION_HAND,0) local sg=Duel.GetFieldGroup(tp,LOCATION_HAND,0)
......
...@@ -69,6 +69,7 @@ function c18214905.atttg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -69,6 +69,7 @@ function c18214905.atttg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute()) local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute())
e:SetLabel(att) e:SetLabel(att)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,tp,LOCATION_GRAVE)
end end
function c18214905.attop(e,tp,eg,ep,ev,re,r,rp) function c18214905.attop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -67,6 +67,7 @@ function c19036557.atttg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -67,6 +67,7 @@ function c19036557.atttg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute()) local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute())
e:SetLabel(att) e:SetLabel(att)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,tp,LOCATION_GRAVE)
end end
function c19036557.attop(e,tp,eg,ep,ev,re,r,rp) function c19036557.attop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -90,6 +90,8 @@ function c3429238.filter(c) ...@@ -90,6 +90,8 @@ function c3429238.filter(c)
return c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end end
function c3429238.spop(e,tp,eg,ep,ev,re,r,rp) function c3429238.spop(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetMatchingGroupCount(c3429238.filter,tp,LOCATION_GRAVE,0,nil)
if ct>0 and Duel.IsPlayerAffectedByEffect(tp,EFFECT_NECRO_VALLEY) and Duel.IsChainDisablable(0) then return end
local c=e:GetHandler() local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end if not c:IsRelateToEffect(e) then return end
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then
......
...@@ -11,6 +11,7 @@ function c4064256.initial_effect(c) ...@@ -11,6 +11,7 @@ function c4064256.initial_effect(c)
e2:SetRange(LOCATION_FZONE) e2:SetRange(LOCATION_FZONE)
e2:SetTargetRange(LOCATION_MZONE+LOCATION_GRAVE,LOCATION_MZONE+LOCATION_GRAVE) e2:SetTargetRange(LOCATION_MZONE+LOCATION_GRAVE,LOCATION_MZONE+LOCATION_GRAVE)
e2:SetCode(EFFECT_CHANGE_RACE) e2:SetCode(EFFECT_CHANGE_RACE)
e2:SetCondition(c4064256.condition)
e2:SetValue(RACE_ZOMBIE) e2:SetValue(RACE_ZOMBIE)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--summon limit --summon limit
...@@ -32,8 +33,13 @@ function c4064256.initial_effect(c) ...@@ -32,8 +33,13 @@ function c4064256.initial_effect(c)
e5:SetRange(LOCATION_FZONE) e5:SetRange(LOCATION_FZONE)
e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e5:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e5:SetTargetRange(1,1) e5:SetTargetRange(1,1)
e5:SetCondition(c4064256.condition)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c4064256.sumlimit(e,c,tp,sumtp) function c4064256.sumlimit(e,c,tp,sumtp)
return bit.band(sumtp,SUMMON_TYPE_ADVANCE)==SUMMON_TYPE_ADVANCE and c:GetRace()~=RACE_ZOMBIE return bit.band(sumtp,SUMMON_TYPE_ADVANCE)==SUMMON_TYPE_ADVANCE and c:GetRace()~=RACE_ZOMBIE
end end
function c4064256.condition(e)
local tp=e:GetHandlerPlayer()
return not Duel.IsPlayerAffectedByEffect(tp,EFFECT_NECRO_VALLEY)
end
...@@ -70,6 +70,7 @@ function c45702014.atttg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -70,6 +70,7 @@ function c45702014.atttg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute()) local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute())
e:SetLabel(att) e:SetLabel(att)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,tp,LOCATION_GRAVE)
end end
function c45702014.attop(e,tp,eg,ep,ev,re,r,rp) function c45702014.attop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -68,6 +68,7 @@ function c46425662.atttg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -68,6 +68,7 @@ function c46425662.atttg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute()) local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute())
e:SetLabel(att) e:SetLabel(att)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,tp,LOCATION_GRAVE)
end end
function c46425662.attop(e,tp,eg,ep,ev,re,r,rp) function c46425662.attop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -66,6 +66,7 @@ function c72819261.atttg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -66,6 +66,7 @@ function c72819261.atttg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute()) local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute())
e:SetLabel(att) e:SetLabel(att)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,tp,LOCATION_GRAVE)
end end
function c72819261.attop(e,tp,eg,ep,ev,re,r,rp) function c72819261.attop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -70,6 +70,7 @@ function c83032858.atttg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -70,6 +70,7 @@ function c83032858.atttg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute()) local att=Duel.AnnounceAttribute(tp,1,0xff-e:GetHandler():GetAttribute())
e:SetLabel(att) e:SetLabel(att)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,e:GetHandler(),1,tp,LOCATION_GRAVE)
end end
function c83032858.attop(e,tp,eg,ep,ev,re,r,rp) function c83032858.attop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -620,7 +620,7 @@ CATEGORY_HANDES =0x80 --捨棄手牌效果 ...@@ -620,7 +620,7 @@ CATEGORY_HANDES =0x80 --捨棄手牌效果
CATEGORY_SUMMON =0x100 --含召唤的效果 CATEGORY_SUMMON =0x100 --含召唤的效果
CATEGORY_SPECIAL_SUMMON =0x200 --含特殊召唤的效果 CATEGORY_SPECIAL_SUMMON =0x200 --含特殊召唤的效果
CATEGORY_TOKEN =0x400 --含衍生物效果 CATEGORY_TOKEN =0x400 --含衍生物效果
CATEGORY_FLIP =0x800 --含翻转效果 CATEGORY_FLIP =0x800 --N/A
CATEGORY_POSITION =0x1000 --改变表示形式效果 CATEGORY_POSITION =0x1000 --改变表示形式效果
CATEGORY_CONTROL =0x2000 --改变控制权效果 CATEGORY_CONTROL =0x2000 --改变控制权效果
CATEGORY_DISABLE =0x4000 --使效果无效效果 CATEGORY_DISABLE =0x4000 --使效果无效效果
...@@ -635,7 +635,7 @@ CATEGORY_DEFCHANGE =0x400000 --改变防御效果 ...@@ -635,7 +635,7 @@ CATEGORY_DEFCHANGE =0x400000 --改变防御效果
CATEGORY_COUNTER =0x800000 --指示物效果 CATEGORY_COUNTER =0x800000 --指示物效果
CATEGORY_COIN =0x1000000 --硬币效果 CATEGORY_COIN =0x1000000 --硬币效果
CATEGORY_DICE =0x2000000 --骰子效果 CATEGORY_DICE =0x2000000 --骰子效果
CATEGORY_LEAVE_GRAVE =0x4000000 --离开墓地效果 CATEGORY_LEAVE_GRAVE =0x4000000 --涉及墓地的效果(王家長眠之谷)
CATEGORY_LVCHANGE =0x8000000 --改变等级效果 CATEGORY_LVCHANGE =0x8000000 --改变等级效果
CATEGORY_NEGATE =0x10000000 --使发动无效效果 CATEGORY_NEGATE =0x10000000 --使发动无效效果
CATEGORY_ANNOUNCE =0x20000000 --發動時宣言卡名的效果 CATEGORY_ANNOUNCE =0x20000000 --發動時宣言卡名的效果
......
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