支线副本

This commit is contained in:
xiekaidong 2023-07-20 17:41:42 +08:00
parent c2dc577fc6
commit 8b4933f4f0
54 changed files with 37488 additions and 35542 deletions

View File

@ -125,6 +125,10 @@ BIReport.ITEM_GET_TYPE = {
DUNGEON_WEAPON_CHALLENGE = "DungeonWeaponChallenge",
DUNGEON_WEAPON_END = "DungeonWeaponEnd",
DUNGEON_WEAPON_SWEEP = "DungeonWeaponSweep",
DUNGEON_ARMOR_CHALLENGE = "DungeonArmorChallenge",
DUNGEON_ARMOR_END = "DungeonArmorEnd",
DUNGEON_ARMOR_SWEEP = "DungeonArmorSweep",
DUNGEON_ARMOR_STAR_REWARD = "DungeonArmorStarReward",
}
BIReport.ADS_CLICK_TYPE = {

View File

@ -63,6 +63,8 @@ local MODULE_PATHS = {
CommonManager = "app/module/common/common_manager",
-- 武器副本
DungeonWeaponManager = "app/module/dungeon_weapon/dungeon_weapon_manager",
-- 防具副本
DungeonArmorManager = "app/module/dungeon_armor/dungeon_armor_manager",
}
-- 这里的key对应func_open里的id

View File

@ -696,10 +696,10 @@ local buff = {
["decr"]=3,
["icon"]="invincible_shield",
["fx_continued"]={
24
38
},
["fx_disappear"]={
25
39
}
}
}

View File

