Halo Tamu, Selamat datang di Yugioh Forum Indonesia |
|
| [Tutorial] YGOpro Scripting Card (Create now!) | |
| Pengirim | Message |
---|
| Subyek: [Tutorial] YGOpro Scripting Card (Create now!) Thu Jun 20, 2013 3:19 pm | |
| DAFTAR ISII. Basa-Basi II. Warning III. Tools IV. Custom Card (Make your own!) V. About Database VI. Scriptinga.Easy part (editing Known Script) b.Medium to Hard (Combine 2 effect, Create new effect) I. Basa-BasiYosh! Selamat datang di thread yang mungkin agak kurang menarik ini . Kali ini saya akan membahas tentang bagaimana kita bisa membuat kartu kita sendiri (Custom card) di Ygopro. Seems impossible? bisa kok kalo kita coba.. yang penting sabar dan pantang menyerah okay? II. WarningSelalu ingat rule ini : selalu bikin backup ke ygopro milikmu (jika ada yg crash ts tidak bertanggung jawab ), trus kalo mau coba2 scripting, bikin folder sendiri yang isinya Copy dari ygopromu sekarang. III. ToolsSebelom kita mulai marilah kita bersama-sama berdoa agar di beri kelancaran.. eh.. download toolsnya dulu ya . sebenarnya gak wajib, tapi untuk memudahkan agan agar bisa mudah scriptingnya dan editingnya. ada 4 Tools utama yang sangat membantu dalam scripting ini 1.Lua Edit 2010 2.Sqlite Expert Personal 3. MSE Cardmaker 4. Devpro CardManagerSudah di download semuanya? yak lanjut next step IV.Custom Card (Make your own!)Amunisi pertama! keluarkan MSE dan Imajinasi anda! hehe.. ane akuin ini adalah part yang paling "fun" soalnya imajinasi anda akan sangat bermain disini. kayaknya yang ini gak butuh tutorial ye.. - example:
V.About DatabaseYep.. kartu custom anda sudah jadi? move to next step! Masukin kartu itu ke database.. manual bisa sih.. dibuka pake Sqlite expert.. tapi ada cara yang lebih mudah! lewat Devpro CardManager! Ingat! naroh Programmnya di Folder Ygopro Utama/percobaan anda ya.. jangan terpisah.. ntar gak bisa work lagi. Di sini cukup mudah.. tinggal masukin aja data yang anda inginkan (sesuai dengan kartu custom anda) masukin pic.. selese dah.. udah gitu aja.. Ehm.. Kalo mau masukin Archtype yg baru tinggal buka folder Asset, open setname, masukin dah kode archtype agan (example : 0x99 Splash Genus) ok? en kalo bisa kodenya jgn deket2 sama punyaknya si percii, ntar di overwrite lagi di updetan selanjutnya. Kalo agan2 bikin normal monster, selamat tutorial ini berakhir disini.. tapi kalo mau bikin efek monster segera Siapkan diri anda ke tantangan gereget berikutnya yaitu : SCRRIIPPTTIINNGG! VI.ScriptingScripting is Simple, nyecript kartu emang simpel tapi butuh ketelitian dan kerjakeras (plus sedikit logika ). lets the war begin!! (?) a. Sedikit pengenalan tentang scriptjika anda perhatikan dalam folder ygopro anda ada folder yang bernama "script". jika dibuka script-script kartu buatan si percii pasti berhamburan keluar saking banyaknya, nah.. disitulah agan akan naruh script bikinan agan. kita ambil contoh si nispachi dari karakuri.. - efek nispachi wrote:
This card must attack if able. When this face-up Attack Position card is selected as an attack target, change it to Defense Position. When this card is Normal or Special Summoned, select 1 monster on the field and change its battle position.
yep dia punya 3 efek 1.Dia hrus nyerang jika memungkinkan 2.Dia ganti posisi ke DEF kalo diserang past posisi ATK 3.Dia kalo di summon bisa ganti posisi 1 monster lawan Scriptnya jadi kayak gini - Quote :
--カラクリ参謀 弐四八 function c66625883.initial_effect(c) --must attack local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_MUST_ATTACK) c:RegisterEffect(e1) local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_FIELD) e2:SetCode(EFFECT_CANNOT_EP) e2:SetRange(LOCATION_MZONE) e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e2:SetTargetRange(1,0) e2:SetCondition(c66625883.becon) c:RegisterEffect(e2) --to defence local e3=Effect.CreateEffect(c) e3:SetDescription(aux.Stringid(66625883,0)) e3:SetCategory(CATEGORY_POSITION) e3:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE) e3:SetCode(EVENT_BE_BATTLE_TARGET) e3:SetCondition(c66625883.poscon) e3:SetOperation(c66625883.posop) c:RegisterEffect(e3) --pos local e4=Effect.CreateEffect(c) e4:SetDescription(aux.Stringid(66625883,1)) e4:SetCategory(CATEGORY_POSITION) e4:SetProperty(EFFECT_FLAG_CARD_TARGET) e4:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE) e4:SetCode(EVENT_SUMMON_SUCCESS) e4:SetTarget(c66625883.tg) e4:SetOperation(c66625883.op) c:RegisterEffect(e4) local e5=e4:Clone() e5:SetCode(EVENT_SPSUMMON_SUCCESS) c:RegisterEffect(e5) end function c66625883.becon(e) return e:GetHandler():IsAttackable() end function c66625883.poscon(e,tp,eg,ep,ev,re,r,rp) return e:GetHandler():IsAttackPos() end function c66625883.posop(e,tp,eg,ep,ev,re,r,rp) local c=e:GetHandler() if c:IsFaceup() and c:IsRelateToEffect(e) then Duel.ChangePosition(c,POS_FACEUP_DEFENCE) end end function c66625883.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) if chkc then return chkc:IsLocation(LOCATION_MZONE) end if chk==0 then return true end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0) end function c66625883.op(e,tp,eg,ep,ev,re,r,rp) local tc=Duel.GetFirstTarget() if tc:IsRelateToEffect(e) then Duel.ChangePosition(tc,POS_FACEUP_DEFENCE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK) end end
give thanks to percii/github udah di kasih garis ijo2 buat bedain setiap efek dari monster. ok, segitu aja pengenalannya.. next is step by step a.easy Mari kita coba yang mudah dulu.. kita modify efeknya "Mystic Tomato" 1. Bikin Lua baru caranya di luaedit klik file>>new>>file>>lua 2.Copas efeknya dari "Mystic Tomato" code : 83011277 - Quote :
--special summon local e1=Effect.CreateEffect(c) e1:SetDescription(aux.Stringid(83011277,0)) e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetCode(EVENT_BATTLE_DESTROYED) e1:SetCondition(c83011277.condition) e1:SetTarget(c83011277.target) e1:SetOperation(c83011277.operation) c:RegisterEffect(e1) end function c83011277.condition(e,tp,eg,ep,ev,re,r,rp) return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE) end function c83011277.filter(c,e,tp) return c:IsAttackBelow(1500) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end function c83011277.target(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c83011277.filter,tp,LOCATION_DECK,0,1,nil,e,tp) end Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) end function c83011277.operation(e,tp,eg,ep,ev,re,r,rp) if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) local g=Duel.SelectMatchingCard(tp,c83011277.filter,tp,LOCATION_DECK,0,1,1,nil,e,tp) if g:GetCount()>0 then Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_ATTACK) end end
3.Editing Sesuai kebutuhan Katakanlah saya akan bikin si Mistik Tomato gak special summon monster dark tapi special summon kartu dari archtype Ally Of Justice. jadi yang perlu kita ganti bagian - Quote :
function c83011277.filter(c,e,tp) return c:IsAttackBelow(1500) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
jadi - Quote :
function c83011277.filter(c,e,tp) return c:IsAttackBelow(1500) and c:IsSetCard(0x1) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Dan taraa! Ketika mistik tomato ancur gara2 battle dia hanya bisa ss AOJ bukan monster DARK. itu tadi tutor buat 1 efek yang ngegabungin 2 efek ato lebih ada dibawah nih b.Medium to Hardb1. Pertama bikin new file di luacaranya di luaedit klik file>>new>>file>>lua script easy enough.. b2. Kasih identitas ke Scriptnya - Quote :
--Splash Genus - Altham function c13500026.initial_effect(c)
ane jelasin.. yang baris pertama itu cuma nama.. gak ngaruh sebenernya.. cuma sebagai penanda.. sebelum kasih nama jangan lupa kasih "--" biar jadi ijo , maksudnya agar nanti nggak kecampur sama script intinya. untuk baris yang kedua.. itu bisa dibilang induk dari script.. isinya kode(password : angka di pojok kiri bawah kartu ygo/ angka kesukaan anda) done? next! b3. Tentukan efek dan cari kartu yang bersangkutanefek dari kartu ane tu - Quote :
When this card is Normal Summoned, select 1 monster on the field and change its battle position. Once per turn, you can banish 1 "Splash Genus" Monster in your graveyard; Special summon 1 "Splash Genus - Altham" from your deck. Negate its effect, and destroy it during the End Phase.
Dia punya 2 efek 1.Kalo di Normal Summon bisa ganti posisi 1 monster 2.Bisa Summon Copy dari dirinya di dek, tapi efek di negate dan hancur pada end phase susah? iya :Dwkwkwk.. dulu saya aja setres mikir ini.. hehehe tapi jangan takut toh akhirnya bisa. So, Efek pertama bisa dikopi dari si nispachi, tetapi pake pengecualian.. cuma kalo di normal summon saja.. jadinya.. - Quote :
--pos local e1=Effect.CreateEffect(c) e1:SetDescription(aux.Stringid(13500026,1)) e1:SetCategory(CATEGORY_POSITION) e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE) e1:SetCode(EVENT_SUMMON_SUCCESS) e1:SetTarget(c13500026.tg) e1:SetOperation(c13500026.op) c:RegisterEffect(e1) end function c13500026.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) if chkc then return chkc:IsLocation(LOCATION_MZONE) end if chk==0 then return true end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0) end function c13500026.op(e,tp,eg,ep,ev,re,r,rp) local tc=Duel.GetFirstTarget() if tc:IsRelateToEffect(e) then Duel.ChangePosition(tc,POS_FACEUP_DEFENCE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK) end end
penjelasan basic : e1:SetDescription(aux.Stringid(13500026,1)) : Deskripsi dari efek itu sendiri, 13500026 adalah kode kartu, 1 adalah tempat terjadinya efek tersebut (biasanya variabel 0,1,2) e1:SetCategory(CATEGORY_POSITION) : Kategori efek e1:SetProperty(EFFECT_FLAG_CARD_TARGET) : Yang di butuhkan dalam efek tsb e1:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE) : Tipe Efek e1:SetCode(EVENT_SUMMON_SUCCESS) : "Kode" dari efek itu e1:SetTarget(c13500026.tg) : Target dari efek e1:SetOperation(c13500026.op) : Operasi (cara kerja) efek tsb c:RegisterEffect(e1) : Register--> masukin efeknya Kalo masih belom jelas tentang tipe kode,property dan kategori. di folder script buka yang bernama constant.lua. Note : selalu ingat kalau anda menulis suatu operasi/ target for example : " c13500026.op" pastikan kalo dibagian bawah ada fungsi (function) yang mendeskripsikan efek tsb example : function c13500026.op(e,tp,eg,ep,ev,re,r,rp) local tc=Duel.GetFirstTarget() if tc:IsRelateToEffect(e) then Duel.ChangePosition(tc,POS_FACEUP_DEFENCE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK) end end Ok.. efek yang pertama jadi.. bingung? lanjutin aja deh. trus untuk efek yang kedua, dia bisa special summon copynya di dek dgn banish 1 monster "splash genus". hmm.. monster apa ya.. so pasti "Dark Creator". kita lihat scriptnya - Quote :
--ダーク·クリエイター function c92719314.initial_effect(c) c:EnableReviveLimit() --special summon local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_FIELD) e1:SetCode(EFFECT_SPSUMMON_PROC) e1:SetProperty(EFFECT_FLAG_UNCOPYABLE) e1:SetRange(LOCATION_HAND) e1:SetCondition(c92719314.spcon) c:RegisterEffect(e1) --SpecialSummon local e2=Effect.CreateEffect(c) e2:SetDescription(aux.Stringid(92719314,0)) e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetType(EFFECT_TYPE_IGNITION) e2:SetCountLimit(1) e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetRange(LOCATION_MZONE) e2:SetCost(c92719314.cost) e2:SetTarget(c92719314.target) e2:SetOperation(c92719314.operation) c:RegisterEffect(e2) end function c92719314.spcon(e,c) if c==nil then return true end return Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0 and Duel.GetFieldGroupCount(c:GetControler(),LOCATION_MZONE,0)==0 and Duel.IsExistingMatchingCard(Card.IsAttribute,c:GetControler(),LOCATION_GRAVE,0,5,nil,ATTRIBUTE_DARK) end function c92719314.costfilter(c,e,tp) return c:IsAttribute(ATTRIBUTE_DARK) and c:IsAbleToRemoveAsCost() and Duel.IsExistingTarget(c92719314.tgfilter,tp,LOCATION_GRAVE,0,1,c,e,tp) end function c92719314.tgfilter(c,e,tp) return c:IsAttribute(ATTRIBUTE_DARK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end function c92719314.cost(e,tp,eg,ep,ev,re,r,rp,chk) e:SetLabel(1) return true end function c92719314.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c92719314.tgfilter(chkc,e,tp) end if chk==0 then if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return false end if e:GetLabel()==1 then e:SetLabel(0) return Duel.IsExistingMatchingCard(c92719314.costfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) else return Duel.IsExistingTarget(c92719314.tgfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end end if e:GetLabel()==1 then Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) local cg=Duel.SelectMatchingCard(tp,c92719314.costfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) Duel.Remove(cg,POS_FACEUP,REASON_COST) e:SetLabel(0) end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) local g=Duel.SelectTarget(tp,c92719314.tgfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) end function c92719314.operation(e,tp,eg,ep,ev,re,r,rp) if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end local tc=Duel.GetFirstTarget() if tc and tc:IsRelateToEffect(e) then Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) end end
phew.. banyak bgt.. kita kopi efeknya yang special summon dari grave (efek 2).. jadi gini kalo di convert ke altham - Quote :
--SpecialSummon local e2=Effect.CreateEffect(c) e2:SetDescription(aux.Stringid(13500026,0)) e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetType(EFFECT_TYPE_IGNITION) e2:SetCountLimit(1) e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetRange(LOCATION_MZONE) e2:SetCost(c13500026.cost) e2:SetTarget(c13500026.target) e2:SetOperation(c13500026.operation) c:RegisterEffect(e2) end function c13500026.costfilter(c,e,tp) return c:IsSetCard(0x99) and c:IsAbleToRemoveAsCost() and Duel.IsExistingTarget(c13500026.tgfilter,tp,LOCATION_DECK,0,1,c,e,tp) end function c13500026.tgfilter(c,e,tp) return c:IsCode(13500026) and c:IsCanBeSpecialSummoned(e,0,tp,true,false) end function c13500026.cost(e,tp,eg,ep,ev,re,r,rp,chk) e:SetLabel(1) return true end function c13500026.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) if chkc then return chkc:IsLocation(LOCATION_DECK) and chkc:IsControler(tp) and c1350006.tgfilter(chkc,e,tp) end if chk==0 then if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return false end if e:GetLabel()==1 then e:SetLabel(0) return Duel.IsExistingMatchingCard(c13500026.costfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) else return Duel.IsExistingTarget(c13500026.tgfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end end if e:GetLabel()==1 then Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) local cg=Duel.SelectMatchingCard(tp,c13500026.costfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) Duel.Remove(cg,POS_FACEUP,REASON_COST) e:SetLabel(0) end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) local g=Duel.SelectTarget(tp,c13500026.tgfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) end function c13500026.operation(e,tp,eg,ep,ev,re,r,rp) if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end local tc=Duel.GetFirstTarget() if tc and tc:IsRelateToEffect(e) then Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP) end end
Bisa kita lihat perbandingannya.. ane cuma ngrubah.. Cost dan target dari Creator ke altham. semula cost dari Dark creator adalah banish atribute Dark c:IsAttribute(ATTRIBUTE_DARK) menjadi kartu archtype splash genus c: IsSetCard(0x99). sama dengan targetnya.. ane merubah dari atribute Dark c:IsAttribute(ATTRIBUTE_DARK) menjadi kloningan altham c:IsCode(13500026)Jadi bisa disimpulkan kalo c: IsATTRIBUTE = elemen monster tsb, SetCard = Archtype monster tsb, dan Code = Identitas single card (identitas altham 13500026, creator 92719314 dsb atau bisa juga disebut password). selebihnya silakan liat constant.lua di folder script anda masing-masing tg adalah target dan cost adalah cost efek tsb slese? belom! masih ada satu efek lagi.. kloningan altham efeknya di negate dan hancur pada end phase. Kartu yang pas buat di copy tuh.. "Iron call" bener gak? jadinya.. - Quote :
function c13500026.operation(e,tp,eg,ep,ev,re,r,rp) if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end local c=e:GetHandler() local tc=Duel.GetFirstTarget() if tc:IsRelateToEffect(e) and Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP) then local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_DISABLE) e1:SetReset(RESET_EVENT+0x1fe0000) tc:RegisterEffect(e1,true) local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_SINGLE) e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetReset(RESET_EVENT+0x1fe0000) tc:RegisterEffect(e2,true) local e3=Effect.CreateEffect(c) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetRange(LOCATION_MZONE) e3:SetCode(EVENT_PHASE+PHASE_END) e3:SetOperation(c13500026.desop) e3:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END) e3:SetCountLimit(1) tc:RegisterEffect(e3) Duel.SpecialSummonComplete() end end function c13500026.desop(e,tp,eg,ep,ev,re,r,rp) Duel.Destroy(e:GetHandler(),REASON_EFFECT) end
Fyuh.. intinya sih sama aja.. cuma yang ini efeknya "diselipin" di operation.. Finally kalo disatukan.. - Quote :
--Splash Genus - Altham function c13500026.initial_effect(c) --pos local e1=Effect.CreateEffect(c) e1:SetDescription(aux.Stringid(13500026,1)) e1:SetCategory(CATEGORY_POSITION) e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE) e1:SetCode(EVENT_SUMMON_SUCCESS) e1:SetTarget(c13500026.tg) e1:SetOperation(c13500026.op) c:RegisterEffect(e1) --SpecialSummon local e2=Effect.CreateEffect(c) e2:SetDescription(aux.Stringid(13500026,0)) e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetType(EFFECT_TYPE_IGNITION) e2:SetCountLimit(1) e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetRange(LOCATION_MZONE) e2:SetCost(c13500026.cost) e2:SetTarget(c13500026.target) e2:SetOperation(c13500026.operation) c:RegisterEffect(e2) end function c13500026.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) if chkc then return chkc:IsLocation(LOCATION_MZONE) end if chk==0 then return true end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET) local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil) Duel.SetOperationInfo(0,CATEGORY_POSITION,g,1,0,0) end function c13500026.op(e,tp,eg,ep,ev,re,r,rp) local tc=Duel.GetFirstTarget() if tc:IsRelateToEffect(e) then Duel.ChangePosition(tc,POS_FACEUP_DEFENCE,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK,POS_FACEUP_ATTACK) end end function c13500026.costfilter(c,e,tp) return c:IsSetCard(0x99) and c:IsAbleToRemoveAsCost() and Duel.IsExistingTarget(c13500026.tgfilter,tp,LOCATION_DECK,0,1,c,e,tp) end function c13500026.tgfilter(c,e,tp) return c:IsCode(13500026) and c:IsCanBeSpecialSummoned(e,0,tp,true,false) end function c13500026.cost(e,tp,eg,ep,ev,re,r,rp,chk) e:SetLabel(1) return true end function c13500026.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) if chkc then return chkc:IsLocation(LOCATION_DECK) and chkc:IsControler(tp) and c1350006.tgfilter(chkc,e,tp) end if chk==0 then if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return false end if e:GetLabel()==1 then e:SetLabel(0) return Duel.IsExistingMatchingCard(c13500026.costfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) else return Duel.IsExistingTarget(c13500026.tgfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end end if e:GetLabel()==1 then Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) local cg=Duel.SelectMatchingCard(tp,c13500026.costfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) Duel.Remove(cg,POS_FACEUP,REASON_COST) e:SetLabel(0) end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) local g=Duel.SelectTarget(tp,c13500026.tgfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0) end function c13500026.operation(e,tp,eg,ep,ev,re,r,rp) if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end local c=e:GetHandler() local tc=Duel.GetFirstTarget() if tc:IsRelateToEffect(e) and Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP) then local e1=Effect.CreateEffect(c) e1:SetType(EFFECT_TYPE_SINGLE) e1:SetCode(EFFECT_DISABLE) e1:SetReset(RESET_EVENT+0x1fe0000) tc:RegisterEffect(e1,true) local e2=Effect.CreateEffect(c) e2:SetType(EFFECT_TYPE_SINGLE) e2:SetCode(EFFECT_DISABLE_EFFECT) e2:SetReset(RESET_EVENT+0x1fe0000) tc:RegisterEffect(e2,true) local e3=Effect.CreateEffect(c) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetRange(LOCATION_MZONE) e3:SetCode(EVENT_PHASE+PHASE_END) e3:SetOperation(c13500026.desop) e3:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_END) e3:SetCountLimit(1) tc:RegisterEffect(e3) Duel.SpecialSummonComplete() end end function c13500026.desop(e,tp,eg,ep,ev,re,r,rp) Duel.Destroy(e:GetHandler(),REASON_EFFECT) end
Wew.. selese dah tutorial ane, btw itu tadi tutorial tingkat medium (nge-gabungin 2 efek ato lebih), kalo cuma 1 efek aja ane yakin agan2 pasti bisa,.. kalo ada yang ditanyakan karena bingung (pasti!) silakan di reply saja.. mungkin ane ato agan2 di sini bisa bantuin. Jika berkenan bagi cendolnya ya gan :Dterima kasih.
Terakhir diubah oleh rei_shingetsu tanggal Thu Jun 27, 2013 8:25 pm, total 3 kali diubah (Reason for editing : Updating Easy part) |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Thu Jun 20, 2013 3:40 pm | |
| +3 cendol buat agan nice share gan, ini sangat berharga banget, ak jadikan sticky jika begini bentuknya share lagi yg lain gan, thanks before |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Thu Jun 20, 2013 3:45 pm | |
| |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Thu Jun 20, 2013 4:14 pm | |
| wah keren nih infonya tapi ya ane pusing bacanya ane serahin ke yg ahli script aja deh tp bagus juga sih kalau cmn mau buat monster tanpa efek yg penting kartu sendiri XD |
| | |
| | | |
| | | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Sun Jun 30, 2013 8:03 pm | |
| |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Tue Jul 16, 2013 8:50 pm | |
| Bang, Fledermaus sama Lady Pirate gue boleh dipost di forum ini ga? Tempatnya dimana yah? |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Tue Jul 16, 2013 10:49 pm | |
| Pusing baca nya , tapi mungkin bermanfaat buat gw , kalau mau pinter harus rajin baca , jadi mau baca terus supaya bisa broo |
| | |
| | | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Wed Jul 17, 2013 12:17 pm | |
| [quote] - rei_shingetsu wrote:
- firdausikal wrote:
- Bang, Fledermaus sama Lady Pirate gue boleh dipost di forum ini ga? Tempatnya dimana yah?
Boleh aja gan, ngepostnya di cradmaker studio Baiklah bang udah selesai bikinnya |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Sat Dec 14, 2013 4:31 pm | |
| baca beginian puyeng kepala gue kak |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Sat Dec 14, 2013 8:38 pm | |
| - Yuki Haku wrote:
- baca beginian puyeng kepala gue kak
emang bukan mudah kok wkwkwkwk |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Sun Dec 15, 2013 8:05 am | |
| Disini memang ada yang bisa buat ginian? |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Sun Dec 15, 2013 12:38 pm | |
| - Steven Gotze wrote:
- Disini memang ada yang bisa buat ginian?
saya & om shingetsu bisa bisa liat di sini |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Mon Dec 16, 2013 9:17 am | |
| Ga bakat buat beginian kak, terlalu sulit |
| | |
| | | |
| | | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Mon Jul 14, 2014 5:17 am | |
| hihi sangat membantu ini TUTORIAL YGOPRO scripting nya deh |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) Tue Dec 02, 2014 2:16 pm | |
| |
| | |
| Subyek: Re: [Tutorial] YGOpro Scripting Card (Create now!) | |
| |
| | | |
Subject: Re: [Tutorial] YGOpro Scripting Card (Create now!) On TimeSelamat Datang di Yugioh Forum Indonesia1. Starter Guide: Panduan Topik Yugioh Forum Indonesia. 2. Support Desk: butuh bantuan? atau ada yang tidak dimengerti tentang forum silahkan ditanyakan disini. 3. Introduction: Tempat memperkenalkan diri agan/sista dapat dilakukan disini. 4. Exam Test: Semua informasi mengenai test dormitories dapat ditemukan disini.Pesan Semangat Pagi!! Sebelumnya perkenalkan saya robot YFI, Saya disini bertugas untuk menjaga forum disetiap topiknya :D Dan sebelumnya saya ingin bertanya, bagaimana kabarnya agan dan sista disana? pasti selalu semangat dalam menjalankan aktivitasnya bukan? yeah, of course ^^
Kami disini hanya ingin memberitahukan saja, agan dan sista Jangan malu-malu untuk bermain diforum ya. Jika tidak ada yang dimenegerti cara posting memposting diforum atau cara otak-atik forum, contoh: mengganti foto avatar, dll. Semua itu agan dan sista boleh menanyakan kepada kami, pasti kami akan menjawabnya. Dan jika agan atau sista ada yang tidak suka dengan forum YFI silahkan dikomen atau dikritik. Pastinya kami akan mencoba memperbaikinya, supaya forum YFI bisa terasa nyaman dan bermanfaat untuk kita bersama-sama. Karena kami membuat forum YFI bukan untuk kepentingan pribadi kami. Tidak ada untungnya membuat dengan tujuan seperti itu, karena kami membuat forum secara sukarela & iklhas. Dan sampai saat ini kami forum YFI mohon maaf jika tidak bisa memberikan yang terbaik kepada agan dan sista semuanya, semua itu karena keterbatasan yang kami punya. Maklum ya, namanya juga manusia tidak ada yang sempurna, yang ada malah penuh dengan keterbatasan :D
Ok, sampai disini dulu ya, jangan malu-malu lagi untuk bermain diforum. Keep Respect and Have Fun ^_^
Yugioh Forum Indonesia
| | Similar topics | |
|
| Permissions in this forum: | Anda tidak dapat menjawab topik
| |
| |
|
Total 0 user online :: 0 Terdaftar, 0 Tersembunyi dan 0 Tamu User online terbanyak adalah 378 pada Wed Oct 30, 2024 3:07 am
User yang sedang berada di forum ini: Tidak ada
|
© 2013-2014 www.ygoforumindo.forumid.net - Designed By Yugioh Indonesia Yugioh Forum Indonesia is optimized for Google Chrome
|
|