Commit c7dc6eb7 authored by Chrono-Genex's avatar Chrono-Genex Committed by GitHub

add Card.GetAttributeInGrave, Card.GetRaceInGrave (#1639)

parent 7b0dbdb8
...@@ -44,14 +44,16 @@ function c12644061.initial_effect(c) ...@@ -44,14 +44,16 @@ function c12644061.initial_effect(c)
e4:SetCost(c12644061.damcost) e4:SetCost(c12644061.damcost)
e4:SetOperation(c12644061.damop) e4:SetOperation(c12644061.damop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--12644061 chk --
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD) e5:SetType(EFFECT_TYPE_FIELD)
e5:SetCode(12644061) e5:SetCode(EFFECT_CHANGE_GRAVE_ATTRIBUTE)
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) e5:SetCondition(c12644061.condition)
e5:SetValue(ATTRIBUTE_DARK)
e5:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x1034))
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)
......
...@@ -26,14 +26,15 @@ function c4064256.initial_effect(c) ...@@ -26,14 +26,15 @@ function c4064256.initial_effect(c)
local e4=e3:Clone() local e4=e3:Clone()
e4:SetCode(EFFECT_CANNOT_MSET) e4:SetCode(EFFECT_CANNOT_MSET)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--4064256 chk --
local e5=Effect.CreateEffect(c) local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD) e5:SetType(EFFECT_TYPE_FIELD)
e5:SetCode(4064256) e5:SetCode(EFFECT_CHANGE_GRAVE_RACE)
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) e5:SetCondition(c4064256.condition)
e5:SetValue(RACE_ZOMBIE)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c4064256.sumlimit(e,c,tp,sumtp) function c4064256.sumlimit(e,c,tp,sumtp)
......
...@@ -18,12 +18,8 @@ function c5288597.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -18,12 +18,8 @@ function c5288597.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c5288597.cfilter(c,e,tp) function c5288597.cfilter(c,e,tp)
local lv=c:GetOriginalLevel() local lv=c:GetOriginalLevel()
local rc=nil local rc=c:GetRaceInGrave()
local att=nil local att=c:GetAttributeInGrave()
if Duel.IsPlayerAffectedByEffect(tp,4064256) then rc=RACE_ZOMBIE
else rc=c:GetOriginalRace() end
if Duel.IsPlayerAffectedByEffect(tp,12644061) and c:IsSetCard(0x1034) then att=ATTRIBUTE_DARK
else att=c:GetOriginalAttribute() end
return bit.band(c:GetOriginalType(),TYPE_MONSTER)~=0 and lv>0 and c:IsFaceup() and c:IsAbleToGraveAsCost() return bit.band(c:GetOriginalType(),TYPE_MONSTER)~=0 and lv>0 and c:IsFaceup() and c:IsAbleToGraveAsCost()
and Duel.IsExistingMatchingCard(c5288597.spfilter,tp,LOCATION_DECK,0,1,nil,lv+1,rc,att,e,tp) and Duel.IsExistingMatchingCard(c5288597.spfilter,tp,LOCATION_DECK,0,1,nil,lv+1,rc,att,e,tp)
end end
......
...@@ -565,6 +565,8 @@ EFFECT_MATERIAL_LIMIT =361 -- ...@@ -565,6 +565,8 @@ EFFECT_MATERIAL_LIMIT =361 --
EFFECT_SET_BATTLE_ATTACK =362 --战斗的伤害计算用设置的攻击力进行 EFFECT_SET_BATTLE_ATTACK =362 --战斗的伤害计算用设置的攻击力进行
EFFECT_SET_BATTLE_DEFENSE =363 --战斗的伤害计算用设置的守备力进行 EFFECT_SET_BATTLE_DEFENSE =363 --战斗的伤害计算用设置的守备力进行
EFFECT_OVERLAY_RITUAL_MATERIAL =364 --此卡的超量素材也能用于仪式召唤 EFFECT_OVERLAY_RITUAL_MATERIAL =364 --此卡的超量素材也能用于仪式召唤
EFFECT_CHANGE_GRAVE_ATTRIBUTE =365 --
EFFECT_CHANGE_GRAVE_RACE =366 --
--下面是诱发效果的诱发事件、时点 (如果是TYPE_SINGLE则自己发生以下事件后触发,如果TYPE_FIELD则场上任何卡发生以下事件都触发) --下面是诱发效果的诱发事件、时点 (如果是TYPE_SINGLE则自己发生以下事件后触发,如果TYPE_FIELD则场上任何卡发生以下事件都触发)
EVENT_STARTUP =1000 --N/A EVENT_STARTUP =1000 --N/A
......
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