Commit 0905d81f authored by VanillaSalt's avatar VanillaSalt

fix

parent ec18fa74
...@@ -54,7 +54,7 @@ bool DataManager::LoadDB(const char* file) { ...@@ -54,7 +54,7 @@ bool DataManager::LoadDB(const char* file) {
if(len) { if(len) {
cs.desc[i - 14] = new wchar_t[len + 1]; cs.desc[i - 14] = new wchar_t[len + 1];
memcpy(cs.desc[i - 14], strBuffer, (len + 1)*sizeof(wchar_t)); memcpy(cs.desc[i - 14], strBuffer, (len + 1)*sizeof(wchar_t));
} else break; } else cs.desc[i - 14] = 0;
} }
_strings.insert(std::make_pair(cd.code, cs)); _strings.insert(std::make_pair(cd.code, cs));
} }
......
...@@ -326,6 +326,16 @@ int32 card::get_attack(uint8 swap) { ...@@ -326,6 +326,16 @@ int32 card::get_attack(uint8 swap) {
for (int32 i = 0; i < eset.count; ++i) { for (int32 i = 0; i < eset.count; ++i) {
switch (eset[i]->code) { switch (eset[i]->code) {
case EFFECT_UPDATE_ATTACK: case EFFECT_UPDATE_ATTACK:
if ((eset[i]->type & EFFECT_TYPE_SINGLE) && !(eset[i]->flag & EFFECT_FLAG_SINGLE_RANGE)) {
for (int32 j = 0; j < effects.count; ++j) {
if (effects[j]->flag & EFFECT_FLAG_REPEAT) {
base = effects[j]->get_value(this);
up = 0;
upc = 0;
temp.attack = base;
}
}
}
if (eset[i]->type & EFFECT_TYPE_SINGLE) if (eset[i]->type & EFFECT_TYPE_SINGLE)
up += eset[i]->get_value(this); up += eset[i]->get_value(this);
else else
...@@ -337,7 +347,7 @@ int32 card::get_attack(uint8 swap) { ...@@ -337,7 +347,7 @@ int32 card::get_attack(uint8 swap) {
up = 0; up = 0;
break; break;
case EFFECT_SET_ATTACK_FINAL: case EFFECT_SET_ATTACK_FINAL:
if (eset[i]->type & EFFECT_TYPE_SINGLE) { if ((eset[i]->type & EFFECT_TYPE_SINGLE) && !(eset[i]->flag & EFFECT_FLAG_SINGLE_RANGE)) {
base = eset[i]->get_value(this); base = eset[i]->get_value(this);
up = 0; up = 0;
upc = 0; upc = 0;
...@@ -349,20 +359,10 @@ int32 card::get_attack(uint8 swap) { ...@@ -349,20 +359,10 @@ int32 card::get_attack(uint8 swap) {
temp.attack = base + up + upc; temp.attack = base + up + upc;
else else
temp.attack = base - up - upc; temp.attack = base - up - upc;
for (int32 i = 0; i < effects.count; ++i) {
if (effects[i]->flag & EFFECT_FLAG_REPEAT) {
base = effects[i]->get_value(this);
up = 0;
upc = 0;
temp.attack = base;
}
}
} }
for (int32 i = 0; i < effects.count; ++i) { for (int32 i = 0; i < effects.count; ++i) {
if (!(effects[i]->flag & EFFECT_FLAG_REPEAT)) { final = effects[i]->get_value(this);
final = effects[i]->get_value(this); temp.attack = final;
temp.attack = final;
}
} }
if (final == -1) { if (final == -1) {
if (!rev) if (!rev)
...@@ -424,6 +424,16 @@ int32 card::get_defence(uint8 swap) { ...@@ -424,6 +424,16 @@ int32 card::get_defence(uint8 swap) {
for (int32 i = 0; i < eset.count; ++i) { for (int32 i = 0; i < eset.count; ++i) {
switch (eset[i]->code) { switch (eset[i]->code) {
case EFFECT_UPDATE_DEFENCE: case EFFECT_UPDATE_DEFENCE:
if ((eset[i]->type & EFFECT_TYPE_SINGLE) && !(eset[i]->flag & EFFECT_FLAG_SINGLE_RANGE)) {
for (int32 j = 0; j < effects.count; ++j) {
if (effects[j]->flag & EFFECT_FLAG_REPEAT) {
base = effects[j]->get_value(this);
up = 0;
upc = 0;
temp.defence = base;
}
}
}
if (eset[i]->type & EFFECT_TYPE_SINGLE) if (eset[i]->type & EFFECT_TYPE_SINGLE)
up += eset[i]->get_value(this); up += eset[i]->get_value(this);
else else
...@@ -435,7 +445,7 @@ int32 card::get_defence(uint8 swap) { ...@@ -435,7 +445,7 @@ int32 card::get_defence(uint8 swap) {
up = 0; up = 0;
break; break;
case EFFECT_SET_DEFENCE_FINAL: case EFFECT_SET_DEFENCE_FINAL:
if (eset[i]->type & EFFECT_TYPE_SINGLE) { if ((eset[i]->type & EFFECT_TYPE_SINGLE) && !(eset[i]->flag & EFFECT_FLAG_SINGLE_RANGE)) {
base = eset[i]->get_value(this); base = eset[i]->get_value(this);
up = 0; up = 0;
upc = 0; upc = 0;
...@@ -447,20 +457,10 @@ int32 card::get_defence(uint8 swap) { ...@@ -447,20 +457,10 @@ int32 card::get_defence(uint8 swap) {
temp.defence = base + up + upc; temp.defence = base + up + upc;
else else
temp.defence = base - up - upc; temp.defence = base - up - upc;
for (int32 i = 0; i < effects.count; ++i) {
if (effects[i]->flag & EFFECT_FLAG_REPEAT) {
base = effects[i]->get_value(this);
up = 0;
upc = 0;
temp.defence = base;
}
}
} }
for (int32 i = 0; i < effects.count; ++i) { for (int32 i = 0; i < effects.count; ++i) {
if (!(effects[i]->flag & EFFECT_FLAG_REPEAT)) { final = effects[i]->get_value(this);
final = effects[i]->get_value(this); temp.defence = final;
temp.defence = final;
}
} }
if (final == -1) { if (final == -1) {
if (!rev) if (!rev)
......
...@@ -40,6 +40,7 @@ function c10275411.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,6 +40,7 @@ function c10275411.activate(e,tp,eg,ep,ev,re,r,rp)
if tc:IsRelateToEffect(e) and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)~=0 then if tc:IsRelateToEffect(e) and Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)~=0 then
local g1=Duel.GetOverlayGroup(tp,0,1) local g1=Duel.GetOverlayGroup(tp,0,1)
if g1:GetCount()==0 then return end if g1:GetCount()==0 then return end
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(10275411,0)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(10275411,0))
local mg=g1:Select(tp,1,1,nil) local mg=g1:Select(tp,1,1,nil)
Duel.Overlay(tc,mg) Duel.Overlay(tc,mg)
......
...@@ -21,7 +21,7 @@ function c11047543.filter2(c,e,tp,lv) ...@@ -21,7 +21,7 @@ function c11047543.filter2(c,e,tp,lv)
and Duel.IsExistingMatchingCard(c11047543.spfilter,tp,LOCATION_EXTRA,0,1,nil,e,tp,lv+clv) and Duel.IsExistingMatchingCard(c11047543.spfilter,tp,LOCATION_EXTRA,0,1,nil,e,tp,lv+clv)
end end
function c11047543.spfilter(c,e,tp,lv) function c11047543.spfilter(c,e,tp,lv)
return c:IsRace(RACE_PSYCHO) and c:GetLevel()==lv and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsRace(RACE_PSYCHO) and c:IsType(TYPE_SYNCHRO) and c:GetLevel()==lv and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c11047543.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c11047543.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end if chkc then return false end
......
...@@ -14,7 +14,7 @@ function c13166204.filter(c,tp) ...@@ -14,7 +14,7 @@ function c13166204.filter(c,tp)
return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) and c:IsSetCard(0x54) return c:IsFaceup() and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) and c:IsSetCard(0x54)
end end
function c13166204.condition(e,tp,eg,ep,ev,re,r,rp) function c13166204.condition(e,tp,eg,ep,ev,re,r,rp)
return rp~=tp and re:IsActiveType(TYPE_MONSTER) and eg:IsExists(c13166204.filter,1,nil,tp) return rp~=tp and re:IsActiveType(TYPE_MONSTER) and eg:IsExists(c13166204.filter,1,nil,tp) and Duel.IsChainDisablable(ev)
end end
function c13166204.target(e,tp,eg,ep,ev,re,r,rp,chk) function c13166204.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -29,16 +29,16 @@ function c16304628.atkcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -29,16 +29,16 @@ function c16304628.atkcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION return bit.band(e:GetHandler():GetSummonType(),SUMMON_TYPE_FUSION)==SUMMON_TYPE_FUSION
end end
function c16304628.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c16304628.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:GetControler()~=tp and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return true end if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil) local g=Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_ATKCHANGE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_ATKCHANGE,g,g:GetCount(),0,0)
end end
function c16304628.atkop(e,tp,eg,ep,ev,re,r,rp) function c16304628.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc and tc:IsRelateToEffect(e) then if tc and tc:IsRelateToEffect(e) and tc:IsFaceup() then
local atk=tc:GetAttack() local atk=tc:GetAttack()
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -46,10 +46,11 @@ function c16304628.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -46,10 +46,11 @@ function c16304628.atkop(e,tp,eg,ep,ev,re,r,rp)
e1:SetValue(atk/2) e1:SetValue(atk/2)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END) e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) and c:IsFaceup() then
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_UPDATE_ATTACK) e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetValue(atk/2) e2:SetValue(atk/2)
e2:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END) e2:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END)
c:RegisterEffect(e2) c:RegisterEffect(e2)
......
...@@ -21,7 +21,7 @@ function c25435080.cfilter(c,tp) ...@@ -21,7 +21,7 @@ function c25435080.cfilter(c,tp)
return c:IsSetCard(0x33) and Duel.IsExistingTarget(c25435080.tfilter,tp,LOCATION_MZONE,0,1,c) return c:IsSetCard(0x33) and Duel.IsExistingTarget(c25435080.tfilter,tp,LOCATION_MZONE,0,1,c)
end end
function c25435080.tfilter(c) function c25435080.tfilter(c)
return c:IsFaceup() and c:IsSetCard(0x33) and c:IsType(TYPE_SYNCHRO) return c:IsFaceup() and c:IsType(TYPE_SYNCHRO)
end end
function c25435080.cost(e,tp,eg,ep,ev,re,r,rp) function c25435080.cost(e,tp,eg,ep,ev,re,r,rp)
e:SetLabel(1) e:SetLabel(1)
......
...@@ -16,7 +16,7 @@ function c26842483.initial_effect(c) ...@@ -16,7 +16,7 @@ function c26842483.initial_effect(c)
end end
function c26842483.condition(e,tp,eg,ep,ev,re,r,rp,chk) function c26842483.condition(e,tp,eg,ep,ev,re,r,rp,chk)
local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION) local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)
return ep~=tp and loc==LOCATION_MZONE and re:IsActiveType(TYPE_MONSTER) and Duel.IsChainDisablable(ev) return ep~=tp and loc==LOCATION_MZONE and re:IsActiveType(TYPE_MONSTER) and Duel.IsChainNegatable(ev)
and bit.band(re:GetHandler():GetSummonType(),SUMMON_TYPE_SPECIAL)~=0 and bit.band(re:GetHandler():GetSummonType(),SUMMON_TYPE_SPECIAL)~=0
end end
function c26842483.target(e,tp,eg,ep,ev,re,r,rp,chk) function c26842483.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -21,12 +21,13 @@ function c37675138.initial_effect(c) ...@@ -21,12 +21,13 @@ function c37675138.initial_effect(c)
end end
function c37675138.descon(e,tp,eg,ep,ev,re,r,rp) function c37675138.descon(e,tp,eg,ep,ev,re,r,rp)
return re:GetOwner():IsRace(RACE_ZOMBIE) and e:GetHandler():IsPreviousLocation(LOCATION_GRAVE) return re:GetOwner():IsRace(RACE_ZOMBIE) and e:GetHandler():IsPreviousLocation(LOCATION_GRAVE)
and e:GetHandler():GetPreviousControler()==tp
end end
function c37675138.desfilter(c) function c37675138.desfilter(c)
return c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP) return c:IsDestructable() and c:IsType(TYPE_SPELL+TYPE_TRAP)
end end
function c37675138.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c37675138.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and c37675138.desfilter(chkc) end if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and c37675138.desfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c37675138.desfilter,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(c37675138.desfilter,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c37675138.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,c37675138.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil)
......
...@@ -8,9 +8,11 @@ function c50260683.initial_effect(c) ...@@ -8,9 +8,11 @@ function c50260683.initial_effect(c)
e1:SetDescription(aux.Stringid(50260683,0)) e1:SetDescription(aux.Stringid(50260683,0))
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetHintTiming(TIMING_DAMAGE_STEP)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetCondition(c50260683.condition)
e1:SetCost(c50260683.cost) e1:SetCost(c50260683.cost)
e1:SetTarget(c50260683.target) e1:SetTarget(c50260683.target)
e1:SetOperation(c50260683.operation) e1:SetOperation(c50260683.operation)
...@@ -27,6 +29,9 @@ function c50260683.initial_effect(c) ...@@ -27,6 +29,9 @@ function c50260683.initial_effect(c)
e2:SetOperation(c50260683.desop) e2:SetOperation(c50260683.desop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c50260683.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentPhase()~=PHASE_DAMAGE or not Duel.IsDamageCalculated()
end
function c50260683.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c50260683.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
...@@ -19,7 +19,7 @@ function c51435705.shcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -19,7 +19,7 @@ function c51435705.shcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c51435705.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(c51435705.cfilter,tp,LOCATION_MZONE,0,1,nil)
end end
function c51435705.shcost(e,tp,eg,ep,ev,re,r,rp,chk) function c51435705.shcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() end if chk==0 then return e:GetHandler():IsDiscardable() and e:GetHandler():IsAbleToGraveAsCost() end
Duel.SendtoGrave(e:GetHandler(),REASON_DISCARD+REASON_COST) Duel.SendtoGrave(e:GetHandler(),REASON_DISCARD+REASON_COST)
end end
function c51435705.filter(c) function c51435705.filter(c)
......
...@@ -55,8 +55,7 @@ function c53347303.discon(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,8 +55,7 @@ function c53347303.discon(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return end
local loc,tg=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION,CHAININFO_TARGET_CARDS) local loc,tg=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION,CHAININFO_TARGET_CARDS)
if not tg or not tg:IsContains(c) then return false end if not tg or not tg:IsContains(c) then return false end
if (not Duel.IsChainNegatable(ev)) or loc==LOCATION_DECK then return false end return Duel.IsChainDisablable(ev) and loc~=LOCATION_DECK
return true
end end
function c53347303.distg(e,tp,eg,ep,ev,re,r,rp,chk) function c53347303.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -31,6 +31,11 @@ function c59048135.initial_effect(c) ...@@ -31,6 +31,11 @@ function c59048135.initial_effect(c)
ge1:SetCode(EVENT_SPSUMMON_SUCCESS) ge1:SetCode(EVENT_SPSUMMON_SUCCESS)
ge1:SetOperation(c59048135.checkop) ge1:SetOperation(c59048135.checkop)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
local ge2=Effect.CreateEffect(c)
ge2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge2:SetCode(EVENT_SUMMON_SUCCESS)
ge2:SetOperation(c59048135.checkop)
Duel.RegisterEffect(ge2,0)
end end
end end
function c59048135.checkop(e,tp,eg,ep,ev,re,r,rp) function c59048135.checkop(e,tp,eg,ep,ev,re,r,rp)
...@@ -67,6 +72,9 @@ function c59048135.thcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -67,6 +72,9 @@ function c59048135.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetTargetRange(1,0) e1:SetTargetRange(1,0)
e1:SetTarget(c59048135.splimit) e1:SetTarget(c59048135.splimit)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EFFECT_CANNOT_SUMMON)
Duel.RegisterEffect(e2,tp)
end end
function c59048135.splimit(e,c) function c59048135.splimit(e,c)
return not (c:IsRace(RACE_PSYCHO) and c:IsType(TYPE_XYZ)) and not c:IsSetCard(0x76) return not (c:IsRace(RACE_PSYCHO) and c:IsType(TYPE_XYZ)) and not c:IsSetCard(0x76)
......
...@@ -26,6 +26,9 @@ function c64605089.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -26,6 +26,9 @@ function c64605089.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
if Duel.GetAttacker():GetAttack()<e:GetHandler():GetDefence() then
Duel.SetOperationInfo(0,CATEGORY_DESTROY,Duel.GetAttacker(),1,0,0)
end
end end
function c64605089.operation(e,tp,eg,ep,ev,re,r,rp) function c64605089.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -25,7 +25,7 @@ function c77153811.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -25,7 +25,7 @@ function c77153811.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetDescription(aux.Stringid(77153811,0)) e1:SetDescription(aux.Stringid(77153811,0))
e1:SetProperty(EFFECT_FLAG_CLIENT_HINT) e1:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetRange(LOCATION_SZONE) e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e1:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e1:SetTarget(c77153811.distg) e1:SetTarget(c77153811.distg)
e1:SetCode(EFFECT_DISABLE) e1:SetCode(EFFECT_DISABLE)
......
...@@ -29,5 +29,7 @@ function c81816475.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -29,5 +29,7 @@ function c81816475.operation(e,tp,eg,ep,ev,re,r,rp)
local mg=g1:Select(tp,1,1,nil) local mg=g1:Select(tp,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(81816475,1)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(81816475,1))
local tc=g2:Select(tp,1,1,nil):GetFirst() local tc=g2:Select(tp,1,1,nil):GetFirst()
local oc=mg:GetFirst():GetOverlayTarget()
Duel.Overlay(tc,mg) Duel.Overlay(tc,mg)
Duel.RaiseSingleEvent(oc,EVENT_DETACH_MATERIAL,e,0,0,0,0)
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