Commit 8d49289e authored by argon.sun's avatar argon.sun

new effect

parent 4d8a8a11
......@@ -482,6 +482,18 @@ uint32 card::get_ritual_level(card* pcard) {
lev = get_level();
return lev;
}
uint32 card::is_xyz_level(card* pcard, uint32 lv) {
if(data.type & TYPE_XYZ)
return FALSE;
uint32 lev;
effect_set eset;
filter_effect(EFFECT_XYZ_LEVEL, &eset);
if(eset.count)
lev = eset[0]->get_value(pcard);
else
lev = get_level();
return ((lev & 0xffff) == lv) || ((lev >> 16) == lv);
}
uint32 card::get_attribute() {
if(!(current.location & (LOCATION_MZONE + LOCATION_GRAVE)))
return data.attribute;
......
......@@ -135,6 +135,7 @@ public:
uint32 get_rank();
uint32 get_synchro_level(card* pcard);
uint32 get_ritual_level(card* pcard);
uint32 is_xyz_level(card* pcard, uint32 lv);
uint32 get_attribute();
uint32 get_race();
int32 is_position(int32 pos);
......
......@@ -321,6 +321,7 @@ public:
#define EFFECT_CANNOT_BE_XYZ_MATERIAL 238
#define EFFECT_SYNCHRO_LEVEL 240
#define EFFECT_RITUAL_LEVEL 241
#define EFFECT_XYZ_LEVEL 242
#define EFFECT_EXTRA_RITUAL_MATERIAL 243
#define EFFECT_NONTUNER 244
#define EFFECT_OVERLAY_REMOVE_REPLACE 245
......
......@@ -26,6 +26,7 @@ static const struct luaL_Reg cardlib[] = {
{ "GetSynchroLevel", scriptlib::card_get_synchro_level },
{ "GetRitualLevel", scriptlib::card_get_ritual_level },
{ "GetOriginalLevel", scriptlib::card_get_origin_level },
{ "IsXyzLevel", scriptlib::card_is_xyz_level },
{ "GetAttribute", scriptlib::card_get_attribute },
{ "GetOriginalAttribute", scriptlib::card_get_origin_attribute },
{ "GetRace", scriptlib::card_get_race },
......
......@@ -96,6 +96,16 @@ int32 scriptlib::card_get_origin_level(lua_State *L) {
lua_pushinteger(L, pcard->data.level);
return 1;
}
int32 scriptlib::card_is_xyz_level(lua_State *L) {
check_param_count(L, 3);
check_param(L, PARAM_TYPE_CARD, 1);
check_param(L, PARAM_TYPE_CARD, 2);
card* pcard = *(card**) lua_touserdata(L, 1);
card* xyzcard = *(card**) lua_touserdata(L, 2);
uint32 lv = lua_tointeger(L, 3);
lua_pushboolean(L, pcard->is_xyz_level(xyzcard, lv));
return 1;
}
int32 scriptlib::card_get_attribute(lua_State *L) {
check_param_count(L, 1);
check_param(L, PARAM_TYPE_CARD, 1);
......
......@@ -28,6 +28,7 @@ public:
static int32 card_get_synchro_level(lua_State *L);
static int32 card_get_ritual_level(lua_State *L);
static int32 card_get_origin_level(lua_State *L);
static int32 card_is_xyz_level(lua_State *L);
static int32 card_get_attribute(lua_State *L);
static int32 card_get_origin_attribute(lua_State *L);
static int32 card_get_race(lua_State *L);
......
--マジマジ☆マジシャンギャル
function c10000030.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c10000030.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_SPELLCASTER),6),2)
c:EnableReviveLimit()
--effect
local e1=Effect.CreateEffect(c)
......@@ -26,9 +26,6 @@ function c10000030.initial_effect(c)
e2:SetOperation(c10000030.operation2)
c:RegisterEffect(e2)
end
function c10000030.xyzfilter(c)
return c:GetLevel()==6 and c:IsRace(RACE_SPELLCASTER)
end
function c10000030.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(10000030)==0
and e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST)
......
--ガチガチガンテツ
function c10002346.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,2),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,2),2)
c:EnableReviveLimit()
--atk,def
local e1=Effect.CreateEffect(c)
......
--No.10 白輝士イルミネーター
function c11411223.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--ガガガガンマン
function c12014404.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--effect
local e1=Effect.CreateEffect(c)
......
--ベビー·トラゴン
function c12533811.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,1),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,1),3)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--\Ӱ
function c1828513.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c1828513.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsSetCard,0x3d),4),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......@@ -18,9 +18,6 @@ function c1828513.initial_effect(c)
e1:SetOperation(c1828513.operation)
c:RegisterEffect(e1)
end
function c1828513.xyzfilter(c)
return c:GetLevel()==4 and c:IsSetCard(0x3d)
end
function c1828513.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--エヴォルカイザー・ソルデ
function c18511599.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c18511599.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_DINOSAUR),6),2)
c:EnableReviveLimit()
--indes
local e1=Effect.CreateEffect(c)
......@@ -27,9 +27,6 @@ end
function c18511599.indcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetOverlayCount()~=0
end
function c18511599.xyzfilter(c)
return c:GetLevel()==6 and c:IsRace(RACE_DINOSAUR)
end
function c18511599.filter(c,e,tp)
return c:IsControler(1-tp) and (not e or c:IsRelateToEffect(e))
end
......
--No.12 機甲忍者クリムゾン·シャドー
function c19333131.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--No.9 天蓋星ダイソン・スフィア
function c1992816.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,9),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,9),2)
c:EnableReviveLimit()
--negate attack
local e1=Effect.CreateEffect(c)
......
--セイクリッド・ビーハイブ
function c2091298.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c2091298.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsSetCard,0x53),4),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......@@ -18,9 +18,6 @@ function c2091298.initial_effect(c)
e1:SetOperation(c2091298.operation)
c:RegisterEffect(e1)
end
function c2091298.xyzfilter(c)
return c:GetLevel()==4 and c:IsSetCard(0x53)
end
function c2091298.condition(e,tp,eg,ep,ev,re,r,rp)
local phase=Duel.GetCurrentPhase()
if (phase~=PHASE_DAMAGE and phase~=PHASE_DAMAGE_CAL) or Duel.IsDamageCalculated() then return false end
......
--Abyss Dweller
function c21044178.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--atkup
local e1=Effect.CreateEffect(c)
......
--No.69 紋章神コート·オブ·アームズ
function c2407234.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--negate
local e1=Effect.CreateEffect(c)
......
--アステル・ドローン
function c24610207.initial_effect(c)
--xyzlv
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_XYZ_LEVEL)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetValue(c24610207.xyzlv)
c:RegisterEffect(e1)
--effect gain
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_BE_MATERIAL)
e2:SetCondition(c24610207.efcon)
e2:SetOperation(c24610207.efop)
c:RegisterEffect(e2)
end
function c24610207.xyzlv(e,c)
return 0x50000+e:GetHandler():GetLevel()
end
function c24610207.efcon(e,tp,eg,ep,ev,re,r,rp)
return r==REASON_XYZ
end
function c24610207.efop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rc=c:GetReasonCard()
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(24610207,0))
e1:SetCategory(CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c24610207.drcon)
e1:SetTarget(c24610207.drtg)
e1:SetOperation(c24610207.drop)
e1:SetReset(RESET_EVENT+0x1fe0000)
rc:RegisterEffect(e1)
if not rc:IsType(TYPE_EFFECT) then
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CHANGE_TYPE)
e2:SetValue(TYPE_MONSTER+TYPE_EFFECT+TYPE_XYZ)
e2:SetReset(RESET_EVENT+0x1fe0000)
rc:RegisterEffect(e2)
end
end
function c24610207.drcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetSummonType()==SUMMON_TYPE_XYZ
end
function c24610207.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function c24610207.drop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Draw(p,d,REASON_EFFECT)
end
--交響魔人マエストローク
function c25341652.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--pos
local e1=Effect.CreateEffect(c)
......
--甲虫装機 エクサスタッグ
function c26211048.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c26211048.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_INSECT),5),2)
c:EnableReviveLimit()
--equip
local e1=Effect.CreateEffect(c)
......@@ -16,9 +16,6 @@ function c26211048.initial_effect(c)
e1:SetOperation(c26211048.eqop)
c:RegisterEffect(e1)
end
function c26211048.xyzfilter(c)
return c:IsRace(RACE_INSECT) and c:GetLevel()==5
end
function c26211048.eqcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--セイクリッド・オメガ
function c26329679.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c26329679.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_LIGHT),4),2)
c:EnableReviveLimit()
--immune
local e1=Effect.CreateEffect(c)
......@@ -14,9 +14,6 @@ function c26329679.initial_effect(c)
e1:SetOperation(c26329679.operation)
c:RegisterEffect(e1)
end
function c26329679.xyzfilter(c)
return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_LIGHT)
end
function c26329679.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--弦魔人ムズムズリズム
function c26563200.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--聖刻龍王-アトゥムス
function c27337596.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c27337596.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_DRAGON),6),2)
c:EnableReviveLimit()
--spsummon
local e1=Effect.CreateEffect(c)
......@@ -15,9 +15,6 @@ function c27337596.initial_effect(c)
e1:SetOperation(c27337596.spop)
c:RegisterEffect(e1)
end
function c27337596.xyzfilter(c)
return c:IsRace(RACE_DRAGON) and c:GetLevel()==6
end
function c27337596.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetAttackAnnouncedCount()==0
and e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
......
--ダイガスタ·フェニクス
function c2766877.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,2),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,2),2)
--spsummon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(2766877,0))
......
--フォトン・バタフライ・アサシン
function c28150174.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--pos&atk
local e1=Effect.CreateEffect(c)
......
--妖精王 アルヴェルド
function c28290705.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c28290705.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,0xffff-ATTRIBUTE_EARTH),4),2)
c:EnableReviveLimit()
--addown
local e1=Effect.CreateEffect(c)
......@@ -22,9 +22,6 @@ function c28290705.adcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c28290705.filter(c)
return c:IsFaceup() and c:IsAttribute(0xffff-ATTRIBUTE_EARTH)
end
function c28290705.adtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c28290705.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
end
......
--ギアギガント X
function c28912357.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c28912357.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE),4),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......@@ -26,9 +26,6 @@ function c28912357.initial_effect(c)
e2:SetOperation(c28912357.spop)
c:RegisterEffect(e2)
end
function c28912357.xyzfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_MACHINE)
end
function c28912357.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--重機王ドボク·ザーク
function c29515122.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),3)
c:EnableReviveLimit()
--destroy
local e1=Effect.CreateEffect(c)
......
--No.61 ヴォルカザウルス
function c29669359.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--始祖の守護者ティラス
function c31386180.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),2)
c:EnableReviveLimit()
--indestructable by effect
local e1=Effect.CreateEffect(c)
......
--No.34 電算機獣テラ·バイト
function c32003338.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),3)
c:EnableReviveLimit()
--control
local e1=Effect.CreateEffect(c)
......
--ラヴァルバル·チェイン
function c34086406.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--to grave
local e1=Effect.CreateEffect(c)
......
--ヴェルズ·ナイトメア
function c359563.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c359563.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_DARK),4),2)
c:EnableReviveLimit()
--pos
local e1=Effect.CreateEffect(c)
......@@ -15,9 +15,6 @@ function c359563.initial_effect(c)
e1:SetOperation(c359563.operation)
c:RegisterEffect(e1)
end
function c359563.xyzfilter(c)
return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_DARK)
end
function c359563.filter(c,e,tp)
return c:IsFaceup() and c:IsControler(1-tp) and (not e or c:IsRelateToEffect(e))
end
......
--ヴェルズ·バハムート
function c36757171.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c36757171.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsSetCard,0xa),4),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......@@ -16,9 +16,6 @@ function c36757171.initial_effect(c)
e1:SetOperation(c36757171.operation)
c:RegisterEffect(e1)
end
function c36757171.xyzfilter(c)
return c:IsSetCard(0xa) and c:GetLevel()==4
end
function c36757171.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--炎星皇-チョウライオ
function c37057743.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c37057743.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_FIRE),3),2)
c:EnableReviveLimit()
--salvage
local e1=Effect.CreateEffect(c)
......@@ -16,9 +16,6 @@ function c37057743.initial_effect(c)
e1:SetOperation(c37057743.thop)
c:RegisterEffect(e1)
end
function c37057743.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_FIRE) and c:GetLevel()==3
end
function c37057743.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--クイーンマドルチェ・ティアラミス
function c37164373.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c37164373.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsSetCard,0x71),4),2)
c:EnableReviveLimit()
--todeck
local e1=Effect.CreateEffect(c)
......@@ -16,9 +16,6 @@ function c37164373.initial_effect(c)
e1:SetOperation(c37164373.operation)
c:RegisterEffect(e1)
end
function c37164373.xyzfilter(c)
return c:IsSetCard(0x71) and c:GetLevel()==4
end
function c37164373.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--インヴェルズ·ローチ
function c37926346.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--disable spsummon
local e1=Effect.CreateEffect(c)
......
--ヴェルズ・ウロボロス
function c38273745.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--tohand
local e1=Effect.CreateEffect(c)
......
--セイクリッド・トレミスM7
function c38495396.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,6),2,c38495396.ovfilter,aux.Stringid(38495396,1),2,c38495396.xyzop)
c:EnableReviveLimit()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_EXTRA)
e1:SetCondition(c38495396.xyzcon)
e1:SetOperation(c38495396.xyzop)
e1:SetValue(SUMMON_TYPE_XYZ)
c:RegisterEffect(e1)
--to hand
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(38495396,0))
......@@ -24,38 +16,11 @@ function c38495396.initial_effect(c)
e2:SetOperation(c38495396.thop)
c:RegisterEffect(e2)
end
function c38495396.xyzfilter(c)
return c:GetLevel()==6
end
function c38495396.ovfilter(c)
return c:IsFaceup() and c:IsSetCard(0x53) and c:GetCode()~=38495396 and c:IsType(TYPE_XYZ)
end
function c38495396.xyzcon(e,c)
if c==nil then return true end
local ft=Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)
if ft<=-2 then return false end
if ft>-1 and Duel.IsExistingMatchingCard(c38495396.ovfilter,c:GetControler(),LOCATION_MZONE,0,1,nil) then return true end
local g=Duel.GetXyzMaterial(c)
return g:IsExists(c38495396.xyzfilter,2,nil)
end
function c38495396.xyzop(e,tp,eg,ep,ev,re,r,rp,c)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local g=Duel.GetXyzMaterial(c)
local b1=ft>-2 and g:IsExists(c38495396.xyzfilter,2,nil)
local b2=ft>-1 and Duel.IsExistingMatchingCard(c38495396.ovfilter,tp,LOCATION_MZONE,0,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
if (b1 and b2 and Duel.SelectYesNo(tp,aux.Stringid(38495396,1))) or ((not b1) and b2) then
local mg=Duel.SelectMatchingCard(tp,c38495396.ovfilter,tp,LOCATION_MZONE,0,1,1,nil)
local mg2=mg:GetFirst():GetOverlayGroup()
Duel.Overlay(c,mg2)
Duel.Overlay(c,mg)
c:SetMaterial(mg)
c:RegisterFlagEffect(38495396,RESET_EVENT+0xfe0000+RESET_PHASE+PHASE_END,0,1)
else
local mg=g:FilterSelect(tp,c38495396.xyzfilter,2,2,nil)
Duel.Overlay(c,mg)
c:SetMaterial(mg)
end
function c38495396.xyzop(e,tp)
e:GetHandler():RegisterFlagEffect(38495396,RESET_EVENT+0xfe0000+RESET_PHASE+PHASE_END,0,1)
end
function c38495396.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
......
--No.33 先史遺産-超兵器マシュ=マック
function c39139935.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--超銀河眼の光子龍
function c39272762.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,8),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,8),3)
c:EnableReviveLimit()
--negate
local e1=Effect.CreateEffect(c)
......
--ラヴァルバル·イグニス
function c3989465.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--ヴァイロン·ディシグマ
function c39987164.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--equip
local e1=Effect.CreateEffect(c)
......
--エヴォルカイザー·ドルカ
function c42752141.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c42752141.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_DINOSAUR),4),2)
c:EnableReviveLimit()
--negate activate
local e1=Effect.CreateEffect(c)
......@@ -17,9 +17,6 @@ function c42752141.initial_effect(c)
e1:SetOperation(c42752141.operation)
c:RegisterEffect(e1)
end
function c42752141.xyzfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_DINOSAUR)
end
function c42752141.condition(e,tp,eg,ep,ev,re,r,rp,chk)
return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED)
and re:IsActiveType(TYPE_MONSTER) and Duel.IsChainNegatable(ev)
......
--バハムート·シャーク
function c440556.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c440556.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_WATER),4),2)
c:EnableReviveLimit()
--spsummon
local e1=Effect.CreateEffect(c)
......@@ -15,9 +15,6 @@ function c440556.initial_effect(c)
e1:SetOperation(c440556.spop)
c:RegisterEffect(e1)
end
function c440556.xyzfilter(c)
return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_WATER)
end
function c440556.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--M.X-セイバー インヴォーカー
function c4423206.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--spsummon
local e1=Effect.CreateEffect(c)
......
--甲虫装機 エクサビートル
function c44505297.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,6),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,6),2)
c:EnableReviveLimit()
--equip
local e1=Effect.CreateEffect(c)
......
--No.8 紋章王ゲノム・ヘリター
function c47387961.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c47387961.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsSetCard,0x76),4),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......@@ -15,9 +15,6 @@ function c47387961.initial_effect(c)
e1:SetOperation(c47387961.operation)
c:RegisterEffect(e1)
end
function c47387961.xyzfilter(c)
return c:IsSetCard(0x76) and c:GetLevel()==4
end
function c47387961.filter(c)
return c:IsFaceup() and c:IsType(TYPE_XYZ)
end
......
--グレンザウルス
function c47506081.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--damage
local e1=Effect.CreateEffect(c)
......
--セイクリッド·ヒアデス
function c47579719.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c47579719.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_LIGHT),3),2)
c:EnableReviveLimit()
--pos change
local e1=Effect.CreateEffect(c)
......@@ -15,9 +15,6 @@ function c47579719.initial_effect(c)
e1:SetOperation(c47579719.operation)
c:RegisterEffect(e1)
end
function c47579719.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:GetLevel()==3
end
function c47579719.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--No.20 蟻岩土ブリリアント
function c47805931.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--H-C ガーンデーヴァ
function c48009503.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c48009503.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_WARRIOR),4),2)
c:EnableReviveLimit()
--destroy
local e1=Effect.CreateEffect(c)
......@@ -16,9 +16,6 @@ function c48009503.initial_effect(c)
e1:SetOperation(c48009503.operation)
c:RegisterEffect(e1)
end
function c48009503.xyzfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_WARRIOR)
end
function c48009503.filter(c,e,tp)
return c:IsFaceup() and c:IsControler(1-tp) and c:IsLevelBelow(4) and (not e or c:IsRelateToEffect(e))
end
......
--No.83 ギャラクシー·クィーン
function c48928529.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,1),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,1),3)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
......@@ -2,7 +2,7 @@
function c48995978.initial_effect(c)
c:EnableCounterPermit(0x302b)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,8),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,8),3)
c:EnableReviveLimit()
--counter
local e1=Effect.CreateEffect(c)
......
......@@ -2,7 +2,7 @@
function c49221191.initial_effect(c)
--xyz summon
c:EnableReviveLimit()
aux.AddXyzProcedure(c,c49221191.xyzfilter,4,c49221191.ovfilter,aux.Stringid(49221191,0))
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_WATER),4),4,c49221191.ovfilter,aux.Stringid(49221191,0))
--atk/def
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(49221191,1))
......@@ -18,9 +18,6 @@ function c49221191.initial_effect(c)
e1:SetOperation(c49221191.operation)
c:RegisterEffect(e1)
end
function c49221191.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_WATER) and c:GetLevel()==4
end
function c49221191.ovfilter(c)
return c:IsFaceup() and c:IsCode(65676461)
end
......
--潜航母艦エアロ·シャーク
function c5014629.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--damage
local e1=Effect.CreateEffect(c)
......
--No.50 ブラック・コーン号
function c51735257.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--send to grave
local e1=Effect.CreateEffect(c)
......
--太鼓魔人テンテンテンポ
function c52558805.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--atkchange
local e1=Effect.CreateEffect(c)
......
--No.16 色の支配者ショック·ルーラー
function c54719828.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--ジュラック・インパクト
function c5479217.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(c5479217.condition)
e1:SetTarget(c5479217.target)
e1:SetOperation(c5479217.activate)
c:RegisterEffect(e1)
end
function c5479217.cfilter(c)
return c:IsFaceup() and c:IsAttackAbove(2500) and c:IsRace(RACE_DINOSAUR)
end
function c5479217.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c5479217.cfilter,tp,LOCATION_MZONE,0,1,nil)
end
function c5479217.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
end
function c5479217.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsDestructable,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,e:GetHandler())
Duel.Destroy(g,REASON_EFFECT)
end
--No.19 フリーザードン
function c55067058.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),2)
c:EnableReviveLimit()
--remove overlay replace
local e1=Effect.CreateEffect(c)
......
--No.96 ブラック·ミスト
function c55727845.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,2),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,2),3)
c:EnableReviveLimit()
--atk u/d
local e1=Effect.CreateEffect(c)
......
--No.56 ゴールドラット
function c55935416.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,1),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,1),3)
c:EnableReviveLimit()
--damage
local e1=Effect.CreateEffect(c)
......
......@@ -2,7 +2,7 @@
function c56840427.initial_effect(c)
--xyz summon
c:EnableReviveLimit()
aux.AddXyzProcedure(c,c56840427.xyzfilter,3,c56840427.ovfilter,aux.Stringid(56840427,1))
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_LIGHT),4),3,c56840427.ovfilter,aux.Stringid(56840427,1))
--attack up
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_ATKCHANGE)
......@@ -14,9 +14,6 @@ function c56840427.initial_effect(c)
e1:SetOperation(c56840427.operation)
c:RegisterEffect(e1)
end
function c56840427.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:GetLevel()==4
end
function c56840427.ovfilter(c)
return c:IsFaceup() and c:IsCode(84013237)
end
......
--超弩級砲塔列車グスタフ·マックス
function c56910167.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,10),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,10),2)
c:EnableReviveLimit()
--damage
local e1=Effect.CreateEffect(c)
......
--Giant Soldier of Steel
function c57043117.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c57043117.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_ROCK),3),2)
c:EnableReviveLimit()
--immune
local e1=Effect.CreateEffect(c)
......@@ -25,9 +25,6 @@ function c57043117.initial_effect(c)
e2:SetOperation(c57043117.operation)
c:RegisterEffect(e2)
end
function c57043117.xyzfilter(c)
return c:GetLevel()==3 and c:IsRace(RACE_ROCK)
end
function c57043117.efilter(e,te)
return te:IsActiveType(TYPE_MONSTER)
end
......
--ダイガスタ·エメラル
function c581014.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--ret&draw
local e1=Effect.CreateEffect(c)
......
--水精鱗-アビストリーテ
function c59170782.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),3)
c:EnableReviveLimit()
--change target
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(59170782,0))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c59170782.tgcon1)
e1:SetCost(c59170782.tgcost)
e1:SetOperation(c59170782.tgop1)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(59170782,0))
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_ATTACK_ANNOUNCE)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(c59170782.tgcon2)
e2:SetCost(c59170782.tgcost)
e2:SetOperation(c59170782.tgop2)
c:RegisterEffect(e2)
--spsummon
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(59170782,1))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_TO_GRAVE)
e3:SetCondition(c59170782.spcon)
e3:SetTarget(c59170782.sptg)
e3:SetOperation(c59170782.spop)
c:RegisterEffect(e3)
end
function c59170782.tgcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c59170782.tgcon1(e,tp,eg,ep,ev,re,r,rp)
if not re:IsActiveType(TYPE_SPELL+TYPE_TRAP) or not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end
local g=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS)
if not g or g:GetCount()~=1 then return false end
local tc=g:GetFirst()
local c=e:GetHandler()
if tc==c or tc:GetControler()~=tp or tc:IsFacedown() or not tc:IsLocation(LOCATION_MZONE) or not tc:IsSetCard(0x74) then return false end
local tf=re:GetTarget()
local res,ceg,cep,cev,cre,cr,crp=Duel.CheckEvent(re:GetCode(),true)
return tf(re,rp,ceg,cep,cev,cre,cr,crp,0,c)
end
function c59170782.tgop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then
local g=Group.CreateGroup()
g:AddCard(c)
Duel.ChangeTargetCard(ev,g)
end
end
function c59170782.tgcon2(e,tp,eg,ep,ev,re,r,rp)
if tp==Duel.GetTurnPlayer() then return false end
local ag=eg:GetFirst():GetAttackableTarget()
return ag:IsContains(e:GetHandler())
end
function c59170782.tgop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
Duel.ChangeAttackTarget(c)
end
end
function c59170782.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsReason(REASON_DESTROY)
end
function c59170782.spfilter(c,e,tp)
return c:IsSetCard(0x74) and c:GetCode()~=59170782 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c59170782.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chk:IsLocation(LOCATION_GRAVE) and c59170782.spfilter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c59170782.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c59170782.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function c59170782.spop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
--巨星のミラ
function c60181553.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,1),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,1),3)
c:EnableReviveLimit()
--destroy replace
local e1=Effect.CreateEffect(c)
......
--H-C エクスカリバー
function c60645181.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c60645181.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_WARRIOR),4),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......@@ -14,9 +14,6 @@ function c60645181.initial_effect(c)
e1:SetOperation(c60645181.operation)
c:RegisterEffect(e1)
end
function c60645181.xyzfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_WARRIOR)
end
function c60645181.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,2,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,2,2,REASON_COST)
......
--輝光子パラディオス
function c61344030.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c61344030.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_LIGHT),4),2)
c:EnableReviveLimit()
--negate
local e1=Effect.CreateEffect(c)
......@@ -26,9 +26,6 @@ function c61344030.initial_effect(c)
e2:SetOperation(c61344030.drop)
c:RegisterEffect(e2)
end
function c61344030.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:GetLevel()==4
end
function c61344030.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,2,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,2,2,REASON_COST)
......
--聖刻神龍-エネアード
function c64332231.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,8),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,8),2)
c:EnableReviveLimit()
--destroy
local e1=Effect.CreateEffect(c)
......
--No.25 重装光学撮影機フォーカス・フォース
function c64554883.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,6),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,6),2)
c:EnableReviveLimit()
--disable
local e1=Effect.CreateEffect(c)
......
--ソードブレイカー
function c64689404.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,6),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,6),2)
c:EnableReviveLimit()
--equip
local e1=Effect.CreateEffect(c)
......
--アルケミック・マジシャン
function c65301952.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c65301952.xyzfilter,3)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_SPELLCASTER),4),3)
c:EnableReviveLimit()
--atkup
local e1=Effect.CreateEffect(c)
......@@ -24,9 +24,6 @@ function c65301952.initial_effect(c)
e2:SetOperation(c65301952.setop)
c:RegisterEffect(e2)
end
function c65301952.xyzfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_SPELLCASTER)
end
function c65301952.atkval(e,c)
return Duel.GetMatchingGroupCount(Card.IsType,c:GetControler(),LOCATION_GRAVE,0,nil,TYPE_SPELL)*200
end
......
--No.32 海咬龍シャーク・ドレイク
function c65676461.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--chain attack
local e1=Effect.CreateEffect(c)
......
--ヴェルズ・タナトス
function c65884091.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c65884091.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_DARK),4),2)
c:EnableReviveLimit()
--immune
local e1=Effect.CreateEffect(c)
......@@ -14,9 +14,6 @@ function c65884091.initial_effect(c)
e1:SetOperation(c65884091.operation)
c:RegisterEffect(e1)
end
function c65884091.xyzfilter(c)
return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_DARK)
end
function c65884091.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--ブリキの大公
function c66506689.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--tohand
local e1=Effect.CreateEffect(c)
......
--超次元ロボ ギャラクシー・デストロイヤー
function c66523544.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,10),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,10),3)
c:EnableReviveLimit()
--damage
local e1=Effect.CreateEffect(c)
......
--発条機甲ゼンマイスター
function c68597372.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--atk
local e1=Effect.CreateEffect(c)
......
--カチコチドラゴン
function c69069911.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
--chain attack
local e1=Effect.CreateEffect(c)
......
--No.17 リバイス·ドラゴン
function c69610924.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--サンダーエンド·ドラゴン
function c698785.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c698785.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsType,TYPE_NORMAL),8),2)
c:EnableReviveLimit()
--negate activate
local e1=Effect.CreateEffect(c)
......@@ -15,9 +15,6 @@ function c698785.initial_effect(c)
e1:SetOperation(c698785.operation)
c:RegisterEffect(e1)
end
function c698785.xyzfilter(c)
return c:GetLevel()==8 and c:IsType(TYPE_NORMAL)
end
function c698785.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--ジェムナイト·パール
function c71594310.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
c:EnableReviveLimit()
end
--No.22 不乱健
function c73445448.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c73445448.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_DARK),8),2)
c:EnableReviveLimit()
--spsummon limit
local e1=Effect.CreateEffect(c)
......@@ -24,9 +24,6 @@ function c73445448.initial_effect(c)
e2:SetOperation(c73445448.operation)
c:RegisterEffect(e2)
end
function c73445448.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_DARK) and c:GetLevel()==8
end
function c73445448.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST)
and Duel.IsExistingMatchingCard(Card.IsAbleToGraveAsCost,tp,LOCATION_HAND,0,1,nil) end
......
--スノーダスト・ジャイアント
function c73659078.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c73659078.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_WATER),4),2)
c:EnableReviveLimit()
--counter
local e1=Effect.CreateEffect(c)
......@@ -22,9 +22,6 @@ function c73659078.initial_effect(c)
e2:SetValue(c73659078.atkval)
c:RegisterEffect(e2)
end
function c73659078.xyzfilter(c)
return c:GetLevel()==4 and c:IsAttribute(ATTRIBUTE_WATER)
end
function c73659078.cfilter(c)
return c:IsAttribute(ATTRIBUTE_WATER) and not c:IsPublic()
end
......
--セイクリッド·プレアデス
function c73964868.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c73964868.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_LIGHT),5),2)
c:EnableReviveLimit()
--to hand
local e1=Effect.CreateEffect(c)
......@@ -18,9 +18,6 @@ function c73964868.initial_effect(c)
e1:SetOperation(c73964868.thop)
c:RegisterEffect(e1)
end
function c73964868.xyzfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:GetLevel()==5
end
function c73964868.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--エヴォルカイザー·ラギア
function c74294676.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c74294676.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_DINOSAUR),4),2)
c:EnableReviveLimit()
--negate activate
local e1=Effect.CreateEffect(c)
......@@ -33,9 +33,6 @@ function c74294676.initial_effect(c)
e3:SetCode(EVENT_SPSUMMON)
c:RegisterEffect(e3)
end
function c74294676.xyzfilter(c)
return c:GetLevel()==4 and c:IsRace(RACE_DINOSAUR)
end
function c74294676.condition1(e,tp,eg,ep,ev,re,r,rp,chk)
return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED)
and re:IsHasType(EFFECT_TYPE_ACTIVATE) and Duel.IsChainNegatable(ev)
......
--水精鱗-ガイオアビス
function c74371660.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c74371660.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_WATER),7),2)
c:EnableReviveLimit()
--atklimit
local e1=Effect.CreateEffect(c)
......@@ -25,9 +25,6 @@ function c74371660.initial_effect(c)
e2:SetOperation(c74371660.operation)
c:RegisterEffect(e2)
end
function c74371660.xyzfilter(c)
return c:GetLevel()==7 and c:IsAttribute(ATTRIBUTE_WATER)
end
function c74371660.dscon(e)
return e:GetHandler():GetOverlayCount()~=0
end
......
--ブラック·レイ·ランサー
function c74416224.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c74416224.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsAttribute,ATTRIBUTE_WATER),3),2)
c:EnableReviveLimit()
--disable
local e1=Effect.CreateEffect(c)
......@@ -16,9 +16,6 @@ function c74416224.initial_effect(c)
e1:SetOperation(c74416224.operation)
c:RegisterEffect(e1)
end
function c74416224.xyzfilter(c)
return c:GetLevel()==3 and c:IsAttribute(ATTRIBUTE_WATER)
end
function c74416224.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
--H-C クサナギ
function c74593218.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c74593218.xyzfilter,3)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_WARRIOR),4),3)
c:EnableReviveLimit()
--negate
local e1=Effect.CreateEffect(c)
......@@ -18,9 +18,6 @@ function c74593218.initial_effect(c)
e1:SetOperation(c74593218.negop)
c:RegisterEffect(e1)
end
function c74593218.xyzfilter(c)
return c:IsRace(RACE_WARRIOR) and c:GetLevel()==4
end
function c74593218.negcon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED)
and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_TRAP) and Duel.IsChainNegatable(ev)
......
--No.40 ギミック・パペット-ヘブンズ・ストリングス
function c75433814.initial_effect(c)
--synchro summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,8),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,8),2)
c:EnableReviveLimit()
--counter
local e1=Effect.CreateEffect(c)
......
--隻眼のスキル・ゲイナー
function c75620895.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),3)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),3)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--イビリチュア·メロウガイスト
function c76372778.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,4),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,4),2)
--to deck
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(76372778,0))
......
--魔導皇聖 トリス
function c770365.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,c770365.xyzfilter,2)
aux.AddXyzProcedure(c,aux.XyzFilterFunctionF(c,aux.FilterBoolFunction(Card.IsRace,RACE_SPELLCASTER),5),2)
c:EnableReviveLimit()
--atklimit
local e1=Effect.CreateEffect(c)
......@@ -22,9 +22,6 @@ function c770365.initial_effect(c)
e2:SetOperation(c770365.operation)
c:RegisterEffect(e2)
end
function c770365.xyzfilter(c)
return c:GetLevel()==5 and c:IsRace(RACE_SPELLCASTER)
end
function c770365.atkval(e,c)
return Duel.GetOverlayCount(c:GetControler(),1,0)*300
end
......
--発条装攻ゼンマイオー
function c77334267.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,5),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,5),2)
c:EnableReviveLimit()
--salvage
local e1=Effect.CreateEffect(c)
......
--発条機雷ゼンマイン
function c78156759.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--destroy replace
local e1=Effect.CreateEffect(c)
......
--No.11 ビッグ·アイ
function c80117527.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,7),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,7),2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
......
--発条空母ゼンマイティ
function c81122844.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,aux.FilterEqualFunction(Card.GetLevel,3),2)
aux.AddXyzProcedure(c,aux.XyzFilterFunction(c,3),2)
c:EnableReviveLimit()
--spsummon
local e1=Effect.CreateEffect(c)
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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