@ -3,6 +3,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=10,
["chapter"]=1,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_1",
["stage_icon"]="dungeon_armor_house_1",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -11,16 +13,7 @@ local chapter_dungeon_armor = {
2
},
["monster"]={
107,
207,
307,
407,
507,
607,
707,
807,
907,
1007
101,
},
["star_task"]={
1,
@ -126,6 +119,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=10,
["chapter"]=1,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_1",
["stage_icon"]="dungeon_armor_house_1",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -134,16 +129,7 @@ local chapter_dungeon_armor = {
2
},
["monster"]={
1107,
1207,
1307,
1407,
1507,
1607,
1707,
1807,
1907,
2007
101
},
["star_task"]={
1,
@ -249,6 +235,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=10,
["chapter"]=1,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_1",
["stage_icon"]="dungeon_armor_house_1",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -257,16 +245,7 @@ local chapter_dungeon_armor = {
2
},
["monster"]={
2107,
2207,
2307,
2407,
2507,
2607,
2707,
2807,
2907,
3007
101
},
["star_task"]={
1,
@ -372,6 +351,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=10,
["chapter"]=1,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_1",
["stage_icon"]="dungeon_armor_house_1",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -380,16 +361,7 @@ local chapter_dungeon_armor = {
2
},
["monster"]={
3107,
3207,
3307,
3407,
3507,
3607,
3707,
3807,
3907,
4007
101
},
["star_task"]={
1,
@ -495,6 +467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=10,
["chapter"]=1,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_1",
["stage_icon"]="dungeon_armor_house_1",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -618,6 +592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=10,
["chapter"]=1,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_1",
["stage_icon"]="dungeon_armor_house_1",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -741,6 +717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=12,
["chapter"]=2,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_2",
["stage_icon"]="dungeon_armor_house_2",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -864,6 +842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=12,
["chapter"]=2,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_2",
["stage_icon"]="dungeon_armor_house_2",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -987,6 +967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=12,
["chapter"]=2,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_2",
["stage_icon"]="dungeon_armor_house_2",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1110,6 +1092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=12,
["chapter"]=2,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_2",
["stage_icon"]="dungeon_armor_house_2",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1233,6 +1217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=12,
["chapter"]=2,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_2",
["stage_icon"]="dungeon_armor_house_2",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1356,6 +1342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=12,
["chapter"]=2,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_2",
["stage_icon"]="dungeon_armor_house_2",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1479,6 +1467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=15,
["chapter"]=3,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_3",
["stage_icon"]="dungeon_armor_house_3",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1602,6 +1592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=15,
["chapter"]=3,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_3",
["stage_icon"]="dungeon_armor_house_3",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1725,6 +1717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=15,
["chapter"]=3,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_3",
["stage_icon"]="dungeon_armor_house_3",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1848,6 +1842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=15,
["chapter"]=3,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_3",
["stage_icon"]="dungeon_armor_house_3",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -1971,6 +1967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=15,
["chapter"]=3,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_3",
["stage_icon"]="dungeon_armor_house_3",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2094,6 +2092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=15,
["chapter"]=3,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_3",
["stage_icon"]="dungeon_armor_house_3",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2217,6 +2217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=18,
["chapter"]=4,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_4",
["stage_icon"]="dungeon_armor_house_4",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2340,6 +2342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=18,
["chapter"]=4,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_4",
["stage_icon"]="dungeon_armor_house_4",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2463,6 +2467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=18,
["chapter"]=4,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_4",
["stage_icon"]="dungeon_armor_house_4",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2586,6 +2592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=18,
["chapter"]=4,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_4",
["stage_icon"]="dungeon_armor_house_4",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2709,6 +2717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=18,
["chapter"]=4,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_4",
["stage_icon"]="dungeon_armor_house_4",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2832,6 +2842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=18,
["chapter"]=4,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_4",
["stage_icon"]="dungeon_armor_house_4",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -2955,6 +2967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=21,
["chapter"]=5,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_5",
["stage_icon"]="dungeon_armor_house_5",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3078,6 +3092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=21,
["chapter"]=5,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_5",
["stage_icon"]="dungeon_armor_house_5",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3201,6 +3217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=21,
["chapter"]=5,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_5",
["stage_icon"]="dungeon_armor_house_5",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3324,6 +3342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=21,
["chapter"]=5,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_5",
["stage_icon"]="dungeon_armor_house_5",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3447,6 +3467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=21,
["chapter"]=5,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_5",
["stage_icon"]="dungeon_armor_house_5",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3570,6 +3592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=21,
["chapter"]=5,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_5",
["stage_icon"]="dungeon_armor_house_5",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3693,6 +3717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=24,
["chapter"]=6,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_6",
["stage_icon"]="dungeon_armor_house_6",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3816,6 +3842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=24,
["chapter"]=6,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_6",
["stage_icon"]="dungeon_armor_house_6",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -3939,6 +3967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=24,
["chapter"]=6,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_6",
["stage_icon"]="dungeon_armor_house_6",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4062,6 +4092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=24,
["chapter"]=6,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_6",
["stage_icon"]="dungeon_armor_house_6",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4185,6 +4217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=24,
["chapter"]=6,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_6",
["stage_icon"]="dungeon_armor_house_6",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4308,6 +4342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=24,
["chapter"]=6,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_6",
["stage_icon"]="dungeon_armor_house_6",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4431,6 +4467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=27,
["chapter"]=7,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_7",
["stage_icon"]="dungeon_armor_house_7",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4554,6 +4592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=27,
["chapter"]=7,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_7",
["stage_icon"]="dungeon_armor_house_7",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4677,6 +4717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=27,
["chapter"]=7,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_7",
["stage_icon"]="dungeon_armor_house_7",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4800,6 +4842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=27,
["chapter"]=7,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_7",
["stage_icon"]="dungeon_armor_house_7",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -4923,6 +4967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=27,
["chapter"]=7,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_7",
["stage_icon"]="dungeon_armor_house_7",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5046,6 +5092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=27,
["chapter"]=7,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_7",
["stage_icon"]="dungeon_armor_house_7",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5169,6 +5217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=30,
["chapter"]=8,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_8",
["stage_icon"]="dungeon_armor_house_8",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5292,6 +5342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=30,
["chapter"]=8,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_8",
["stage_icon"]="dungeon_armor_house_8",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5415,6 +5467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=30,
["chapter"]=8,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_8",
["stage_icon"]="dungeon_armor_house_8",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5538,6 +5592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=30,
["chapter"]=8,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_8",
["stage_icon"]="dungeon_armor_house_8",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5661,6 +5717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=30,
["chapter"]=8,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_8",
["stage_icon"]="dungeon_armor_house_8",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5784,6 +5842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=30,
["chapter"]=8,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_8",
["stage_icon"]="dungeon_armor_house_8",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -5907,6 +5967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=33,
["chapter"]=9,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_9",
["stage_icon"]="dungeon_armor_house_9",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6030,6 +6092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=33,
["chapter"]=9,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_9",
["stage_icon"]="dungeon_armor_house_9",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6153,6 +6217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=33,
["chapter"]=9,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_9",
["stage_icon"]="dungeon_armor_house_9",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6276,6 +6342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=33,
["chapter"]=9,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_9",
["stage_icon"]="dungeon_armor_house_9",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6399,6 +6467,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=33,
["chapter"]=9,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_9",
["stage_icon"]="dungeon_armor_house_9",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6522,6 +6592,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=33,
["chapter"]=9,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_9",
["stage_icon"]="dungeon_armor_house_9",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6645,6 +6717,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=35,
["chapter"]=10,
["stage"]=1,
["chapter_bg"]="dungeon_armor_map_10",
["stage_icon"]="dungeon_armor_house_10",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6768,6 +6842,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=35,
["chapter"]=10,
["stage"]=2,
["chapter_bg"]="dungeon_armor_map_10",
["stage_icon"]="dungeon_armor_house_10",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -6891,6 +6967,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=35,
["chapter"]=10,
["stage"]=3,
["chapter_bg"]="dungeon_armor_map_10",
["stage_icon"]="dungeon_armor_house_10",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -7014,6 +7092,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=35,
["chapter"]=10,
["stage"]=4,
["chapter_bg"]="dungeon_armor_map_10",
["stage_icon"]="dungeon_armor_house_10",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -7137,6 +7217,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=35,
["chapter"]=10,
["stage"]=5,
["chapter_bg"]="dungeon_armor_map_10",
["stage_icon"]="dungeon_armor_house_10",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",
@ -7260,6 +7342,8 @@ local chapter_dungeon_armor = {
["main_chapter"]=35,
["chapter"]=10,
["stage"]=6,
["chapter_bg"]="dungeon_armor_map_10",
["stage_icon"]="dungeon_armor_house_10",
["scene"]="bg_13",
["block_icon"]="battle_hinder_13",
["chess_board"]="chessboard_2",

View File

@ -8,7 +8,11 @@ local chapter_dungeon_equip = {
1
},
["monster"]={
101,
106,
206,
306,
406,
506
},
["first_reward"]={
["type"]=1,
@ -97,7 +101,11 @@ local chapter_dungeon_equip = {
2
},
["monster"]={
101,
606,
706,
806,
906,
1006
},
["first_reward"]={
["type"]=1,
@ -186,7 +194,11 @@ local chapter_dungeon_equip = {
3
},
["monster"]={
101
1106,
1206,
1306,
1406,
1506
},
["first_reward"]={
["type"]=1,
@ -275,7 +287,11 @@ local chapter_dungeon_equip = {
4
},
["monster"]={
101
1606,
1706,
1806,
1906,
2006
},
["first_reward"]={
["type"]=1,

File diff suppressed because it is too large Load Diff

View File

@ -158,6 +158,15 @@ local fx = {
["res"]="sfx_buff_zuzhou_b01",
["bind"]="root"
},
[38]={
["res"]="sfx_buff_hudun_zi_b01",
["loop"]=1,
["bind"]="root"
},
[39]={
["res"]="sfx_buff_hudun_zi_b01_1",
["bind"]="root"
},
[100001]={
["res"]="sfx_m10001_b01",
["bind"]="root"
@ -1210,6 +1219,78 @@ local fx = {
["res"]="sfx_m20038_b06",
["bind"]="root"
},
[200148]={
["res"]="sfx_m20039_b01",
["bind"]="root"
},
[200149]={
["res"]="sfx_m20039_b02",
["bind"]="root"
},
[200150]={
["res"]="sfx_m20039_b03",
["bind"]="root"
},
[200151]={
["res"]="sfx_m20039_b04",
["bind"]="root"
},
[200152]={
["res"]="sfx_m20040_b01",
["bind"]="root"
},
[200153]={
["res"]="sfx_m20040_b02",
["bind"]="root"
},
[200154]={
["res"]="sfx_m20040_b03",
["bind"]="root"
},
[200155]={
["res"]="sfx_m20040_b04",
["bind"]="root"
},
[200156]={
["res"]="sfx_m20040_b05",
["bind"]="root"
},
[200157]={
["res"]="sfx_m20041_b01",
["bind"]="root"
},
[200158]={
["res"]="sfx_m20041_b04",
["bind"]="root"
},
[200159]={
["res"]="sfx_m20041_b05",
["bind"]="root"
},
[200160]={
["res"]="sfx_m20042_b01",
["bind"]="root"
},
[200161]={
["res"]="sfx_m20042_b02",
["bind"]="root"
},
[200162]={
["res"]="sfx_m20042_b03",
["bind"]="root"
},
[200163]={
["res"]="sfx_m20042_b05",
["bind"]="root"
},
[200164]={
["res"]="sfx_m20043_b01",
["bind"]="root"
},
[200165]={
["res"]="sfx_m20043_b05",
["bind"]="root"
},
[300000]={
["res"]="sfx_p0001_b01",
["bind"]="root"
@ -2265,6 +2346,6 @@ local fx = {
}
}
local config = {
data=fx,count=534
data=fx,count=554
}
return config

View File

@ -459,152 +459,616 @@ local item = {
[1001]={
["type"]=2,
["qlt"]=1,
["icon"]="1001"
["icon"]="1001",
["get_way_type"]=1,
["get_way"]={
1,
2,
3,
4,
5,
6,
7,
8
}
},
[1002]={
["type"]=2,
["qlt"]=2,
["icon"]="1002"
["icon"]="1002",
["get_way_type"]=1,
["get_way"]={
3,
4,
5,
6,
7,
8
}
},
[1003]={
["type"]=2,
["qlt"]=3,
["icon"]="1003"
["icon"]="1003",
["get_way_type"]=1,
["get_way"]={
6,
7,
8,
9,
10,
11,
12,
13,
14
}
},
[1004]={
["type"]=2,
["qlt"]=4,
["icon"]="1004"
["icon"]="1004",
["get_way_type"]=1,
["get_way"]={
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20
}
},
[1005]={
["type"]=2,
["qlt"]=5,
["icon"]="1005"
["icon"]="1005",
["get_way_type"]=1,
["get_way"]={
12,
13,
14,
15,
16,
17,
18,
19,
20
}
},
[1006]={
["type"]=2,
["qlt"]=5,
["icon"]="1006"
["icon"]="1006",
["get_way_type"]=1,
["get_way"]={
15,
16,
17,
18,
19,
20
}
},
[1007]={
["type"]=2,
["qlt"]=1,
["icon"]="1007"
["icon"]="1007",
["get_way_type"]=2,
["get_way"]={
1,
5,
6,
7,
11,
12,
13,
17,
18,
19,
23,
24
}
},
[1008]={
["type"]=2,
["qlt"]=2,
["icon"]="1008"
["icon"]="1008",
["get_way_type"]=2,
["get_way"]={
7,
11,
12,
13,
17,
18,
19,
23,
24,
25,
29,
30,
31,
35,
36
}
},
[1009]={
["type"]=2,
["qlt"]=3,
["icon"]="1009"
["icon"]="1009",
["get_way_type"]=2,
["get_way"]={
13,
17,
18,
19,
23,
24,
25,
29,
30,
31,
35,
36,
37,
41,
42,
43,
47,
48
}
},
[1010]={
["type"]=2,
["qlt"]=4,
["icon"]="1010"
["icon"]="1010",
["get_way_type"]=2,
["get_way"]={
25,
29,
30,
31,
35,
36,
37,
41,
42,
43,
47,
48,
49,
53,
54,
55,
59,
60
}
},
[1011]={
["type"]=2,
["qlt"]=5,
["icon"]="1011"
["icon"]="1011",
["get_way_type"]=2,
["get_way"]={
37,
41,
42,
43,
47,
48,
49,
53,
54,
55,
59,
60
}
},
[1012]={
["type"]=2,
["qlt"]=5,
["icon"]="1012"
["icon"]="1012",
["get_way_type"]=2,
["get_way"]={
49,
53,
54,
55,
59,
60
}
},
[1013]={
["type"]=2,
["qlt"]=1,
["icon"]="1013"
["icon"]="1013",
["get_way_type"]=2,
["get_way"]={
2,
5,
6,
8,
11,
12,
14,
17,
18,
20,
23,
24
}
},
[1014]={
["type"]=2,
["qlt"]=2,
["icon"]="1014"
["icon"]="1014",
["get_way_type"]=2,
["get_way"]={
8,
11,
12,
14,
17,
18,
20,
23,
24,
26,
29,
30,
32,
35,
36
}
},
[1015]={
["type"]=2,
["qlt"]=3,
["icon"]="1015"
["icon"]="1015",
["get_way_type"]=2,
["get_way"]={
14,
17,
18,
20,
23,
24,
26,
29,
30,
32,
35,
36,
38,
41,
42,
44,
47,
48
}
},
[1016]={
["type"]=2,
["qlt"]=4,
["icon"]="1016"
["icon"]="1016",
["get_way_type"]=2,
["get_way"]={
26,
29,
30,
32,
35,
36,
38,
41,
42,
44,
47,
48,
50,
53,
54,
56,
59,
60
}
},
[1017]={
["type"]=2,
["qlt"]=5,
["icon"]="1017"
["icon"]="1017",
["get_way_type"]=2,
["get_way"]={
38,
41,
42,
44,
47,
48,
50,
53,
54,
56,
59,
60
}
},
[1018]={
["type"]=2,
["qlt"]=5,
["icon"]="1018"
["icon"]="1018",
["get_way_type"]=2,
["get_way"]={
50,
53,
54,
56,
59,
60
}
},
[1019]={
["type"]=2,
["qlt"]=1,
["icon"]="1019"
["icon"]="1019",
["get_way_type"]=2,
["get_way"]={
3,
5,
6,
9,
11,
12,
15,
17,
18,
21,
23,
24
}
},
[1020]={
["type"]=2,
["qlt"]=2,
["icon"]="1020"
["icon"]="1020",
["get_way_type"]=2,
["get_way"]={
9,
11,
12,
15,
17,
18,
21,
23,
24,
27,
29,
30,
33,
35,
36
}
},
[1021]={
["type"]=2,
["qlt"]=3,
["icon"]="1021"
["icon"]="1021",
["get_way_type"]=2,
["get_way"]={
15,
17,
18,
21,
23,
24,
27,
29,
30,
33,
35,
36,
39,
41,
42,
45,
47,
48
}
},
[1022]={
["type"]=2,
["qlt"]=4,
["icon"]="1022"
["icon"]="1022",
["get_way_type"]=2,
["get_way"]={
27,
29,
30,
33,
35,
36,
39,
41,
42,
45,
47,
48,
51,
53,
54,
57,
59,
60
}
},
[1023]={
["type"]=2,
["qlt"]=5,
["icon"]="1023"
["icon"]="1023",
["get_way_type"]=2,
["get_way"]={
39,
41,
42,
45,
47,
48,
51,
53,
54,
57,
59,
60
}
},
[1024]={
["type"]=2,
["qlt"]=5,
["icon"]="1024"
["icon"]="1024",
["get_way_type"]=2,
["get_way"]={
51,
53,
54,
57,
59,
60
}
},
[1025]={
["type"]=2,
["qlt"]=1,
["icon"]="1025"
["icon"]="1025",
["get_way_type"]=2,
["get_way"]={
4,
5,
6,
10,
11,
12,
16,
17,
18,
22,
23,
24
}
},
[1026]={
["type"]=2,
["qlt"]=2,
["icon"]="1026"
["icon"]="1026",
["get_way_type"]=2,
["get_way"]={
10,
11,
12,
16,
17,
18,
22,
23,
24,
28,
29,
30,
34,
35,
36
}
},
[1027]={
["type"]=2,
["qlt"]=3,
["icon"]="1027"
["icon"]="1027",
["get_way_type"]=2,
["get_way"]={
16,
17,
18,
22,
23,
24,
28,
29,
30,
34,
35,
36,
40,
41,
42,
46,
47,
48
}
},
[1028]={
["type"]=2,
["qlt"]=4,
["icon"]="1028"
["icon"]="1028",
["get_way_type"]=2,
["get_way"]={
28,
29,
30,
34,
35,
36,
40,
41,
42,
46,
47,
48,
52,
53,
54,
58,
59,
60
}
},
[1029]={
["type"]=2,
["qlt"]=5,
["icon"]="1029"
["icon"]="1029",
["get_way_type"]=2,
["get_way"]={
40,
41,
42,
46,
47,
48,
52,
53,
54,
58,
59,
60
}
},
[1030]={
["type"]=2,
["qlt"]=5,
["icon"]="1030"
["icon"]="1030",
["get_way_type"]=2,
["get_way"]={
52,
53,
54,
58,
59,
60
}
},
[12001]={
["type"]=5,

View File

@ -396,6 +396,20 @@ local LocalizationGlobalConst =
DUNGEON_WEAPON_DESC_14 = "DUNGEON_WEAPON_DESC_14",
MOP_UP_DESC_1 = "MOP_UP_DESC_1",
MOP_UP_DESC_2 = "MOP_UP_DESC_2",
DUNGEON_WEAPON_DESC_15 = "DUNGEON_WEAPON_DESC_15",
EQUIP_DESC_19 = "EQUIP_DESC_19",
EQUIP_DESC_20 = "EQUIP_DESC_20",
EQUIP_DESC_21 = "EQUIP_DESC_21",
EQUIP_DESC_22 = "EQUIP_DESC_22",
EQUIP_DESC_23 = "EQUIP_DESC_23",
DUNGEON_ARMOR_DESC_4 = "DUNGEON_ARMOR_DESC_4",
DUNGEON_ARMOR_DESC_5 = "DUNGEON_ARMOR_DESC_5",
DUNGEON_ARMOR_DESC_6 = "DUNGEON_ARMOR_DESC_6",
DUNGEON_ARMOR_DESC_7 = "DUNGEON_ARMOR_DESC_7",
DUNGEON_ARMOR_DESC_8 = "DUNGEON_ARMOR_DESC_8",
DUNGEON_ARMOR_DESC_9 = "DUNGEON_ARMOR_DESC_9",
DUNGEON_ARMOR_DESC_10 = "DUNGEON_ARMOR_DESC_10",
DUNGEON_ARMOR_DESC_11 = "DUNGEON_ARMOR_DESC_11",
}
return LocalizationGlobalConst

View File

@ -529,13 +529,13 @@ local monster_base = {
["body"]=1,
["model_ui"]=1.0
},
[20042]={
["model_id"]="m20042",
[20041]={
["model_id"]="m20041",
["body"]=1,
["model_ui"]=1.0
},
[20041]={
["model_id"]="m20041",
[20042]={
["model_id"]="m20042",
["body"]=1,
["model_ui"]=1.0
},

View File

@ -9772,10 +9772,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10033
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200155
},
[10086]={
["effect_type"]=2,
@ -9826,10 +9824,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200151
},
[10088]={
["effect_type"]=1,
@ -9850,9 +9846,10 @@ local skill = {
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10058
3300120
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=400019
},
[10089]={
["skill_type"]=3,
@ -9879,10 +9876,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200165
},
[10090]={
["effect_type"]=2,
@ -9917,6 +9912,9 @@ local skill = {
},
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10033
},
["name_act"]="skill01"
},
[10092]={
@ -9944,7 +9942,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200163
},
[10093]={
["effect_type"]=2,
@ -10004,7 +10003,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200158
},
[10095]={
["effect_type"]=1,
@ -10024,7 +10024,8 @@ local skill = {
},
["cd"]=3,
["cd_start"]=3,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200159
},
[10096]={
["skill_type"]=5,
@ -10070,10 +10071,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10033
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200155
},
[10097]={
["effect_type"]=2,
@ -10124,10 +10123,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200151
},
[10099]={
["effect_type"]=1,
@ -10148,9 +10145,10 @@ local skill = {
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10058
3300120
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=400019
},
[10100]={
["skill_type"]=3,
@ -10177,10 +10175,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200165
},
[10101]={
["effect_type"]=2,
@ -10215,6 +10211,9 @@ local skill = {
},
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10033
},
["name_act"]="skill01"
},
[10103]={
@ -10242,7 +10241,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200163
},
[10104]={
["effect_type"]=2,
@ -10302,7 +10302,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200158
},
[10106]={
["effect_type"]=1,
@ -10322,7 +10323,8 @@ local skill = {
},
["cd"]=3,
["cd_start"]=3,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200159
},
[10107]={
["skill_type"]=5,
@ -10368,10 +10370,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10033
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200155
},
[10108]={
["effect_type"]=2,
@ -10422,10 +10422,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200151
},
[10110]={
["effect_type"]=1,
@ -10446,9 +10444,10 @@ local skill = {
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10058
3300120
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=400019
},
[10111]={
["skill_type"]=3,
@ -10475,10 +10474,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200165
},
[10112]={
["effect_type"]=2,
@ -10513,6 +10510,9 @@ local skill = {
},
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10033
},
["name_act"]="skill01"
},
[10114]={
@ -10540,7 +10540,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200163
},
[10115]={
["effect_type"]=2,
@ -10600,7 +10601,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200158
},
[10117]={
["effect_type"]=1,
@ -10620,7 +10622,8 @@ local skill = {
},
["cd"]=3,
["cd_start"]=3,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200159
},
[10118]={
["skill_type"]=5,
@ -10666,10 +10669,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10033
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200155
},
[10119]={
["effect_type"]=2,
@ -10720,10 +10721,8 @@ local skill = {
["cd_start"]=0,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200151
},
[10121]={
["effect_type"]=1,
@ -10744,9 +10743,10 @@ local skill = {
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10058
3300120
},
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=400019
},
[10122]={
["skill_type"]=3,
@ -10773,10 +10773,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10058
},
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200165
},
[10123]={
["effect_type"]=2,
@ -10811,6 +10809,9 @@ local skill = {
},
["cd"]=3,
["cd_start"]=0,
["sound_hit"]={
10033
},
["name_act"]="skill01"
},
[10125]={
@ -10838,7 +10839,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200163
},
[10126]={
["effect_type"]=2,
@ -10898,7 +10900,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["name_act"]="skill01"
["name_act"]="skill01",
["fx_self"]=200158
},
[10128]={
["effect_type"]=1,
@ -10918,7 +10921,8 @@ local skill = {
},
["cd"]=3,
["cd_start"]=3,
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200159
},
[10129]={
["effect_type"]=1,
@ -10975,10 +10979,8 @@ local skill = {
["cd_start"]=2,
["shake_time"]=200,
["shake_type"]=6,
["sound_hit"]={
10033
},
["name_act"]="skill02"
["name_act"]="skill02",
["fx_self"]=200156
},
[20001]={
["effect_type"]=1,
@ -18502,10 +18504,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200152
},
[30115]={
["effect_type"]=1,
@ -18531,10 +18531,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200153
},
[30116]={
["effect_type"]=1,
@ -18560,10 +18558,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200154
},
[30117]={
["effect_type"]=1,
@ -18583,10 +18579,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200148
},
[30118]={
["effect_type"]=1,
@ -18606,10 +18600,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200149
},
[30119]={
["effect_type"]=1,
@ -18629,10 +18621,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200150
},
[30120]={
["effect_type"]=1,
@ -18652,10 +18642,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200164
},
[30121]={
["effect_type"]=1,
@ -18675,10 +18663,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200164
},
[30122]={
["effect_type"]=1,
@ -18698,10 +18684,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200164
},
[30123]={
["effect_type"]=1,
@ -18727,10 +18711,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200160
},
[30124]={
["effect_type"]=1,
@ -18756,10 +18738,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200161
},
[30125]={
["effect_type"]=1,
@ -18785,10 +18765,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200162
},
[30126]={
["effect_type"]=1,
@ -18808,10 +18786,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200157
},
[30127]={
["effect_type"]=1,
@ -18831,10 +18807,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200157
},
[30128]={
["effect_type"]=1,
@ -18854,10 +18828,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200157
},
[30129]={
["effect_type"]=1,
@ -18883,10 +18855,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200152
},
[30130]={
["effect_type"]=1,
@ -18912,10 +18882,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200153
},
[30131]={
["effect_type"]=1,
@ -18941,10 +18909,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200154
},
[30132]={
["effect_type"]=1,
@ -18970,10 +18936,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200160
},
[30133]={
["effect_type"]=1,
@ -18999,10 +18963,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200161
},
[30134]={
["effect_type"]=1,
@ -19028,10 +18990,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200162
},
[30135]={
["effect_type"]=1,
@ -19057,10 +19017,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200152
},
[30136]={
["effect_type"]=1,
@ -19086,10 +19044,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200153
},
[30137]={
["effect_type"]=1,
@ -19115,10 +19071,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200154
},
[30138]={
["effect_type"]=1,
@ -19144,10 +19098,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200160
},
[30139]={
["effect_type"]=1,
@ -19173,10 +19125,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200161
},
[30140]={
["effect_type"]=1,
@ -19202,10 +19152,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200162
},
[30141]={
["effect_type"]=1,
@ -19231,10 +19179,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200152
},
[30142]={
["effect_type"]=1,
@ -19260,10 +19206,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000013
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200153
},
[30143]={
["effect_type"]=1,
@ -19289,10 +19233,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200154
},
[30144]={
["effect_type"]=1,
@ -19318,10 +19260,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack01"
["name_act"]="attack01",
["fx_self"]=200160
},
[30145]={
["effect_type"]=1,
@ -19347,10 +19287,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack02"
["name_act"]="attack02",
["fx_self"]=200161
},
[30146]={
["effect_type"]=1,
@ -19376,10 +19314,8 @@ local skill = {
},
["shake_time"]=100,
["shake_type"]=1,
["sound_hit"]={
1000014
},
["name_act"]="attack03"
["name_act"]="attack03",
["fx_self"]=200162
},
[40001]={
["effect_type"]=1,

View File

@ -31,127 +31,127 @@ local attr = {
},
[7]={
["id"]=7,
["desc"]="暴击率提升{0}",
["desc"]="暴击率提升{0}%",
["name"]="attr_crit_red"
},
[8]={
["id"]=8,
["desc"]="暴击率提升{0}",
["desc"]="暴击率提升{0}%",
["name"]="attr_crit_yellow"
},
[9]={
["id"]=9,
["desc"]="暴击率提升{0}",
["desc"]="暴击率提升{0}%",
["name"]="attr_crit_green"
},
[10]={
["id"]=10,
["desc"]="暴击率提升{0}",
["desc"]="暴击率提升{0}%",
["name"]="attr_crit_blue"
},
[11]={
["id"]=11,
["desc"]="暴击率提升{0}",
["desc"]="暴击率提升{0}%",
["name"]="attr_crit_purple"
},
[12]={
["id"]=12,
["desc"]="暴击伤害提升{0}",
["desc"]="暴击伤害提升{0}%",
["name"]="attr_crit_time_red"
},
[13]={
["id"]=13,
["desc"]="暴击伤害提升{0}",
["desc"]="暴击伤害提升{0}%",
["name"]="attr_crit_time_yellow"
},
[14]={
["id"]=14,
["desc"]="暴击伤害提升{0}",
["desc"]="暴击伤害提升{0}%",
["name"]="attr_crit_time_green"
},
[15]={
["id"]=15,
["desc"]="暴击伤害提升{0}",
["desc"]="暴击伤害提升{0}%",
["name"]="attr_crit_time_blue"
},
[16]={
["id"]=16,
["desc"]="暴击伤害提升{0}",
["desc"]="暴击伤害提升{0}%",
["name"]="attr_crit_time_purple"
},
[17]={
["id"]=17,
["desc"]="治疗效果提升{0}",
["desc"]="治疗效果提升{0}%",
["name"]="attr_cured_red"
},
[18]={
["id"]=18,
["desc"]="治疗效果提升{0}",
["desc"]="治疗效果提升{0}%",
["name"]="attr_cured_yellow"
},
[19]={
["id"]=19,
["desc"]="治疗效果提升{0}",
["desc"]="治疗效果提升{0}%",
["name"]="attr_cured_green"
},
[20]={
["id"]=20,
["desc"]="治疗效果提升{0}",
["desc"]="治疗效果提升{0}%",
["name"]="attr_cured_blue"
},
[21]={
["id"]=21,
["desc"]="治疗效果提升{0}",
["desc"]="治疗效果提升{0}%",
["name"]="attr_cured_purple"
},
[22]={
["id"]=22,
["desc"]="攻击力提升{0}",
["desc"]="攻击力提升{0}%",
["name"]="attr_atkp_red"
},
[23]={
["id"]=23,
["desc"]="攻击力提升{0}",
["desc"]="攻击力提升{0}%",
["name"]="attr_atkp_yellow"
},
[24]={
["id"]=24,
["desc"]="攻击力提升{0}",
["desc"]="攻击力提升{0}%",
["name"]="attr_atkp_green"
},
[25]={
["id"]=25,
["desc"]="攻击力提升{0}",
["desc"]="攻击力提升{0}%",
["name"]="attr_atkp_blue"
},
[26]={
["id"]=26,
["desc"]="攻击力提升{0}",
["desc"]="攻击力提升{0}%",
["name"]="attr_atkp_purple"
},
[27]={
["id"]=27,
["desc"]="生命提升{0}",
["desc"]="生命提升{0}%",
["name"]="attr_hpp_red"
},
[28]={
["id"]=28,
["desc"]="生命提升{0}",
["desc"]="生命提升{0}%",
["name"]="attr_hpp_yellow"
},
[29]={
["id"]=29,
["desc"]="生命提升{0}",
["desc"]="生命提升{0}%",
["name"]="attr_hpp_green"
},
[30]={
["id"]=30,
["desc"]="生命提升{0}",
["desc"]="生命提升{0}%",
["name"]="attr_hpp_blue"
},
[31]={
["id"]=31,
["desc"]="生命提升{0}",
["desc"]="生命提升{0}%",
["name"]="attr_hpp_purple"
},
[32]={
@ -206,52 +206,52 @@ local attr = {
},
[42]={
["id"]=42,
["desc"]="普攻伤害增加{0}",
["desc"]="普攻伤害增加{0}%",
["name"]="attr_normal_hurtp_red"
},
[43]={
["id"]=43,
["desc"]="普攻伤害增加{0}",
["desc"]="普攻伤害增加{0}%",
["name"]="attr_normal_hurtp_yellow"
},
[44]={
["id"]=44,
["desc"]="普攻伤害增加{0}",
["desc"]="普攻伤害增加{0}%",
["name"]="attr_normal_hurtp_green"
},
[45]={
["id"]=45,
["desc"]="普攻伤害增加{0}",
["desc"]="普攻伤害增加{0}%",
["name"]="attr_normal_hurtp_blue"
},
[46]={
["id"]=46,
["desc"]="普攻伤害增加{0}",
["desc"]="普攻伤害增加{0}%",
["name"]="attr_normal_hurtp_purple"
},
[47]={
["id"]=47,
["desc"]="技能伤害增加{0}",
["desc"]="技能伤害增加{0}%",
["name"]="attr_skill_hurtp_red"
},
[48]={
["id"]=48,
["desc"]="技能伤害增加{0}",
["desc"]="技能伤害增加{0}%",
["name"]="attr_skill_hurtp_yellow"
},
[49]={
["id"]=49,
["desc"]="技能伤害增加{0}",
["desc"]="技能伤害增加{0}%",
["name"]="attr_skill_hurtp_green"
},
[50]={
["id"]=50,
["desc"]="技能伤害增加{0}",
["desc"]="技能伤害增加{0}%",
["name"]="attr_skill_hurtp_blue"
},
[51]={
["id"]=51,
["desc"]="技能伤害增加{0}",
["desc"]="技能伤害增加{0}%",
["name"]="attr_skill_hurtp_purple"
}
}

View File

@ -396,8 +396,20 @@ local localization_global =
["DUNGEON_WEAPON_DESC_14"] = "查看",
["MOP_UP_DESC_1"] = "扫荡完成",
["MOP_UP_DESC_2"] = "再次扫荡",
["DUNGEON_WEAPON_DESC_15"] = "最强灯神阵容",
["DUNGEON_WEAPON_DESC_15"] = "灯神阵容",
["EQUIP_DESC_19"] = "最强灯神第{0}层获得",
["EQUIP_DESC_20"] = "时空裂隙{0}-{1}获得",
["EQUIP_DESC_21"] = "前往",
["EQUIP_DESC_22"] = "未开启",
["EQUIP_DESC_23"] = "材料获取",
["DUNGEON_ARMOR_DESC_4"] = "裂隙阵容",
["DUNGEON_ARMOR_DESC_5"] = "可能获得",
["DUNGEON_ARMOR_DESC_6"] = "满星通关后解锁扫荡",
["DUNGEON_ARMOR_DESC_7"] = "通关",
["DUNGEON_ARMOR_DESC_8"] = "星级奖励",
["DUNGEON_ARMOR_DESC_9"] = "当前积攒星星{0}",
["DUNGEON_ARMOR_DESC_10"] = "积攒{0}颗星星可获得奖励",
["DUNGEON_ARMOR_DESC_11"] = "补星",
}
return localization_global

View File

@ -287,6 +287,21 @@ local monster_base = {
[20038]={
["name"]="章鱼船长"
},
[20039]={
["name"]="黄金灯灵"
},
[20040]={
["name"]="诅咒灯灵"
},
[20041]={
["name"]="邪眸灯灵"
},
[20042]={
["name"]="霜峰灯灵"
},
[20043]={
["name"]="古医灯灵"
},
[30001]={
["name"]="洋葱头"
},
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="Octopus Captain"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="Onion"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="Capitán Pulpo"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="Cabeza de Cebolla"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="Kapten Gurita"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="Kepala Bawang"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="タコ船長"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="タマネギ"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="문어 캡틴"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="양파 헤드"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="Capitão Polvo"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="Cabeça de Cebola"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="กัปตันปลาหมึก"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="หัวหอม"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="Thuyền Trưởng Bạch Tuộc"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="Onion"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -286,6 +286,21 @@ local monster_base = {
},
[20038]={
["name"]="章魚船長"
},
[20039]={
},
[20040]={
},
[20041]={
},
[20042]={
},
[20043]={
},
[30001]={
["name"]="洋蔥頭"
@ -364,6 +379,6 @@ local monster_base = {
}
}
local config = {
data=monster_base,count=121
data=monster_base,count=126
}
return config

View File

@ -213,6 +213,7 @@ GConst.ATLAS_PATH = {
SEVEN_DAY = "assets/arts/atlas/ui/sevenday.asset",
MODULE = "assets/arts/atlas/ui/module.asset",
UI_MAIL = "assets/arts/atlas/ui/mail.asset",
UI_DUGEON_ARMOR = "assets/arts/atlas/ui/dungeon_armor.asset",
}
GConst.TOUCH_EVENT = {

View File

@ -0,0 +1,77 @@
local BattleController = require "app/module/battle/controller/battle_controller"
local BattleControllerDungeonArmor = class("BattleControllerDungeonArmor", BattleController)
function BattleControllerDungeonArmor:getBoardConfig()
return ConfigManager:getConfig("chapter_board_dungeon_armor")
end
function BattleControllerDungeonArmor:getChapterConfig()
return ConfigManager:getConfig("chapter_dungeon_armor")
end
function BattleControllerDungeonArmor:getChapterId()
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
return armorData:getCurFightChapterId()
end
function BattleControllerDungeonArmor:controllBattleEnd()
self.combatReport = {
battleType = GConst.BattleConst.BATTLE_TYPE.DUNGEON_ARMOR,
wave = self.waveIndex,
victory = self.victory,
}
local atkReport = {}
local teamEntity = self.battleData:getAtkTeam()
local members = teamEntity:getAllMembers()
for k, v in pairs(members) do
local report = {
heroId = v:getId(),
dmg = v:getDamageCount(),
}
table.insert(atkReport, report)
end
self.combatReport.atkReport = atkReport
if not self.victory then
self.combatReport.wave = self.combatReport.wave - 1
end
ModuleManager.DungeonArmorManager:reqEndChallenge(self.chapterId, self.combatReport, self.taskProgress)
end
function BattleControllerDungeonArmor:postWaveOver(atkDead, isQuit)
local deathType = BIReport.FIGHT_DEATH_TYPE.SURVIVE
local waveEndType = BIReport.FIGHT_WAVE_END_TYPE.WIN
if atkDead then
if self.isBossWave then
deathType = BIReport.FIGHT_DEATH_TYPE.BOSS_FAIL
else
deathType = BIReport.FIGHT_DEATH_TYPE.NORMAL_FAIL
end
waveEndType = BIReport.FIGHT_WAVE_END_TYPE.FAIL
end
if isQuit then
waveEndType = BIReport.FIGHT_WAVE_END_TYPE.QUIT
end
local duration = self.waveDurationTime
local totalTime = self.totalDurationTime
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
local startTimes = armorData:getChapterFightCount(self.chapterId)
local isFirstWin = false
if armorData:getPassedMaxId() < self.chapterId and self.victory then
isFirstWin = true
end
local isFianlStep = self.waveIndex >= self.maxWaveIndex
BIReport:postFightEnd(GConst.BattleConst.BATTLE_TYPE.DUNGEON_ARMOR, self.battleData, self.chapterId, self.waveIndex, duration, totalTime, self.eliminateCount, self.eliminateTotalCount, waveEndType, deathType, startTimes, isFirstWin, isFianlStep, self.maxLinkCount)
end
function BattleControllerDungeonArmor:postFightStart()
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
local startTimes = armorData:getChapterFightCount(self.chapterId)
local unlockMaxChapter = armorData:getPassedMaxId() + 1
BIReport:postFightBegin(GConst.BattleConst.BATTLE_TYPE.DUNGEON_ARMOR, self.waveIndex, self.chapterId, unlockMaxChapter, startTimes)
end
return BattleControllerDungeonArmor

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 42a6b977b6042e04c856edb5785bcd70
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,158 @@
local DungeonArmorManager = class("DungeonArmorManager", BaseModule)
function DungeonArmorManager:showMainUI()
UIManager:showUI("app/ui/dungeon_armor/dungeon_armor_main_ui")
end
function DungeonArmorManager:showFightUI(chapterId)
UIManager:showUI("app/ui/dungeon_armor/dungeon_armor_fight_ui", {chapterId = chapterId})
end
function DungeonArmorManager:showFarmUI(chapterId)
UIManager:showUI("app/ui/dungeon_armor/dungeon_armor_farm_ui", {chapterId = chapterId})
end
function DungeonArmorManager:showStarRewardUI()
UIManager:showUI("app/ui/dungeon_armor/dungeon_armor_star_reward_ui")
end
function DungeonArmorManager:reqFight(chapterId)
if not DataManager.FormationData:formationIsFull(GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR) then
GFunc.showToast(I18N:getGlobalText(I18N.GlobalConst.BATTLE_DESC_8))
return
end
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
if not armorData:canFightChapter(chapterId) then
return
end
-- 判断体力
if not DataManager.DungeonData:isEnoughHp(ModuleManager.MODULE_KEY.DUNGEON_ARMOR) then
GFunc.showItemNotEnough(GConst.ItemConst.ITEM_ID_VIT)
ModuleManager.CommerceManager:showBuyVitUI()
return
end
local heroes = {}
local formation = DataManager.FormationData:getDungeonArmorFormation()
for matchType, heroId in pairs(formation) do
if heroId > 0 then
table.insert(heroes, heroId)
end
end
local parmas = {chapter_armor_id = chapterId, heroes = heroes}
self:sendMessage(ProtoMsgType.FromMsgEnum.ChapterArmorChallengeStartReq, parmas, {}, self.rsqFight, BIReport.ITEM_GET_TYPE.DUNGEON_ARMOR_CHALLENGE)
end
function DungeonArmorManager:rsqFight(result)
if result.err_code == GConst.ERROR_STR.SUCCESS then
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
if result.reqData then
armorData:setCurFightChapterId(result.reqData.chapter_armor_id)
end
local params = {
atkFormation = {}
}
local formation = DataManager.FormationData:getDungeonArmorFormation()
for elementType, heroId in pairs(formation) do
local heroEntity = DataManager.HeroData:getHeroById(heroId)
if heroEntity then
params.atkFormation[elementType] = heroEntity
end
end
ModuleManager.BattleManager:playBattle(GConst.BattleConst.BATTLE_TYPE.DUNGEON_ARMOR, params, function()
self:showMainUI()
end)
end
end
function DungeonArmorManager:reqEndChallenge(chapterId, combatReport, taskProgress)
local parmas = {
chapter_armor_id = chapterId,
win = combatReport.victory,
task_stat = taskProgress,
combatReport = combatReport,
}
self:sendMessage(ProtoMsgType.FromMsgEnum.ChapterArmorChallengeSettlementReq, parmas, {}, self.rsqEndChallenge, BIReport.ITEM_GET_TYPE.DUNGEON_ARMOR_END)
end
function DungeonArmorManager:rsqEndChallenge(result)
if result.err_code == GConst.ERROR_STR.SUCCESS then
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
if result.reqData then
armorData:refreshInfoOnSettlement(result.reqData.chapter_armor_id, result)
end
ModuleManager.BattleManager:showBattleResultUI(GConst.BattleConst.BATTLE_TYPE.DUNGEON_ARMOR, result.rewards, result.reqData.combatReport)
end
end
-- 请求扫荡副本
function DungeonArmorManager:reqSweep(chapterId)
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
-- 判断次数
if armorData:getRemianFarmCount() <= 0 then
GFunc.showToast(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_WEAPON_DESC_13))
return
end
-- 判断体力
if not DataManager.DungeonData:isEnoughHp(ModuleManager.MODULE_KEY.DUNGEON_ARMOR) then
GFunc.showItemNotEnough(GConst.ItemConst.ITEM_ID_VIT)
ModuleManager.CommerceManager:showBuyVitUI()
return
end
if not armorData:canFarmChapter(chapterId) then
return
end
local parmas = {
chapter_armor_id = chapterId,
}
self:sendMessage(ProtoMsgType.FromMsgEnum.ChapterArmorChallengeFarmReq, parmas, {}, self.respSweep, BIReport.ITEM_GET_TYPE.DUNGEON_ARMOR_SWEEP)
end
-- 响应扫荡副本
function DungeonArmorManager:respSweep(result)
if result.err_code == GConst.ERROR_STR.SUCCESS then
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
if result.reqData then
armorData:refreshInfoOnFarm(result.reqData.chapter_armor_id, result)
end
local remainCount = armorData:getRemianFarmCount()
-- 合并奖励
local newRewards = {}
GFunc.mergeRewards2(result.rewards, newRewards)
ModuleManager.CommonManager:showMopUpUI(newRewards, remainCount, function()
if result.reqData then
self:reqSweep(result.reqData.chapter_armor_id)
end
end)
end
end
function DungeonArmorManager:reqStarReward(starId)
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
if armorData:getStarRewardGot(starId) then
return
end
local parmas = {
id = starId,
}
self:sendMessage(ProtoMsgType.FromMsgEnum.ChapterArmorStarRewardReq, parmas, {}, self.respStarReward, BIReport.ITEM_GET_TYPE.DUNGEON_ARMOR_STAR_REWARD)
end
function DungeonArmorManager:respStarReward(result)
if result.err_code == GConst.ERROR_STR.SUCCESS then
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
if result.reqData then
armorData:getStarReward(result.reqData.id)
end
end
end
return DungeonArmorManager

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 91c819af41e0e5c43ac3e0236276931d
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -74,6 +74,10 @@ function DungeonBoardCell:refreshInfo()
self.txTimes:setText(I18N:getGlobalText(I18N.GlobalConst.TODAY_REMAIN_TIMES, timeStr))
end
if DataManager.DungeonData:isNotShowLimitCount(self.moduleKey) then
self.txTimes:setText(GConst.EMPTY_STRING)
end
self:refreshCountdown(self.txCountdown)
else
self.btnStart:setVisible(false)
@ -90,7 +94,8 @@ function DungeonBoardCell:refreshInfo()
end
function DungeonBoardCell:refreshRewards()
if self.moduleKey == ModuleManager.MODULE_KEY.DUNGEON_WEAPON then
if self.moduleKey == ModuleManager.MODULE_KEY.DUNGEON_WEAPON or
self.moduleKey == ModuleManager.MODULE_KEY.DUNGEON_ARMOR then
self.itemReward:getBaseObject():setActive(false)
else
self.itemReward:getBaseObject():setActive(true)

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 56bff18684acd7e4b98ee2bf1238a6e8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c7196f8761f0ef244b85a535d00419ea
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,89 @@
local ChapterCell = class("ChapterCell", BaseCell)
function ChapterCell:refresh(id)
local uiMap = self:getUIMap()
local index = self:getIndex()
local bg1 = uiMap["chapter_cell.bg_1"]
local bg2 = uiMap["chapter_cell.bg_2"]
local touchNode = uiMap["chapter_cell.touch_node"]
if index % 2 ~= 0 then -- 奇数
bg1:setVisible(true)
bg2:setVisible(false)
touchNode:setAnchoredPositionX(-125)
else
bg1:setVisible(false)
bg2:setVisible(true)
touchNode:setAnchoredPositionX(125)
end
local config = ConfigManager:getConfig("chapter_dungeon_armor")[id]
if not config then
return
end
local farmNode = uiMap["chapter_cell.touch_node.farm_node"]
uiMap["chapter_cell.touch_node.farm_node.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.SMASH))
local chapterNode = uiMap["chapter_cell.touch_node.chapter_node"]
uiMap["chapter_cell.touch_node.chapter_node.desc"]:setText(config.chapter .. "-" .. config.stage)
local bottomBg = uiMap["chapter_cell.touch_node.bottom_bg"]
local starNode = uiMap["chapter_cell.touch_node.star_node"]
if not self.hStars then
self.hStars = {}
for i = 1, 3 do
self.hStars[i] = uiMap["chapter_cell.touch_node.star_node.star_h_" .. i]
end
end
local spineNode = uiMap["chapter_cell.touch_node.spine_node"]
local bgNode = uiMap["chapter_cell.touch_node.bg"]
local armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
local starNum = armorData:getStarNum(id)
bgNode:setVisible(true)
spineNode:setVisible(false)
bgNode:setImageGray(false)
bottomBg:setImageGray(false)
chapterNode:setImageGray(false)
if armorData:canFarmChapter(id) then -- 可扫荡
farmNode:setVisible(true)
chapterNode:setAnchoredPositionY(43)
starNode:setVisible(true)
for index, node in ipairs(self.hStars) do
node:setVisible(true)
end
touchNode:addClickListener(function()
ModuleManager.DungeonArmorManager:showFarmUI(id)
end)
elseif armorData:canFightChapter(id) then -- 可挑战
farmNode:setVisible(false)
if starNum > 0 then -- 通关过
chapterNode:setAnchoredPositionY(43)
starNode:setVisible(true)
for index, node in ipairs(self.hStars) do
node:setVisible(index <= starNum)
end
else
chapterNode:setAnchoredPositionY(8)
starNode:setVisible(false)
bgNode:setVisible(false)
spineNode:setVisible(true)
end
touchNode:addClickListener(function()
ModuleManager.DungeonArmorManager:showFightUI(id)
end)
else -- 不可挑战
farmNode:setVisible(false)
chapterNode:setAnchoredPositionY(8)
starNode:setVisible(false)
bgNode:setImageGray(true)
bottomBg:setImageGray(true)
chapterNode:setImageGray(true)
touchNode:addClickListener(nil)
end
end
return ChapterCell

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 1e52094bb8515804a81c74a3d2007c4a
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,36 @@
local StarRewardCell = class("StarRewardCell", BaseCell)
local BG = {"dungeon_armor_bg_4", "dungeon_armor_bg_5"}
local BTN = {"common_btn_grey_3", "common_btn_green_3"}
function StarRewardCell:refresh(index, config, got, allStarNum)
local uiMap = self:getUIMap()
if not self.rewardCell then
self.rewardCell = CellManager:addCellComp(uiMap["star_reward_cell.bg.reward_cell"], GConst.TYPEOF_LUA_CLASS.REWARD_CELL)
end
self.rewardCell:refreshByConfig(config.reward)
self.rewardCell:showCheck(got == true)
uiMap["star_reward_cell.bg.btn.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.BTN_CLAIM))
local getBtn = uiMap["star_reward_cell.bg.btn"]
local bg = uiMap["star_reward_cell.bg"]
getBtn:setActive(not got)
local btnIcon = BTN[1]
local bgIcon = BG[1]
getBtn:addClickListener(nil)
if config.star <= allStarNum then
btnIcon = BTN[2]
bgIcon = BG[2]
if not got then
getBtn:addClickListener(function()
ModuleManager.DungeonArmorManager:reqStarReward(index)
end)
end
end
getBtn:setSprite(GConst.ATLAS_PATH.COMMON, btnIcon)
bg:setSprite(GConst.ATLAS_PATH.UI_DUGEON_ARMOR, bgIcon)
uiMap["star_reward_cell.bg.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_10, config.star))
end
return StarRewardCell

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 87fceea7599c41047b5800254710865c
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,29 @@
local TaskViewCell = class("TaskViewCell", BaseCell)
local STAR = {"dungeon_armor_star_1", "dungeon_armor_star_2"}
function TaskViewCell:refresh(taskId, done, reward)
local uiMap = self:getUIMap()
local desc = uiMap["task_view_cell.desc"]
local i18config = I18N:getConfig("task_dungeon_armor")[taskId]
if i18config then
desc:setText(i18config.desc)
else
desc:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_7))
end
if not self.rewardCell then
self.rewardCell = CellManager:addCellComp(uiMap["task_view_cell.reward_cell"], GConst.TYPEOF_LUA_CLASS.REWARD_CELL)
end
self.rewardCell:refreshByConfig(reward)
self.rewardCell:showCheck(done == true)
local starObj = uiMap["task_view_cell.star"]
local star = STAR[2]
if done then
star = STAR[1]
end
starObj:setSprite(GConst.ATLAS_PATH.UI_DUGEON_ARMOR, star)
end
return TaskViewCell

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 31c787e75aa001a4caf5bd86c0f8f648
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,90 @@
local DungeonArmorFarmUI = class("DungeonArmorFarmUI", BaseUI)
function DungeonArmorFarmUI:ctor(params)
self.armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
self.chapterId = params.chapterId
self.config = self.armorData:getConfig(self.chapterId)
end
function DungeonArmorFarmUI:isFullScreen()
return false
end
function DungeonArmorFarmUI:getPrefabPath()
return "assets/prefabs/ui/dungeon_armor/dungeon_armor_farm_ui.prefab"
end
function DungeonArmorFarmUI:onLoadRootComplete()
self:_display()
self:_addListeners()
self:_bind()
end
function DungeonArmorFarmUI:_display()
self:refreshTop()
self:refreshMiddle()
self:refreshBottom()
end
function DungeonArmorFarmUI:_addListeners()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_farm_ui.bg.bg.btn"]:addClickListener(function()
ModuleManager.DungeonArmorManager:reqSweep(self.chapterId)
end)
uiMap["dungeon_armor_farm_ui.bg.btn_close"]:addClickListener(function()
self:closeUI()
end)
end
function DungeonArmorFarmUI:_bind()
self:bind(self.armorData, "isDirty", function()
self:refreshBottom()
end)
end
function DungeonArmorFarmUI:refreshTop()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_farm_ui.bg.title.tx_title"]:setText(self.config.chapter .. "-" .. self.config.stage)
end
function DungeonArmorFarmUI:refreshMiddle()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_farm_ui.bg.bg.desc_1"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_5))
uiMap["dungeon_armor_farm_ui.bg.bg.desc_2"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_WEAPON_DESC_5, self.armorData:getRemianFarmCount(self.chapterId)))
local rewardNode = uiMap["dungeon_armor_farm_ui.bg.bg.reward_node"]
if not self.rewardCells then
self.rewardCells = {}
for i = 1, 4 do
self.rewardCells[i] = CellManager:addCellComp(uiMap["dungeon_armor_farm_ui.bg.bg.reward_node.reward_cell_" .. i], GConst.TYPEOF_LUA_CLASS.REWARD_CELL)
end
end
for index, cell in ipairs(self.rewardCells) do
local reward = self.config.item_show[index]
cell:getBaseObject():setActive(reward ~= nil)
if reward ~= nil then
cell:refreshByConfig(reward)
cell:hideCountTx()
end
end
rewardNode:getComponent(GConst.TYPEOF_UNITY_CLASS.BF_HORIZONTAL_OR_VERTICAL_LAYOUT):RefreshLayout()
end
function DungeonArmorFarmUI:refreshBottom()
local uiMap = self.root:genAllChildren()
local costVit = uiMap["dungeon_armor_farm_ui.bg.bg.btn.num"]
costVit:setText(GFunc.getRewardNum(self.armorData:getChallengeHpCost()))
local vitIcon = uiMap["dungeon_armor_farm_ui.bg.bg.btn.icon"]
GFunc.centerImgAndTx(vitIcon, costVit, 10)
uiMap["dungeon_armor_farm_ui.bg.bg.btn.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.SMASH))
end
return DungeonArmorFarmUI

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 44a414d855bfd2949a68c4e0fe7762fd
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,96 @@
local DungeonArmorFightUI = class("DungeonArmorFightUI", BaseUI)
local TASK_VIEW_CELL = "app/ui/dungeon_armor/cell/task_view_cell"
function DungeonArmorFightUI:ctor(params)
self.armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
self.chapterId = params.chapterId
self.config = self.armorData:getConfig(self.chapterId)
end
function DungeonArmorFightUI:isFullScreen()
return false
end
function DungeonArmorFightUI:getPrefabPath()
return "assets/prefabs/ui/dungeon_armor/dungeon_armor_fight_ui.prefab"
end
function DungeonArmorFightUI:onLoadRootComplete()
self:_display()
self:_addListeners()
end
function DungeonArmorFightUI:_display()
self:refreshTop()
self:refreshMiddle()
self:refreshBottom()
end
function DungeonArmorFightUI:_addListeners()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_fight_ui.bg.bg.btn"]:addClickListener(function()
ModuleManager.DungeonArmorManager:reqFight(self.chapterId)
end)
uiMap["dungeon_armor_fight_ui.bg.btn_close"]:addClickListener(function()
self:closeUI()
end)
end
function DungeonArmorFightUI:refreshTop()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_fight_ui.bg.title.tx_title"]:setText(self.config.chapter .. "-" .. self.config.stage)
uiMap["dungeon_armor_fight_ui.bg.bg.desc_3"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_6))
if not self.taskViewCells then
self.taskViewCells = {}
for i = 1, 3 do
self.taskViewCells[i] = CellManager:addCellComp(uiMap["dungeon_armor_fight_ui.bg.bg.banner.task_view_cell_" .. i], TASK_VIEW_CELL)
end
end
for index, cell in ipairs(self.taskViewCells) do
cell:refresh(self.armorData:getStarStarId(self.chapterId, index), self.armorData:getStarDone(self.chapterId, index), self.armorData:getStarReward(self.chapterId, index))
end
end
function DungeonArmorFightUI:refreshMiddle()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_fight_ui.bg.bg.desc_1"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_5))
local rewardNode = uiMap["dungeon_armor_fight_ui.bg.bg.reward_node"]
if not self.rewardCells then
self.rewardCells = {}
for i = 1, 4 do
self.rewardCells[i] = CellManager:addCellComp(uiMap["dungeon_armor_fight_ui.bg.bg.reward_node.reward_cell_" .. i], GConst.TYPEOF_LUA_CLASS.REWARD_CELL)
end
end
for index, cell in ipairs(self.rewardCells) do
local reward = self.config.item_show[index]
cell:getBaseObject():setActive(reward ~= nil)
if reward ~= nil then
cell:refreshByConfig(reward)
cell:hideCountTx()
end
end
rewardNode:getComponent(GConst.TYPEOF_UNITY_CLASS.BF_HORIZONTAL_OR_VERTICAL_LAYOUT):RefreshLayout()
end
function DungeonArmorFightUI:refreshBottom()
local uiMap = self.root:genAllChildren()
local costVit = uiMap["dungeon_armor_fight_ui.bg.bg.btn.num"]
costVit:setText(GFunc.getRewardNum(self.armorData:getChallengeHpCost()))
local vitIcon = uiMap["dungeon_armor_fight_ui.bg.bg.btn.icon"]
GFunc.centerImgAndTx(vitIcon, costVit, 10)
uiMap["dungeon_armor_fight_ui.bg.bg.btn.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.TASK_CHALLENGE))
end
return DungeonArmorFightUI

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 75ba34deb9440d146ab98c4799a992d3
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,129 @@
local DungeonArmorMainUI = class("DungeonArmorMainUI", BaseUI)
local CHAPTER_LAYER_CELL = "app/ui/dungeon_armor/cell/chapter_cell"
function DungeonArmorMainUI:getCurrencyParams()
if self.currencyParams == nil then
self.currencyParams = {
itemIds = {
GConst.ItemConst.ITEM_ID_GEM,
GConst.ItemConst.ITEM_ID_VIT,
},
showType = GConst.CURRENCY_TYPE.HORIZONTAL
}
end
return self.currencyParams
end
function DungeonArmorMainUI:getPrefabPath()
return "assets/prefabs/ui/dungeon_armor/dungeon_armor_main_ui.prefab"
end
function DungeonArmorMainUI:ctor()
self.armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
self.chapterList = {}
self.targetId = self.armorData:getPassedMaxId()
for id, info in pairs(ConfigManager:getConfig("chapter_dungeon_armor")) do
table.insert(self.chapterList, id)
if not self.targetId then
self.targetId = id
end
if id == self.armorData:getPassedMaxId() + 1 and self.armorData:canFightChapter(id) then -- 最大可挑战章节
self.targetId = id
end
end
self.targetId = math.max(1, self.targetId)
end
function DungeonArmorMainUI:onLoadRootComplete()
self:_display()
self:_addListeners()
self:_bind()
end
function DungeonArmorMainUI:_display()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_main_ui.banner.btn_formation.tx_ok"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_WEAPON_DESC_4))
self:refreshScrollrect()
self:refreshFormation()
self:refreshStarNode()
end
function DungeonArmorMainUI:_addListeners()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_main_ui.banner.btn_back"]:addClickListener(function()
self:closeUI()
end)
uiMap["dungeon_armor_main_ui.banner.btn_formation"]:addClickListener(function()
ModuleManager.CommonManager:showFormationUI(GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR)
end)
uiMap["dungeon_armor_main_ui.banner.star_node"]:addClickListener(function()
ModuleManager.DungeonArmorManager:showStarRewardUI()
end)
self:addEventListener(EventManager.CUSTOM_EVENT.GO_SHOP, function()
self:closeUI()
end)
end
function DungeonArmorMainUI:_bind()
self:bind(self.armorData, "isDirty", function()
self:refreshFormation()
self:refreshStarNode()
end)
self:bind(DataManager.FormationData, "dirty", function()
self:refreshFormation()
end)
self:bind(DataManager.HeroData, "isDirty", function()
self:refreshFormation()
end)
end
function DungeonArmorMainUI:refreshScrollrect()
if not self.scrollRect then
local uiMap = self.root:genAllChildren()
self.scrollRect = uiMap["dungeon_armor_main_ui.scrollrect"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.SCROLL_RECT_BASE)
self.scrollRect:addInitCallback(function()
return CHAPTER_LAYER_CELL
end)
self.scrollRect:addRefreshCallback(function(index, cell)
cell:refresh(self.chapterList[index])
end)
end
self.scrollRect:refillCells(#self.chapterList, nil, self.targetId)
end
function DungeonArmorMainUI:refreshFormation()
if not self.formationComp then
local uiMap = self.root:genAllChildren()
self.formationComp = uiMap["dungeon_armor_main_ui.hero_formation_comp"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.HERO_FORMATION_COMP)
end
self.formationComp:refreshByFormation(DataManager.FormationData:getDungeonArmorFormation())
end
function DungeonArmorMainUI:refreshStarNode()
local uiMap = self.root:genAllChildren()
local pSlider = uiMap["dungeon_armor_main_ui.banner.star_node.p_slider"]
local pTx = uiMap["dungeon_armor_main_ui.banner.star_node.p_tx"]
local id, progress, totalProgress = self.armorData:getMinStarTarget()
if progress <= 0 then
progress = 0
end
if totalProgress <= 0 then
totalProgress = 1
end
pTx:setText(progress .. "/" .. totalProgress)
pSlider:getComponent(GConst.TYPEOF_UNITY_CLASS.BF_SLIDER).value = progress / totalProgress
end
return DungeonArmorMainUI

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 18b8f7eede61bbc459fcf5b504a893fd
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -0,0 +1,73 @@
local DungeonArmorStarRewardUI = class("DungeonArmorStarRewardUI", BaseUI)
local STAR_REWARD_CELL = "app/ui/dungeon_armor/cell/star_reward_cell"
function DungeonArmorStarRewardUI:ctor()
self.armorData = DataManager.DungeonData:getDungeonDataByType(ModuleManager.MODULE_KEY.DUNGEON_ARMOR)
self.starList = {}
for id, info in ipairs(ConfigManager:getConfig("chapter_dungeon_armor_reward")) do
table.insert(self.starList, info)
end
end
function DungeonArmorStarRewardUI:isFullScreen()
return false
end
function DungeonArmorStarRewardUI:getPrefabPath()
return "assets/prefabs/ui/dungeon_armor/dungeon_armor_star_reward_ui.prefab"
end
function DungeonArmorStarRewardUI:onLoadRootComplete()
self:_display()
self:_addListeners()
self:_bind()
end
function DungeonArmorStarRewardUI:_display()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_star_reward_ui.bg.title.tx_title"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_8))
self.allStarNum = self.armorData:getAllStarNum()
uiMap["dungeon_armor_star_reward_ui.bg.bg.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_9, self.allStarNum))
uiMap["dungeon_armor_star_reward_ui.bg.bg.btn.desc"]:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_11))
self:refreshScrollrect()
end
function DungeonArmorStarRewardUI:_addListeners()
local uiMap = self.root:genAllChildren()
uiMap["dungeon_armor_star_reward_ui.bg.bg.btn"]:addClickListener(function()
self:closeUI()
end)
uiMap["dungeon_armor_star_reward_ui.bg.btn_close"]:addClickListener(function()
self:closeUI()
end)
end
function DungeonArmorStarRewardUI:_bind()
self:bind(self.armorData, "isDirty", function()
self:_display()
end)
end
function DungeonArmorStarRewardUI:refreshScrollrect()
if self.scrollRect then
self.scrollRect:updateAllCell()
return
end
local uiMap = self.root:genAllChildren()
self.scrollRect = uiMap["dungeon_armor_star_reward_ui.bg.bg.scrollrect"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.SCROLL_RECT_BASE)
self.scrollRect:addInitCallback(function()
return STAR_REWARD_CELL
end)
self.scrollRect:addRefreshCallback(function(index, cell)
local got = self.armorData:getStarRewardGot(index)
cell:refresh(index, self.starList[index], got, self.allStarNum)
end)
self.scrollRect:clearCells()
self.scrollRect:refillCells(#self.starList)
end
return DungeonArmorStarRewardUI

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 82d997d9fdb94094394aff65b168a4e9
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 3b8b241bab4a4ac9a22fcce9c64f1242, type: 3}

View File

@ -57,6 +57,10 @@ function DungeonWeaponMainUI:_addListeners()
uiMap["dungeon_weapon_mian_ui.banner.btn_formation"]:addClickListener(function()
ModuleManager.CommonManager:showFormationUI(GConst.BattleConst.FORMATION_TYPE.DUNGEON_WEAPON)
end)
self:addEventListener(EventManager.CUSTOM_EVENT.GO_SHOP, function()
self:closeUI()
end)
end
function DungeonWeaponMainUI:_bind()
@ -69,7 +73,7 @@ function DungeonWeaponMainUI:_bind()
self:refreshFormation()
end)
self:bind(DataManager.FormationData, "isDirty", function()
self:bind(DataManager.HeroData, "isDirty", function()
self:refreshFormation()
end)
end

View File

@ -93,6 +93,8 @@ function HeroComp:refresh(battleType)
self:refreshArenaDefendFormation()
elseif self.battleType == GConst.BattleConst.FORMATION_TYPE.DUNGEON_WEAPON then
self:refreshDungeonWeaponFormation()
elseif self.battleType == GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR then
self:refreshDungeonArmorFormation()
end
end
@ -151,6 +153,20 @@ function HeroComp:refreshDungeonWeaponFormation()
self:refreshScrollRect()
end
-- 展示支线副本
function HeroComp:refreshDungeonArmorFormation()
self.txTitle:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_4))
self.rimgTopBG:setTexture("assets/arts/textures/background/hero/hero_bg_1.png")
self.curFormation = DataManager.FormationData:getDungeonArmorFormation()
self.onClickUseFunc = function(id, type)
DataManager.FormationData:upHeroToFormation(self.battleType, type, id)
self:refreshDungeonArmorFormation()
end
self:refreshScrollRect()
end
function HeroComp:refreshScrollRect()
for i = 1, 5 do
local heroId = self.curFormation[i]

View File

@ -2,19 +2,55 @@ local DungeonBaseEntity = require "app/userdata/dungeon/dungeon_base_entity"
local DungeonArmorEntity = class("DungeonArmorEntity", DungeonBaseEntity)
-- 支线副本数据
function DungeonArmorEntity:clear()
DataManager:unregisterCrossDayFunc("DungeonWeaponEntity")
end
function DungeonArmorEntity:init(data)
self.maxPassedId = data.max_challenge_id
self.armorInfo = data.armor_info
self.farmCount = data.farm_count
self.heroes = data.heroes
self.maxPassedId = data.max_challenge_id or 0
self.armorInfo = data.armor_info or {}
self.farmCount = data.farm_count or {}
self.heroes = data.heroes or {}
self.starRewards = data.star_rewards or {}
self.fundRewards = data.fund_rewards
self.giftInfo = data.gift_info
self.totalChallengeCount = data.total_challenge_count
DataManager.FormationData:initDungeonArmor(self.heroes)
DataManager:registerCrossDayFunc("DungeonArmorEntity", function()
self.farmCount = table.clear(self.farmCount)
self:setDirty()
end)
end
function DungeonArmorEntity:refreshInfoOnSettlement(chapterId, result)
self.totalChallengeCount[chapterId] = (self.totalChallengeCount[chapterId] or 0) + 1
self.maxPassedId = result.max_id
self.giftInfo = result.gift_info
self.armorInfo[chapterId] = result.armor_info
self:setDirty()
end
function DungeonArmorEntity:refreshInfoOnFarm(chapterId, result)
self.farmCount[chapterId] = (self.farmCount[chapterId] or 0) + 1
self.giftInfo = result.gift_info
self:setDirty()
end
function DungeonArmorEntity:getStarReward(starId)
self.starRewards[starId] = true
end
function DungeonArmorEntity:setDirty()
self.data.isDirty = not self.data.isDirty
end
function DungeonArmorEntity:getTotalChallengeCount()
return self.totalChallengeCount
local count = 0
for _, c in pairs(self.totalChallengeCount) do
count = count + 1
end
end
function DungeonArmorEntity:getTodayChallengeCount()
@ -33,6 +69,10 @@ function DungeonArmorEntity:getModuleKey()
return ModuleManager.MODULE_KEY.DUNGEON_ARMOR
end
function DungeonArmorEntity:getConfig(chapterId)
return ConfigManager:getConfig(self:getConfigName())[chapterId]
end
function DungeonArmorEntity:getConfigName()
return "chapter_dungeon_armor"
end
@ -65,7 +105,165 @@ function DungeonArmorEntity:isNoTotalLimit()
return true
end
function DungeonBaseEntity:isNotShowLimitCount()
return true
end
function DungeonArmorEntity:onClickFight()
ModuleManager.DungeonArmorManager:showMainUI()
end
function DungeonArmorEntity:getStagePassEnough(chapterId)
local config = self:getConfig(chapterId)
if not config then
return false
end
if config.main_chapter and not DataManager.ChapterData:getChapterPassed(config.main_chapter) then
return false
end
return true
end
function DungeonArmorEntity:canFightChapter(chapterId)
if not chapterId then
return false
end
if chapterId <= self.maxPassedId + 1 then
if self:getStagePassEnough(chapterId) then
return true
end
end
return false
end
function DungeonArmorEntity:canFarmChapter(chapterId)
if not chapterId then
return false
end
if self.maxPassedId >= chapterId then
if self:getStarNum(chapterId) >= 3 then
return true
end
end
return false
end
function DungeonArmorEntity:getDialyFarmLimit(chapterId)
local config = self:getConfig(chapterId)
if not config then
return 0
end
return config.sweep
end
function DungeonArmorEntity:getFarmCount(chapterId)
return self.farmCount[chapterId] or 0
end
function DungeonArmorEntity:getRemianFarmCount(chapterId)
local count = self:getDialyFarmLimit(chapterId) - self:getFarmCount(chapterId)
if count < 0 then
count = 0
end
return count
end
function DungeonArmorEntity:getStarRewardGot(star)
return self.starRewards[star]
end
function DungeonArmorEntity:getStarNum(chapterId)
if not self.armorInfo[chapterId] then
return 0
end
return #self.armorInfo[chapterId].stars
end
function DungeonArmorEntity:getAllStarNum()
if not self.armorInfo then
return 0
end
local count = 0
for id, info in pairs(self.armorInfo) do
count = count + #info.stars
end
return count
end
function DungeonArmorEntity:getMinStarTarget()
local count = ConfigManager:getConfigNum("chapter_dungeon_armor_reward")
local id
local nextTarget
for i = 1, count do
if not self:getStarRewardGot(i) then
id = i
nextTarget = ConfigManager:getConfig("chapter_dungeon_armor_reward")[id].star
break
end
end
if not id then -- 全部领完
id = count
nextTarget = ConfigManager:getConfig("chapter_dungeon_armor_reward")[id].star
return id, nextTarget, nextTarget
end
local starNum = self:getAllStarNum()
local lastStarNum = 0
local lastConfig = ConfigManager:getConfig("chapter_dungeon_armor_reward")[id - 1]
if lastConfig then -- 不是第一个
lastStarNum = lastConfig.star
end
local progress = starNum - lastStarNum
local totalProgress = nextTarget - lastStarNum
return id, progress, totalProgress
end
function DungeonArmorEntity:getStarDone(chapterId, index)
if not self.armorInfo[chapterId] then
return false
end
for i, info in ipairs(self.armorInfo[chapterId]) do
for _, star in ipairs(info.stars) do
if star == index then
return true
end
end
end
return false
end
function DungeonArmorEntity:getStarReward(chapterId, index)
local config = self:getConfig(chapterId)
return config.star_task_reward[index]
end
function DungeonArmorEntity:getStarStarId(chapterId, index)
local config = self:getConfig(chapterId)
return config.star_task[index - 1]
end
function DungeonArmorEntity:getStarInfo(chapterId)
return self.armorInfo[chapterId]
end
function DungeonArmorEntity:setCurFightChapterId(chapterId)
self.curFightchapterId = chapterId or 1
end
function DungeonArmorEntity:getCurFightChapterId()
return self.curFightchapterId or 1
end
function DungeonArmorEntity:getChapterFightCount(chapterId)
return self.totalChallengeCount[chapterId] or 0
end
return DungeonArmorEntity

View File

@ -104,6 +104,10 @@ function DungeonBaseEntity:isNoTotalLimit()
return false
end
function DungeonBaseEntity:isNotShowLimitCount()
return false
end
function DungeonBaseEntity:onClickFight()
UIManager:showUI("app/ui/dungeon/dungeon_difficulty_ui", {module = self:getModuleKey()})
end

View File

@ -461,6 +461,10 @@ function DungeonData:isNoTotalLimit(moduleKey)
return self.dataDungeons[moduleKey]:isNoTotalLimit()
end
function DungeonData:isNotShowLimitCount(moduleKey)
return self.dataDungeons[moduleKey]:isNotShowLimitCount()
end
function DungeonData:onClickFight(moduleKey)
self.dataDungeons[moduleKey]:onClickFight()
end

View File

@ -60,6 +60,20 @@ function FormationData:initDungeonWeapon(heroes)
end
end
function FormationData:initDungeonArmor(heroes)
if self.formations == nil then
self.formations = {}
end
self.formations[GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR] = {}
for idx, id in pairs(heroes) do
if id and id ~= 0 then
local matchType = DataManager.HeroData:getHeroById(id):getMatchType()
self.formations[GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR][matchType] = id
end
end
end
function FormationData:getStageFormation()
return self:getFormation(GConst.BattleConst.FORMATION_TYPE.STAGE)
end
@ -81,6 +95,15 @@ function FormationData:getDungeonWeaponFormation()
return formation
end
function FormationData:getDungeonArmorFormation()
local formation = self:getFormation(GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR)
if table.nums(formation) <= 0 then
self:setFormation(GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR, self:getFormation(GConst.BattleConst.FORMATION_TYPE.STAGE)) -- 如果没有,则用默认关卡
formation = self:getFormation(GConst.BattleConst.FORMATION_TYPE.DUNGEON_ARMOR)
end
return formation
end
function FormationData:getFormation(formationType)
local formation = self.formations[formationType]
if formation == nil then