Commit 17f26dfd authored by nekrozar's avatar nekrozar
parent fcd0ef7e
...@@ -4,7 +4,7 @@ function c3072808.initial_effect(c) ...@@ -4,7 +4,7 @@ function c3072808.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(3072808,0)) e1:SetDescription(aux.Stringid(3072808,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_BATTLE_DAMAGE) e1:SetCode(EVENT_BATTLE_DAMAGE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_GRAVE) e1:SetRange(LOCATION_GRAVE)
...@@ -22,10 +22,7 @@ function c3072808.filter(c,e,tp) ...@@ -22,10 +22,7 @@ function c3072808.filter(c,e,tp)
end end
function c3072808.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c3072808.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c3072808.filter(chkc,e,tp) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c3072808.filter(chkc,e,tp) end
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) if chk==0 then return true end
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false)
and Duel.IsExistingTarget(c3072808.filter,tp,LOCATION_GRAVE,0,1,e:GetHandler(),e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c3072808.filter,tp,LOCATION_GRAVE,0,1,1,e:GetHandler(),e,tp) local g=Duel.SelectTarget(tp,c3072808.filter,tp,LOCATION_GRAVE,0,1,1,e:GetHandler(),e,tp)
g:AddCard(e:GetHandler()) g:AddCard(e:GetHandler())
......
...@@ -2,18 +2,31 @@ ...@@ -2,18 +2,31 @@
function c53530069.initial_effect(c) function c53530069.initial_effect(c)
--recover --recover
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetDescription(aux.Stringid(53530069,0))
e1:SetCategory(CATEGORY_RECOVER)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EVENT_PHASE+PHASE_STANDBY) e1:SetCode(EVENT_PHASE+PHASE_STANDBY)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c53530069.condition) e1:SetCondition(c53530069.condition)
e1:SetTarget(c53530069.target)
e1:SetOperation(c53530069.operation) e1:SetOperation(c53530069.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c53530069.condition(e,tp,eg,ep,ev,re,r,rp) function c53530069.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==Duel.GetTurnPlayer() and e:GetHandler():IsAttackPos() return tp==Duel.GetTurnPlayer() and e:GetHandler():IsAttackPos()
end end
function c53530069.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1000)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,1000)
end
function c53530069.operation(e,tp,eg,ep,ev,re,r,rp) function c53530069.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,0,53530069) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Recover(tp,1000,REASON_EFFECT) local c=e:GetHandler()
if c:IsPosition(POS_FACEUP_ATTACK) and c:IsRelateToEffect(e) then
Duel.Recover(p,d,REASON_EFFECT)
end
end end
...@@ -2,18 +2,31 @@ ...@@ -2,18 +2,31 @@
function c90925163.initial_effect(c) function c90925163.initial_effect(c)
--recover --recover
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetDescription(aux.Stringid(90925163,0))
e1:SetCategory(CATEGORY_RECOVER)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EVENT_PHASE+PHASE_STANDBY) e1:SetCode(EVENT_PHASE+PHASE_STANDBY)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c90925163.condition) e1:SetCondition(c90925163.condition)
e1:SetTarget(c90925163.target)
e1:SetOperation(c90925163.operation) e1:SetOperation(c90925163.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function c90925163.condition(e,tp,eg,ep,ev,re,r,rp) function c90925163.condition(e,tp,eg,ep,ev,re,r,rp)
return tp==Duel.GetTurnPlayer() and e:GetHandler():IsDefensePos() return tp==Duel.GetTurnPlayer() and e:GetHandler():IsDefensePos()
end end
function c90925163.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1000)
Duel.SetOperationInfo(0,CATEGORY_RECOVER,nil,0,tp,1000)
end
function c90925163.operation(e,tp,eg,ep,ev,re,r,rp) function c90925163.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_CARD,0,90925163) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Recover(tp,1000,REASON_EFFECT) local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsPosition(POS_FACEUP_DEFENSE) then
Duel.Recover(p,d,REASON_EFFECT)
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