# Arat:
JOB_WARRIOR = 0
JOB_ASSASSIN = 1
JOB_SURA = 2
JOB_SHAMAN = 3
#Altina ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
JOB_WOLFMAN = 4
#Arat:
RACE_WARRIOR_M = 0
RACE_ASSASSIN_W = 1
RACE_SURA_M = 2
RACE_SHAMAN_W = 3
RACE_WARRIOR_W = 4
RACE_ASSASSIN_M = 5
RACE_SURA_W = 6
RACE_SHAMAN_M = 7
#Altina ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
RACE_WOLFMAN_M = 8
# Bu fonksiyonu bul ve komple degistir!: def DefineSkillIndexDict():
# Degistir bununla
def DefineSkillIndexDict():
global NEW_678TH_SKILL_ENABLE
global SKILL_INDEX_DICT
if NEW_678TH_SKILL_ENABLE:
SKILL_INDEX_DICT = {
JOB_WARRIOR : {
1 : (1, 2, 3, 4, 5, 6, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (16, 17, 18, 19, 20, 21, 0, 0, 137, 0, 138, 0, 139, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131, 0, 0,),
},
JOB_ASSASSIN : {
1 : (31, 32, 33, 34, 35, 36, 0, 0, 137, 0, 138, 0, 139, 0, 140,),
2 : (46, 47, 48, 49, 50, 51, 0, 0, 137, 0, 138, 0, 139, 0, 140,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131, 0, 0,),
},
JOB_SURA : {
1 : (61, 62, 63, 64, 65, 66, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (76, 77, 78, 79, 80, 81, 0, 0, 137, 0, 138, 0, 139, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131, 0, 0,),
},
JOB_SHAMAN : {
1 : (91, 92, 93, 94, 95, 96, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (106, 107, 108, 109, 110, 111, 0, 0, 137, 0, 138, 0, 139, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131, 0, 0,),
},
}
else:
SKILL_INDEX_DICT = {
JOB_WARRIOR : {
1 : (1, 2, 3, 4, 5, 0, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (16, 17, 18, 19, 20, 0, 0, 0, 137, 0, 138, 0, 139, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131,),
},
JOB_ASSASSIN : {
1 : (31, 32, 33, 34, 35, 0, 0, 0, 137, 0, 138, 0, 139, 0, 140,),
2 : (46, 47, 48, 49, 50, 0, 0, 0, 137, 0, 138, 0, 139, 0, 140,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131,),
},
JOB_SURA : {
1 : (61, 62, 63, 64, 65, 66, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (76, 77, 78, 79, 80, 81, 0, 0, 137, 0, 138, 0, 139, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131,),
},
JOB_SHAMAN : {
1 : (91, 92, 93, 94, 95, 96, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (106, 107, 108, 109, 110, 111, 0, 0, 137, 0, 138, 0, 139, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131,),
},
}
if app.ENABLE_WOLFMAN_CHARACTER:
SKILL_INDEX_DICT.update({
JOB_WOLFMAN : {
1 : (170, 171, 172, 173, 174, 175, 0, 0, 137, 0, 138, 0, 139, 0,),
2 : (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,),
"SUPPORT" : (122, 123, 121, 124, 125, 129, 0, 0, 130, 131,),
},
})
# Arat:
def SetGeneralMotions(mode, folder):
chrmgr.SetPathName(folder)
chrmgr.RegisterMotionMode(mode)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_WAIT, "wait.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_WALK, "walk.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_RUN, "run.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE, "damage.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE, "damage_1.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_BACK, "damage_2.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_BACK, "damage_3.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_FLYING, "damage_flying.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_STAND_UP, "falling_stand.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_FLYING_BACK, "back_damage_flying.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_STAND_UP_BACK, "back_falling_stand.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DEAD, "dead.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DIG, "dig.msa")
# Altina ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
def SetNewGeneralMotions(mode, folder):
chrmgr.SetPathName(folder)
chrmgr.RegisterMotionMode(mode)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_WAIT, "wait.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_WALK, "walk.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_RUN, "run.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE, "front_damage.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE, "front_damage1.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_BACK, "back_damage.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_BACK, "back_damage1.msa", 50)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_FLYING, "front_damage_flying.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_STAND_UP, "front_falling_standup.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DAMAGE_FLYING_BACK, "back_damage_flying.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_STAND_UP_BACK, "back_falling_standup.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DEAD, "dead.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_DIG, "dig.msa")
def SetIntroMotions(mode, folder):
chrmgr.SetPathName(folder)
chrmgr.RegisterMotionMode(mode)
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_INTRO_WAIT, "wait.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_INTRO_SELECTED, "selected.msa")
chrmgr.RegisterCacheMotionData(mode, chr.MOTION_INTRO_NOT_SELECTED, "not_selected.msa")
def __InitData():
global isInitData
if isInitData:
return
isInitData = 1
chrmgr.SetDustGap(250)
chrmgr.SetHorseDustGap(500)
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DUST, "", "d:/ymir work/effect/etc/dust/dust.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_HORSE_DUST, "", "d:/ymir work/effect/etc/dust/running_dust.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_HIT, "", "d:/ymir work/effect/hit/blow_1/blow_1_low.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_HPUP_RED, "", "d:/ymir work/effect/etc/recuperation/drugup_red.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_SPUP_BLUE, "", "d:/ymir work/effect/etc/recuperation/drugup_blue.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_SPEEDUP_GREEN, "", "d:/ymir work/effect/etc/recuperation/drugup_green.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DXUP_PURPLE, "", "d:/ymir work/effect/etc/recuperation/drugup_purple.mse")
#자동물약 HP, SP
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_AUTO_HPUP, "", "d:/ymir work/effect/etc/recuperation/autodrugup_red.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_AUTO_SPUP, "", "d:/ymir work/effect/etc/recuperation/autodrugup_blue.mse")
#라마단 초승달의 반지(71135) 착용순간 발동 이펙트
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_RAMADAN_RING_EQUIP, "", "d:/ymir work/effect/etc/buff/buff_item1.mse")
#할로윈 사탕 착용순간 발동 이펙트
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_HALLOWEEN_CANDY_EQUIP, "", "d:/ymir work/effect/etc/buff/buff_item2.mse")
#행복의 반지 착용순간 발동 이펙트
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_HAPPINESS_RING_EQUIP, "", "d:/ymir work/effect/etc/buff/buff_item3.mse")
#사랑의 팬던트 착용순간 발동 이펙트
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_LOVE_PENDANT_EQUIP, "", "d:/ymir work/effect/etc/buff/buff_item4.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_PENETRATE, "Bip01", "d:/ymir work/effect/hit/gwantong.mse")
#chrmgr.RegisterCacheEffect(chrmgr.EFFECT_BLOCK, "", "d:/ymir work/effect/etc/")
#chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DODGE, "", "d:/ymir work/effect/etc/")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_FIRECRACKER, "", "d:/ymir work/effect/etc/firecracker/newyear_firecracker.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_SPIN_TOP, "", "d:/ymir work/effect/etc/firecracker/paing_i.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_SELECT, "", "d:/ymir work/effect/etc/click/click_select.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_TARGET, "", "d:/ymir work/effect/etc/click/click_glow_select.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_STUN, "Bip01 Head", "d:/ymir work/effect/etc/stun/stun.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_CRITICAL, "Bip01 R Hand", "d:/ymir work/effect/hit/critical.mse")
player.RegisterCacheEffect(player.EFFECT_PICK, "d:/ymir work/effect/etc/click/click.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_TARGET, "", "d:/ymir work/effect/affect/damagevalue/target.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_NOT_TARGET, "", "d:/ymir work/effect/affect/damagevalue/nontarget.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_SELFDAMAGE, "", "d:/ymir work/effect/affect/damagevalue/damage.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_SELFDAMAGE2, "", "d:/ymir work/effect/affect/damagevalue/damage_1.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_POISON, "", "d:/ymir work/effect/affect/damagevalue/poison.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_MISS, "", "d:/ymir work/effect/affect/damagevalue/miss.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_TARGETMISS, "", "d:/ymir work/effect/affect/damagevalue/target_miss.mse")
#chrmgr.RegisterCacheEffect(chrmgr.EFFECT_DAMAGE_CRITICAL, "", "d:/ymir work/effect/affect/damagevalue/critical.mse")
#chrmgr.RegisterCacheEffect(chrmgr.EFFECT_SUCCESS, "", "season1/effect/success.mse")
#chrmgr.RegisterCacheEffect(chrmgr.EFFECT_FAIL, "", "season1/effect/fail.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_LEVELUP_ON_14_FOR_GERMANY, "","season1/effect/paymessage_warning.mse") #레벨업 14일때 ( 독일전용 )
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_LEVELUP_UNDER_15_FOR_GERMANY, "", "season1/effect/paymessage_decide.mse" )#레벨업 15일때 ( 독일전용 )
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_PERCENT_DAMAGE1, "", "d:/ymir work/effect/hit/percent_damage1.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_PERCENT_DAMAGE2, "", "d:/ymir work/effect/hit/percent_damage2.mse")
chrmgr.RegisterCacheEffect(chrmgr.EFFECT_PERCENT_DAMAGE3, "", "d:/ymir work/effect/hit/percent_damage3.mse")
##############
# WARRIOR
##############
chrmgr.CreateRace(RACE_WARRIOR_M)
chrmgr.SelectRace(RACE_WARRIOR_M)
chrmgr.LoadLocalRaceData("warrior_m.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc/warrior/intro/")
chrmgr.CreateRace(RACE_WARRIOR_W)
chrmgr.SelectRace(RACE_WARRIOR_W)
chrmgr.LoadLocalRaceData("warrior_w.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc2/warrior/intro/")
##############
# ASSASSIN
##############
chrmgr.CreateRace(RACE_ASSASSIN_W)
chrmgr.SelectRace(RACE_ASSASSIN_W)
chrmgr.LoadLocalRaceData("assassin_w.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc/assassin/intro/")
chrmgr.CreateRace(RACE_ASSASSIN_M)
chrmgr.SelectRace(RACE_ASSASSIN_M)
chrmgr.LoadLocalRaceData("assassin_m.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc2/assassin/intro/")
##############
# SURA
##############
chrmgr.CreateRace(RACE_SURA_M)
chrmgr.SelectRace(RACE_SURA_M)
chrmgr.LoadLocalRaceData("sura_m.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc/sura/intro/")
chrmgr.CreateRace(RACE_SURA_W)
chrmgr.SelectRace(RACE_SURA_W)
chrmgr.LoadLocalRaceData("sura_w.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc2/sura/intro/")
# Arat:
##############
# SHAMAN
##############
chrmgr.CreateRace(RACE_SHAMAN_W)
chrmgr.SelectRace(RACE_SHAMAN_W)
chrmgr.LoadLocalRaceData("shaman_w.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc/shaman/intro/")
chrmgr.CreateRace(RACE_SHAMAN_M)
chrmgr.SelectRace(RACE_SHAMAN_M)
chrmgr.LoadLocalRaceData("shaman_m.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc2/shaman/intro/")
# Altina ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
##############
# WOLFMAN
##############
chrmgr.CreateRace(RACE_WOLFMAN_M)
chrmgr.SelectRace(RACE_WOLFMAN_M)
chrmgr.LoadLocalRaceData("wolfman_m.msm")
SetIntroMotions(chr.MOTION_MODE_GENERAL, "d:/ymir work/pc3/wolfman/intro/")
#Arat:
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+33, "", "d:/ymir work/pc/warrior/effect/gyeokgongjang_loop.mse") ## 천근추 (Fallen)
## 34 Polymoph
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+35, "", "d:/ymir work/effect/etc/guild_war_flag/flag_red.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+36, "", "d:/ymir work/effect/etc/guild_war_flag/flag_blue.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+37, "", "d:/ymir work/effect/etc/guild_war_flag/flag_yellow.mse")
# Altina ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+42, "Bip01", "d:/ymir work/effect/hit/blow_poison/bleeding_loop.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+43, "Bip01", "d:/ymir work/effect/hit/blow_flame/flame_loop_w.mse")
chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+44, "", "d:/ymir work/pc3/common/effect/gyeokgongjang_loop_w.mse")
def __LoadGameShaman():
__LoadGameShamanEx(RACE_SHAMAN_W, "d:/ymir work/pc/shaman/")
__LoadGameShamanEx(RACE_SHAMAN_M, "d:/ymir work/pc2/shaman/")
if app.ENABLE_WOLFMAN_CHARACTER:
def __LoadGameWolfman():
__LoadGameWolfmanEx(RACE_WOLFMAN_M, "d:/ymir work/pc3/wolfman/")
# Bunu arat: def __LoadGameSkill():
# ve ustune ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
def __LoadGameWolfmanEx(race, path):
## Wolfman
#########################################################################################
chrmgr.SelectRace(race)
## GENERAL MOTION MODE
SetNewGeneralMotions(chr.MOTION_MODE_GENERAL, path + "general/")
chrmgr.SetMotionRandomWeight(chr.MOTION_MODE_GENERAL, chr.MOTION_WAIT, 0, 70)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_WAIT, "wait.msa", 30)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_COMBO_ATTACK_1, "attack1.msa", 50)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_COMBO_ATTACK_1, "attack2.msa", 50)
chrmgr.ReserveComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, 6)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_1, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_2, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_3, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_4, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_5, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_6, chr.MOTION_COMBO_ATTACK_1)
## SKILL
chrmgr.SetPathName(path + "skill/")
for i in xrange(skill.SKILL_EFFECT_COUNT):
END_STRING = ""
if i != 0: END_STRING = "_%d" % (i)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+1, "split_slash" + END_STRING + ".msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+2, "wind_death" + END_STRING + ".msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+3, "reef_attack" + END_STRING + ".msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+4, "wreckage" + END_STRING + ".msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+5, "red_possession" + END_STRING + ".msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+6, "blue_possession" + END_STRING + ".msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, GUILD_SKILL_DRAGONBLOOD, "guild_yongsinuipi.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, GUILD_SKILL_DRAGONBLESS, "guild_yongsinuichukbok.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, GUILD_SKILL_BLESSARMOR, "guild_seonghwigap.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, GUILD_SKILL_SPPEDUP, "guild_gasokhwa.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, GUILD_SKILL_DRAGONWRATH, "guild_yongsinuibunno.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, GUILD_SKILL_MAGICUP, "guild_jumunsul.msa")
chrmgr.ReserveComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, 1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_GENERAL, COMBO_TYPE_1, COMBO_INDEX_1, chr.MOTION_COMBO_ATTACK_1)
## EMOTION
emotion.RegisterEmotionAnis(path)
## CLAW
chrmgr.SetPathName(path + "claw/")
chrmgr.RegisterMotionMode(chr.MOTION_MODE_CLAW)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_WAIT, "wait.msa", 50)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_WAIT, "wait1.msa", 30)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_WAIT, "wait2.msa", 20)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_WALK, "walk.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_RUN, "run.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_DAMAGE, "front_damage.msa", 50)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_DAMAGE, "front_damage1.msa", 50)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_DAMAGE_BACK, "back_damage.msa", 50)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_DAMAGE_BACK, "back_damage1.msa", 50)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_1, "combo_01.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_2, "combo_02.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_3, "combo_03.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_4, "combo_04.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_5, "combo_05.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_6, "combo_06.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_CLAW, chr.MOTION_COMBO_ATTACK_7, "combo_07.msa")
## Combo Type 1
chrmgr.ReserveComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_1, 4)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_1, COMBO_INDEX_1, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_1, COMBO_INDEX_2, chr.MOTION_COMBO_ATTACK_2)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_1, COMBO_INDEX_3, chr.MOTION_COMBO_ATTACK_3)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_1, COMBO_INDEX_4, chr.MOTION_COMBO_ATTACK_4)
## Combo Type 2
chrmgr.ReserveComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_2, 5)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_2, COMBO_INDEX_1, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_2, COMBO_INDEX_2, chr.MOTION_COMBO_ATTACK_2)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_2, COMBO_INDEX_3, chr.MOTION_COMBO_ATTACK_3)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_2, COMBO_INDEX_4, chr.MOTION_COMBO_ATTACK_5)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_2, COMBO_INDEX_5, chr.MOTION_COMBO_ATTACK_7)
## Combo Type 3
chrmgr.ReserveComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, 6)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, COMBO_INDEX_1, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, COMBO_INDEX_2, chr.MOTION_COMBO_ATTACK_2)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, COMBO_INDEX_3, chr.MOTION_COMBO_ATTACK_3)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, COMBO_INDEX_4, chr.MOTION_COMBO_ATTACK_5)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, COMBO_INDEX_5, chr.MOTION_COMBO_ATTACK_6)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_CLAW, COMBO_TYPE_3, COMBO_INDEX_6, chr.MOTION_COMBO_ATTACK_4)
## FISHING
chrmgr.SetPathName(path + "fishing/")
chrmgr.RegisterMotionMode(chr.MOTION_MODE_FISHING)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_WAIT, "wait.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_WALK, "walk.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_RUN, "run.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_FISHING_THROW, "throw.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_FISHING_WAIT, "fishing_wait.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_FISHING_STOP, "fishing_cancel.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_FISHING_REACT, "fishing_react.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_FISHING_CATCH, "fishing_catch.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_FISHING, chr.MOTION_FISHING_FAIL, "fishing_fail.msa")
## HORSE
chrmgr.SetPathName(path + "horse/")
chrmgr.RegisterMotionMode(chr.MOTION_MODE_HORSE)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_WAIT, "wait.msa", 90)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_WAIT, "wait1.msa", 9)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_WAIT, "wait2.msa", 1)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_WALK, "walk.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_RUN, "run.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_DAMAGE, "front_damage.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_DAMAGE_BACK, "front_damage.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, chr.MOTION_DEAD, "dead.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, HORSE_SKILL_CHARGE, "skill_charge.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE, HORSE_SKILL_SPLASH, "skill_splash.msa")
## HORSE_CLAW
chrmgr.SetPathName(path + "horse_claw/")
chrmgr.RegisterMotionMode(chr.MOTION_MODE_HORSE_CLAW)
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE_CLAW, chr.MOTION_COMBO_ATTACK_1, "combo_01.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE_CLAW, chr.MOTION_COMBO_ATTACK_2, "combo_02.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE_CLAW, chr.MOTION_COMBO_ATTACK_3, "combo_03.msa")
chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_HORSE_CLAW, HORSE_SKILL_WILDATTACK, "skill_wildattack.msa")
chrmgr.ReserveComboAttackNew(chr.MOTION_MODE_HORSE_CLAW, COMBO_TYPE_1, 3)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_HORSE_CLAW, COMBO_TYPE_1, COMBO_INDEX_1, chr.MOTION_COMBO_ATTACK_1)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_HORSE_CLAW, COMBO_TYPE_1, COMBO_INDEX_2, chr.MOTION_COMBO_ATTACK_2)
chrmgr.RegisterComboAttackNew(chr.MOTION_MODE_HORSE_CLAW, COMBO_TYPE_1, COMBO_INDEX_3, chr.MOTION_COMBO_ATTACK_3)
## Bone
chrmgr.RegisterAttachingBoneName(chr.PART_WEAPON, "equip_right_weapon")
chrmgr.RegisterAttachingBoneName(chr.PART_WEAPON_LEFT, "equip_left_weapon")
# Bunu arat:
loadGameDataDict={
"INIT" : __InitData,
"SOUND" : __LoadGameSound,
"EFFECT" : __LoadGameEffect,
"WARRIOR" : __LoadGameWarrior,
"ASSASSIN" : __LoadGameAssassin,
"SURA" : __LoadGameSura,
"SHAMAN" : __LoadGameShaman,
"SKILL" : __LoadGameSkill,
"ENEMY" : __LoadGameEnemy,
"NPC" : __LoadGameNPC,
}
# Altina ekle:
if app.ENABLE_WOLFMAN_CHARACTER:
loadGameDataDict.update({"WOLFMAN": __LoadGameWolfman,})