青魔道士のMote-libsコードです。
目次
ソースコード
Mote-libsでは、ジョブロジック部分(ジョブ名.lua)と装備セット部分(ジョブ名_gear.lua)を切り分けていますので、次のような階層構造になっています。
GearSwap/
└ data/
├ BLU.lua
└ キャラクター名/
└BLU_gear.lua
ジョブロジック
function get_sets()
mote_include_version = 2
include('Mote-Include.lua')
set_language('japanese')
end
function job_setup()
state.Buff["睡眠"] = buffactive["睡眠"] or false
state.OffenseMode:options('Normal','D1')
state.IdleMode:options('Normal','Refresh')
state.Weapons = M{'Tizona','Naegling','Maxentius','D1'}
state.WeaponLock = M(false, '武器固定')
state.TreasureHunter = M(false, 'トレハン')
include('Mote-TreasureHunter')
end
function user_setup()
send_command('bind f8 gs c cycle Weapons')
send_command('wait 5; gs c set IdleMode Normal; gs c lockstyleset')
end
function user_unload()
send_command('unbind f8')
send_command('input /si blank;')
end
function job_precast(spell, action, spellMap, eventArgs)
if spell.action_type == 'Ranged Attack' then
equip({range="ラミアベーン"})
end
end
function user_post_midcast(spell, action, spellMap, eventArgs)
if spell.skill == '青魔法' then
for buff,active in pairs(state.Buff) do
if active and sets.buff[buff] then
equip(sets.buff[buff])
end
end
if state.WeaponLock.value then
local weapon = sets.Weapons[state.Weapons.value]
if player.equipment.sub == weapon.main.name then
weapon.sub.priority = 1
weapon.main.priority = 0
end
equip(weapon)
end
end
if state.TreasureHunter.value then
equip(sets.TreasureHunter)
end
end
function job_buff_change(buff, gain)
if state.Buff[buff] ~= nil then
state.Buff[buff] = gain
elseif state.Buff["睡眠"] then
if gain then -- 睡眠状態
equip({main="カリブルヌス"})
end
end
end
function customize_idle_set(idleSet)
if state.WeaponLock.value then
local weapon = sets.Weapons[state.Weapons.value]
if player.equipment.sub == weapon.main.name then
weapon.sub.priority = 1
weapon.main.priority = 0
end
idleSet = set_combine(idleSet, weapon)
end
return idleSet
end
function customize_melee_set(meleeSet)
local weapon = sets.Weapons[state.Weapons.value]
if player.equipment.sub == weapon.main.name then
weapon.sub.priority = 1
weapon.main.priority = 0
end
meleeSet = set_combine(meleeSet, weapon)
return meleeSet
end
function job_self_command(cmdParams, eventArgs)
if cmdParams[1] == 'lockstyleset' then
send_command('input /lockstyleset 21;')
end
end
装備セット
function init_gear_sets()
sets.buff['ブルーバースト'] = {feet="HSバシュマク+2"}
sets.buff['ブルーチェーン'] = {}
sets.buff['コンバージェンス'] = {}
sets.buff['ディフュージョン'] = {feet="LLチャルク+3"}
sets.buff['エンチェーンメント'] = {}
sets.buff['エフラックス'] = {legs="HSタイト+2"}
sets.Weapons = {}
sets.Weapons.Tizona = { main={name="ティソーナ"}, sub={ name="サクパタソード"}}
sets.Weapons.Naegling = { main={name="ネイグリング"}, sub={ name="サクパタソード"}}
sets.Weapons.Maxentius = { main={name="マクセンチアス"}, sub={ name="サクパタソード"}}
sets.Weapons.D1 = { main={name="クトゥルブナイフ"}, sub={ name="幽世の短剣"}}
sets.TreasureHunter = {
ammo="完璧な幸運の卵",
legs={ name="ヘルクリアトラウザ", augments={'CHR+15','"Resist Silence"+4','"Treasure Hunter"+2','Accuracy+2 Attack+2',}},
waist="チャークベルト",
}
sets.idle = {
main={ name="シャルウル", augments={'Evasion+15','Phys. dmg. taken -4%','AGI+17',}},
sub={ name="シャルウル", augments={'Evasion+15','Phys. dmg. taken -4%','AGI+17',}},
ammo="アマークラスター",
head="ニャメヘルム",
body="ニャメメイル",
hands="ニャメガントレ",
legs="ニャメフランチャ",
feet="ニャメソルレット",
neck={ name="バーシチョーカー+1", augments={'Path: A',}},
waist="スヴェルグーリズ+1",
left_ear="エアバニピアス",
right_ear="インフューズピアス",
left_ring="守りの指輪",
right_ring="シュネデックリング",
back={ name="ロスメルタケープ", augments={'AGI+20','Eva.+20 /Mag. Eva.+20','Evasion+10','Evasion+15',}},
}
sets.idle.Refresh = set_combine(sets.idle, {
ammo="ストンチタスラム+1",
head={ name="ヘルクリアヘルム", augments={'Weapon skill damage +2%','AGI+6','"Refresh"+2','Accuracy+9 Attack+9',}},
body="HSミンタン+2",
hands={ name="ヘルクリアグローブ", augments={'Spell interruption rate down -6%','Attack+5','"Refresh"+2','Accuracy+8 Attack+8',}},
legs={ name="ヘルクリアトラウザ", augments={'Pet: VIT+10','"Subtle Blow"+10','"Refresh"+2','Accuracy+8 Attack+8',}},
feet={ name="ヘルクリアブーツ", augments={'"Mag.Atk.Bns."+17','STR+9','"Refresh"+2',}},
neck="シビルスカーフ",
waist="プラチナモグベルト",
})
sets.engaged = {
ammo="コイストボダー",
head="マリグナスシャポー",
body="マリグナスタバード",
hands="マリグナスグローブ",
legs="マリグナスタイツ",
feet="マリグナスブーツ",
neck={ name="ミラージストール+2", augments={'Path: A',}},
waist="霊亀腰帯",
left_ear="素破の耳",
right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
left_ring="シーリチリング+1",
right_ring="エポナリング",
back={ name="ロスメルタケープ", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
}
-- --------------------------------------
-- precast
-- --------------------------------------
sets.precast.JA['アジュールロー'] = {hands="LLバズバンド+1"}
sets.precast.FC = {
ammo="サピエンスオーブ",
head={ name="カマインマスク+1", augments={'Accuracy+20','Mag. Acc.+12','"Fast Cast"+4',}},
body="ピンガチュニック+1",
hands="HSバズバンド+2",
legs="ピンガズボン",
neck="オルンミラトルク",
waist="プラチナモグベルト",
left_ear={ name="オノワイヤリング+1", augments={'Path: A',}},
left_ring={ name="ゼラチナスリング+1", augments={'Path: A',}},
right_ring="メダダリング",
back={ name="フィフォレケープ+1", augments={'Path: A',}},
}
sets.precast.FC['青魔法']=set_combine(sets.precast.FC,{body="HSミンタン+2"})
sets.precast.WS.Critical = {
ammo="コイストボダー",
head={ name="ブリスタサリット+1", augments={'Path: A',}},
body="エンフォサハーネス",
hands="HSバズバンド+2",
legs="HSタイト+2",
feet="セレオイドグリーヴ",
neck={ name="ミラージストール+2", augments={'Path: A',}},
waist="フォシャベルト",
left_ear="オドルピアス",
right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
left_ring="イラブラットリング",
right_ring="エポナリング",
back={ name="ロスメルタケープ", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}},
}
sets.precast.WS.Damage = {
ammo="コイストボダー",
head="HSカヴク+2",
body="ASジュバ+3",
hands="HSバズバンド+2",
legs="HSタイト+2",
feet={ name="LLチャルク+3", augments={'Enhances "Diffusion" effect',}},
neck={ name="ミラージストール+2", augments={'Path: A',}},
waist={ name="セールフィベルト+1", augments={'Path: A',}},
left_ear={ name="胡蝶のイヤリング", augments={'Accuracy+4','TP Bonus +250',}},
right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
left_ring="イラブラットリング",
right_ring="エパミノダスリング",
back={ name="ロスメルタケープ", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},
}
sets.precast.WS.Magic = {
ammo="ペムフレドタスラム",
head="HSカヴク+2",
body="HSミンタン+2",
hands="HSバズバンド+2",
legs="HSタイト+2",
feet="HSバシュマク+2",
neck="シビルスカーフ",
waist="オルペウスサッシュ",
left_ear="王将の耳飾り",
right_ear="フリオミシピアス",
left_ring="エパミノダスリング",
right_ring="メダダリング",
back={ name="オリストケープ+1", augments={'Path: A',}},
}
sets.precast.WS['レクイエスカット'] = set_combine(sets.precast.WS.MultDamagei, {})
sets.precast.WS['シャンデュシニュ'] = set_combine(sets.precast.WS.Critical, {})
sets.precast.WS['サベッジブレード'] = set_combine(sets.precast.WS.Damage, {})
sets.precast.WS['エクスピアシオン'] = set_combine(sets.precast.WS.Damage, {})
sets.precast.WS['ブラックヘイロー'] = set_combine(sets.precast.WS.Damage, {})
sets.precast.WS['サンギンブレード'] = set_combine(sets.precast.WS.Magic, {})
-- --------------------------------------
-- midcast
-- --------------------------------------
sets.midcast['強化魔法'] = {
head={ name="テルキネキャップ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
body={ name="テルキネシャジュブ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
hands={ name="テルキネグローブ", augments={'"Cure" potency +7%','Enh. Mag. eff. dur. +10',}},
legs={ name="テルキネブラコーニ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
feet={ name="テルキネピガッシュ", augments={'"Conserve MP"+5','Enh. Mag. eff. dur. +10',}},
neck="インカンタートルク",
waist="オリンポスサッシュ",
left_ear="アンドアーピアス",
left_ring="スティキニリング+1",
right_ring="スティキニリング+1",
back={ name="フィフォレケープ+1", augments={'Path: A',}},
}
sets.midcast['アクアベール'] = set_combine(sets.midcast['強化魔法'] ,{
head={ name="AMコイフ+1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
legs="シェダルサラウィル",
waist="エンパチコスロープ",
})
sets.midcast.Cure={
ammo="ストンチタスラム+1",
head="ニャメヘルム",
body="ピンガチュニック+1",
hands={ name="テルキネグローブ", augments={'"Cure" potency +7%','Enh. Mag. eff. dur. +10',}},
legs="ピンガズボン",
feet="ニャメソルレット",
neck={ name="アンムーヴカラー+1", augments={'Path: A',}},
waist="プラチナモグベルト",
left_ear={ name="オノワイヤリング+1", augments={'Path: A',}},
left_ring={ name="ゼラチナスリング+1", augments={'Path: A',}},
back="ソレムニティケープ",
}
sets.midcast.BlueHealing=sets.midcast.Cure
sets.midcast.BlueMagical = {
main="マクセンチアス",
sub="ブンジロッド",
ammo={ name="ガストリタスラム+1", augments={'Path: A',}},
head="HSカヴク+2",
body="HSミンタン+2",
hands="HSバズバンド+2",
legs="HSタイト+2",
feet="HSバシュマク+2",
neck={ name="ミラージストール+2", augments={'Path: A',}},
waist="オルペウスサッシュ",
left_ear="王将の耳飾り",
right_ear="フリオミシピアス",
left_ring={ name="メタモルリング+1", augments={'Path: A',}},
right_ring="メダダリング",
back={ name="オリストケープ+1", augments={'Path: A',}},
}
sets.midcast.BlueMagicAcc = {
main="マクセンチアス",
sub="ブンジロッド",
ammo="ペムフレドタスラム",
head="HSカヴク+2",
body="HSミンタン+2",
hands="HSバズバンド+2",
legs="HSタイト+2",
feet="HSバシュマク+2",
neck={ name="ミラージストール+2", augments={'Path: A',}},
waist="エスカンストーン",
left_ear="昏黄の耳飾り",
right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
left_ring={ name="メタモルリング+1", augments={'Path: A',}},
right_ring="メダダリング",
back={ name="オリストケープ+1", augments={'Path: A',}},
}
sets.midcast.BlueBuff = {
ammo="マーヴィタスラム",
head={ name="LLケフィエ+3", augments={'Enhances "Convergence" effect',}},
body="ASジュバ+3",
hands="HSバズバンド+2",
legs="HSタイト+2",
feet={ name="LLチャルク+3", augments={'Enhances "Diffusion" effect',}},
neck={ name="ミラージストール+2", augments={'Path: A',}},
waist="プラチナモグベルト",
left_ear={ name="オノワイヤリング+1", augments={'Path: A',}},
right_ear={ name="ハシシンピアス+2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+20','Mag. Acc.+20','"Dbl.Atk."+8','STR+15 INT+15',}},
left_ring="スティキニリング+1",
right_ring="スティキニリング+1",
back={ name="コンフラワーケープ", augments={'MP+23','Accuracy+3','Blue Magic skill +10',}},
}
sets.midcast['夢想花'] = set_combine(sets.midcast.BlueMagicAcc,sets.TreasureHunter)
sets.midcast['クルエルジョーク'] = set_combine(sets.midcast.BlueMagicAcc,{main="ティソーナ"})
sets.midcast['サドンランジ'] = set_combine(sets.midcast.BlueMagicAcc,{main="ティソーナ"})
sets.midcast['マジックハンマー'] = set_combine(sets.midcast.BlueMagical ,sets.midcast.BlueMagicAcc)
sets.midcast['エントゥーム'] = set_combine(sets.midcast.BlueMagical ,{neck="クアンプネックレス",left_ring="ゼラチナスリング+1"})
sets.midcast['エンバームアース'] = set_combine(sets.midcast.BlueMagical ,{neck="クアンプネックレス",left_ring="ゼラチナスリング+1"})
sets.midcast['テネブラルクラッシュ'] = set_combine(sets.midcast.BlueMagical ,{head="妖蟲の髪飾り+1",ring2="アルコンリング"})
sets.midcast['アンビルライトニング'] = set_combine(sets.midcast.BlueMagical ,{left_ring="イラブラットリング",back={ name="ロスメルタケープ", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}}})
sets.midcast['精霊魔法'] = sets.midcast.BlueMagical
end
コメント