This commit is contained in:
puxuan 2025-05-27 00:08:22 +08:00
parent f84f24a588
commit f18ab0ee83
35 changed files with 7477 additions and 8650 deletions

View File

@ -1,145 +1,72 @@
local hero = {
[12001]={
["name"]="舞娘",
["desc"]="扇子好看吗,打人的时候更好看哟。"
},
[13001]={
["name"]="克劳德",
["desc"]="他一跃而起,扛起巨剑,犹如旋风般使出连击。"
},
[13002]={
["name"]="火旺",
["desc"]="有谁不服,就是梆梆两拳,打到服为止,打不过另说。"
["name"]="熔芯"
},
[14001]={
["name"]="亚历山大",
["desc"]="没人能抗住亚历山大的钢铁重击,如果扛住了,那就再来一击。"
["name"]="过热小莫"
},
[14002]={
["name"]="潘达",
["desc"]="潘达厉害的可不止爪子,还有鞭炮。"
[15001]={
["name"]="火花姬"
},
[14003]={
["name"]="恶魔侍者",
["desc"]="像闪电一样,不停地攻击!!!!"
[15002]={
["name"]="废铁老爹"
},
[14004]={
["name"]="祥瑞魅狐"
},
[22001]={
["name"]="刀妹",
["desc"]="剑一出鞘,必要见血。"
[16001]={
["name"]="血祭修女"
},
[23001]={
["name"]="野蛮人",
["desc"]="最有效的伤害,往往要采用最朴素的殴打方式。"
},
[23002]={
["name"]="二丫",
["desc"]="牛仔的击剑术,敌人和我,只能活一个"
["name"]="甲虫武士"
},
[24001]={
["name"]="巨剑魔童",
["desc"]="我可能拿不起巨剑,但不妨碍我用它轰人。"
["name"]="平底锅战神"
},
[24002]={
["name"]="索尔",
["desc"]="想试试雷神之锤的威力吗。"
[25001]={
["name"]="科技狼人"
},
[24003]={
["name"]="阿飞",
["desc"]="手中的太刀如龙飞舞那是无与伦比的剑术。"
[25002]={
["name"]="电锤狂战"
},
[24004]={
["name"]="",
["desc"]="暂时不写,也用不到!"
},
[32001]={
["name"]="洋葱头",
["desc"]="盾牌只是为了掩饰下一次突刺。"
[26001]={
["name"]="闪送雷神"
},
[33001]={
["name"]="小鹿",
["desc"]="温柔又单纯的森林子民,与生俱来的是治疗的能力。"
},
[33002]={
["name"]="森林狼",
["desc"]="嗷嗷嗷嗷嗷嗷嗷嗷嗷——————。"
["name"]="荒野镖客"
},
[34001]={
["name"]="木兰",
["desc"]="这一箭下去你可能会死。"
["name"]="光合特工"
},
[34002]={
["name"]="梦魔",
["desc"]="来找点乐子吧!"
[35001]={
["name"]="快递仙人"
},
[34003]={
["name"]="忍者菲尔",
["desc"]="迅猛如风,保护水之王国免受邪恶势力的侵害。"
},
[34004]={
["name"]="绿意之刺",
["desc"]="暂时不写,也用不到!"
},
[42001]={
["name"]="冰心",
["desc"]="我的心和我的法术一样冰冷。"
[35002]={
["name"]="树懒镖师"
},
[43001]={
["name"]="冰女",
["desc"]="我喜欢冰块,你也要来一块吗。"
},
[43002]={
["name"]="鸦姐",
["desc"]="我这把可是沾满毒药的匕首。"
["name"]="气泡柴犬"
},
[44001]={
["name"]="寒冰妖姬",
["desc"]="有人持剑起舞,寒冰妖姬用剑让敌人起舞。"
["name"]="海的女儿"
},
[44002]={
["name"]="艳后",
["desc"]="美丽也是一种武器。"
[45001]={
["name"]="冰鲜队长"
},
[44003]={
["name"]="月之法师",
["desc"]="在她的月轮双刃下,夜晚的星辰在她的指尖舞动,魔法的月光照亮了她无限的智慧~"
},
[44004]={
["name"]="牧魂者",
["desc"]="暂时不写,也用不到!"
},
[52001]={
["name"]="忍者伦",
["desc"]="虽然带的是手里剑,但是最擅长的还是护盾术,忍者伦最大的愿望还是世界和平。"
[45002]={
["name"]="外卖天使"
},
[53001]={
["name"]="魔女琪琪",
["desc"]="魔女琪琪的魔法扫帚,不仅能扫地,还能扫人。"
},
[53002]={
["name"]="灵魂猎手",
["desc"]="这玩意儿可比用牙吸血好用多啦。"
["name"]="圣盾卫士"
},
[54001]={
["name"]="刀姬",
["desc"]="蝴蝶破茧而出,美丽又坚韧,坚韧的不止是内心,还有手里同样美丽的长刀。"
["name"]="混沌巫师"
},
[54002]={
["name"]="闪烁法师",
["desc"]="邪恶在此终结。"
[55001]={
["name"]="血族快递伯爵"
},
[54003]={
["name"]="堕落骑士",
["desc"]="曾经王国中最杰出的骑士之一,命运使他堕落成为一名诅咒巨剑的使用者。"
},
[54004]={
["name"]="女武神",
["desc"]="暂时不写,也用不到!"
[55002]={
["name"]="死灵法师"
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,111 +1,72 @@
local hero = {
[12001]={
},
[13001]={
},
[13002]={
},
[14001]={
},
[14002]={
[15001]={
},
[14003]={
[15002]={
},
[14004]={
},
[22001]={
[16001]={
},
[23001]={
},
[23002]={
},
[24001]={
},
[24002]={
[25001]={
},
[24003]={
[25002]={
},
[24004]={
},
[32001]={
[26001]={
},
[33001]={
},
[33002]={
},
[34001]={
},
[34002]={
[35001]={
},
[34003]={
},
[34004]={
},
[42001]={
[35002]={
},
[43001]={
},
[43002]={
},
[44001]={
},
[44002]={
[45001]={
},
[44003]={
},
[44004]={
},
[52001]={
[45002]={
},
[53001]={
},
[53002]={
},
[54001]={
},
[54002]={
[55001]={
},
[54003]={
},
[54004]={
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="Dancer",
["desc"]="Isn't this fan a sight to behold? It's even more beautiful when smacking enemies"
},
[13001]={
["name"]="Claude",
["desc"]="With a graceful leap, he hoists his claymore, unleashing a whirlwind of hits."
},
[13002]={
["name"]="Flare",
["desc"]="Challenge me if you dare, surrender before my punches, or... I'll surrender."
},
[14001]={
["name"]="Alexander",
["desc"]="No one can withstand Alexander's Steel Strike. If they do, I'll just strike again."
},
[14002]={
["name"]="Panda",
["desc"]="Panda's prowess extends beyond its claws—firecrackers add to the spectacle."
[15001]={
},
[14003]={
["name"]="Devil Waiter",
["desc"]="Attacking incessantly like lightning!!!!"
[15002]={
},
[14004]={
["name"]="Auspicious Fox"
},
[22001]={
["name"]="Blade Maid",
["desc"]="Once the sword is drawn, blood will be spilled."
[16001]={
},
[23001]={
["name"]="Barbarian",
["desc"]="The simplest fighting method does the most damage."
},
[23002]={
["name"]="Er-Ya",
["desc"]="When ya fence with a cowboy, between you and I, only one's making it out alive."
},
[24001]={
["name"]="Claymore Kid",
["desc"]="I may not be able to lift the claymore, but it won't stop me from smashing people with it."
},
[24002]={
["name"]="Thor",
["desc"]="Want to test the might of Mjolnir?"
[25001]={
},
[24003]={
["name"]="Ferris",
["desc"]="The katana in his hand dances like a dragon. That's unparalleled swordsmanship."
[25002]={
},
[24004]={
["name"]="Lee"
},
[32001]={
["name"]="Onion",
["desc"]="The shield is a mere disguise for the next thrust."
[26001]={
},
[33001]={
["name"]="Fawn",
["desc"]="Gentle and innocent forest dwellers possess innate healing abilities."
},
[33002]={
["name"]="Timberwolf",
["desc"]="Aooooooooh!"
},
[34001]={
["name"]="Mulan",
["desc"]="This arrow might be your end."
},
[34002]={
["name"]="Nightmare",
["desc"]="Come have some fun!"
[35001]={
},
[34003]={
["name"]="Ninja Phil",
["desc"]="Swift as the wind, protecting the Water Kingdom from the evil forces."
},
[34004]={
["name"]="Verdant Thorn"
},
[42001]={
["name"]="Iceheart",
["desc"]="My heart is as icy as my spells."
[35002]={
},
[43001]={
["name"]="Ice Maiden",
["desc"]="I love ice cubes. Want one?"
},
[43002]={
["name"]="Raven",
["desc"]="My dagger is laced with poison."
},
[44001]={
["name"]="Frost Enchantress",
["desc"]="Some dance with their sword, Frost Enchantress uses hers to make her enemies dance."
},
[44002]={
["name"]="Cleopatra",
["desc"]="Beauty wields its own charm as a weapon."
[45001]={
},
[44003]={
["name"]="Lunar Mage",
["desc"]="Beneath her chakram, the stars of the night dance at her fingertips, as the magical moonlight illuminates her boundless wisdom~"
},
[44004]={
["name"]="Soul Herder"
},
[52001]={
["name"]="Ninja Lun",
["desc"]="Though I carry shurikens, I'm the best at Shield Art. A ninja's ultimate goal is world peace."
[45002]={
},
[53001]={
["name"]="Witch Kiki",
["desc"]="Witch Kiki's enchanted broomstick sweeps the floor with the enemies."
},
[53002]={
["name"]="Soul Hunter",
["desc"]="It's much handier than sucking blood with teeth."
},
[54001]={
["name"]="Bellona",
["desc"]="The butterfly emerges, beautiful and resilient, just like the graceful blade in my hand."
},
[54002]={
["name"]="Twinkling Mage",
["desc"]="Evil meets its demise here and now."
[55001]={
},
[54003]={
["name"]="Fallen Knight",
["desc"]="Once one of the most distinguished knights in the kingdom. Fate turned him into a cursed claymore wielder."
},
[54004]={
["name"]="Valkyrie"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="Bailarina",
["desc"]="¿Mi abanico es bonito? Será más bonito como un arma."
},
[13001]={
["name"]="Claude",
["desc"]="Él salta recogiendo la espada gigante e hizo hists como un torbellino."
},
[13002]={
["name"]="Flama",
["desc"]="Si alguien le desafía, le da puñetazos hasta rendirle. Otra historia si no puede."
},
[14001]={
["name"]="Alejandro",
["desc"]="Nadie puede resistir el Golpe de Acero de Alejandro. Si lo resite, recibe otro golpe."
},
[14002]={
["name"]="Panda",
["desc"]="Panda no solo es bueno con las garras, sino también con los petardos."
[15001]={
},
[14003]={
["name"]="Sirviente Diablo",
["desc"]="Ataca incesantemente como un rayo."
[15002]={
},
[14004]={
["name"]="Zorra Auspiciosa"
},
[22001]={
["name"]="Chica con Daga",
["desc"]="Cuando se desenvaina la espada, debe verse sangre."
[16001]={
},
[23001]={
["name"]="Bárbaro",
["desc"]="El daño más efectivo a menudo toma la forma más simple de golpear."
},
[23002]={
["name"]="Erya",
["desc"]="Con el esgrima de vaquero, solo sobrevive una persona entre el enemigo y yo."
},
[24001]={
["name"]="Espadachín",
["desc"]="Puede que yo no sea capaz de sostener una espada gigante, pero eso no me impide golpear a la gente con ella."
},
[24002]={
["name"]="Sol",
["desc"]="¿Quieres probar el poder del Martillo de Thor?"
[25001]={
},
[24003]={
["name"]="Matón",
["desc"]="La katana que tiene en la mano vuela como un dragón, es una esgrima incomparable."
[25002]={
},
[24004]={
["name"]="Lee"
},
[32001]={
["name"]="Cabeza de Cebolla",
["desc"]="El escudo es solo para cubrir el próximo ataque."
[26001]={
},
[33001]={
["name"]="Ciervo",
["desc"]="Amable e inocente, habitante del bosque que nace con la habilidad de curar."
},
[33002]={
["name"]="Lobo del Bosque",
["desc"]="Auuuuuuuuu..."
},
[34001]={
["name"]="Mulán",
["desc"]="Puedes morir con esta flecha."
},
[34002]={
["name"]="Íncubo",
["desc"]="¡Ven a divertirte!"
[35001]={
},
[34003]={
["name"]="Ninja Phil",
["desc"]="Veloz como viento, y protege el Reino del Agua de las fuerzas del mal."
},
[34004]={
["name"]="Espina de Verdor"
},
[42001]={
["name"]="Alma Glacial",
["desc"]="Mi corazón es tan frío como mis hechizos."
[35002]={
},
[43001]={
["name"]="Doncella de Hielo",
["desc"]="Me encanta el hielo. ¿Quieres un cubito también?"
},
[43002]={
["name"]="Eileen",
["desc"]="Mi daga está cubierta de veneno."
},
[44001]={
["name"]="Hechicera de Hielo",
["desc"]="Hay gente que baila con una espada, pero con su espada Hechicera de Hielo hace bailar al enemigo."
},
[44002]={
["name"]="Cleopatra",
["desc"]="La belleza también es un arma."
[45001]={
},
[44003]={
["name"]="Maga Lunar",
["desc"]="Bajo su espada lunar, las estrellas bailan en la punta de sus dedos, y la mágica luz de la luna ilumina su infinita sabiduría."
},
[44004]={
["name"]="Pastor de Almas"
},
[52001]={
["name"]="Ninja Jay",
["desc"]="Aunque lleva shurikens, Ninja Jay es mejor en el Hechizo Escudo. Su mayor deseo de es la paz mundial."
[45002]={
},
[53001]={
["name"]="Bruja Kiki",
["desc"]="La escoba mágica de Bruja Kiki no solo puede barrer el suelo, sino también a los enemigos."
},
[53002]={
["name"]="Cazador de Almas",
["desc"]="Esto es mucho mejor que chupar sangre con los dientes."
},
[54001]={
["name"]="Bellona",
["desc"]="La mariposa emerge de su capullo. Tan hermosos y resistentes son su corazón y el hermoso cuchillo largo que lleva en la mano."
},
[54002]={
["name"]="Mago Brillante",
["desc"]="Aquí se acaba el mal."
[55001]={
},
[54003]={
["name"]="Jinete Caído",
["desc"]="Fue uno de los jinetes más distinguidos del reino, pero el destino lo ha corrompido para convertirle en un portador de la enorme espada maldecida."
},
[54004]={
["name"]="Valquiria"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,111 +1,72 @@
local hero = {
[12001]={
},
[13001]={
},
[13002]={
},
[14001]={
},
[14002]={
[15001]={
},
[14003]={
[15002]={
},
[14004]={
},
[22001]={
[16001]={
},
[23001]={
},
[23002]={
},
[24001]={
},
[24002]={
[25001]={
},
[24003]={
[25002]={
},
[24004]={
},
[32001]={
[26001]={
},
[33001]={
},
[33002]={
},
[34001]={
},
[34002]={
[35001]={
},
[34003]={
},
[34004]={
},
[42001]={
[35002]={
},
[43001]={
},
[43002]={
},
[44001]={
},
[44002]={
[45001]={
},
[44003]={
},
[44004]={
},
[52001]={
[45002]={
},
[53001]={
},
[53002]={
},
[54001]={
},
[54002]={
[55001]={
},
[54003]={
},
[54004]={
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="Dancer",
["desc"]="Apakah kipasnya terlihat bagus? Akan terlihat lebih bagus saat kamu memukul seseorang."
},
[13001]={
["name"]="Claude",
["desc"]="Dia melompat, mengayunkan pedang besarnya dan melakukan serangkaian pukulan seperti angin puyuh."
},
[13002]={
["name"]="Flare",
["desc"]="Siapa pun yang tidak menyukainya, cukup lakukan dua kali pukulan sampai yakin, lain cerita kalau kamu tidak bisa mengalahkannya."
},
[14001]={
["name"]="Alexander",
["desc"]="Tidak ada yang bisa menahan hantaman baja Alexander, dan jika menahannya, maka akan dipukul lagi."
},
[14002]={
["name"]="Panda",
["desc"]="Panda tidak hanya jago dalam cakarnya, tapi juga dalam petasan."
[15001]={
},
[14003]={
["name"]="Pelayan Demon",
["desc"]="Menyerang tanpa henti bagai kilat!!!"
[15002]={
},
[14004]={
["name"]="Rubah Mujur"
},
[22001]={
["name"]="Gadis Pedang",
["desc"]="Akan ada pertumpahan darah saat pedang terhunus."
[16001]={
},
[23001]={
["name"]="Barbarian",
["desc"]="DMG yang paling efektif sering kali berupa pukulan yang paling sederhana."
},
[23002]={
["name"]="Er-Ya",
["desc"]="Teknik Anggar Koboi, musuh dan aku, hanya satu yang bisa hidup"
},
[24001]={
["name"]="Bocah Pedang",
["desc"]="Aku mungkin tidak bisa mengangkat pedang raksasa, tapi itu tidak menghentikanku untuk meledakkan orang dengan pedang tsb."
},
[24002]={
["name"]="Thor",
["desc"]="Ingin mencoba kekuatan Palu Thor?"
[25001]={
},
[24003]={
["name"]="Avie",
["desc"]="Katana di tangannya menari-nari seperti naga. Itu adalah ilmu pedang yang tak tertandingi."
[25002]={
},
[24004]={
["name"]="Lee"
},
[32001]={
["name"]="Kepala Bawang",
["desc"]="Perisai hanya untuk menyamarkan tusukan berikutnya."
[26001]={
},
[33001]={
["name"]="Fawn",
["desc"]="Lembut dan sederhana, orang hutan terlahir dengan kemampuan untuk menyembuhkan."
},
[33002]={
["name"]="Timberwolf",
["desc"]="Aduh, aduh, aduh.............."
},
[34001]={
["name"]="Mulan",
["desc"]="Kamu mungkin akan mati di panah ini."
},
[34002]={
["name"]="Nightmare",
["desc"]="Datang dan bersenang-senanglah!"
[35001]={
},
[34003]={
["name"]="Ninja Phil",
["desc"]="Secepat angin, melindungi Kerajaan Air dari kekuatan jahat."
},
[34004]={
["name"]="Duri Hijau"
},
[42001]={
["name"]="Hati Es",
["desc"]="Hatiku sedingin mantraku."
[35002]={
},
[43001]={
["name"]="Gadis Es",
["desc"]="Aku suka es, kamu mau juga?"
},
[43002]={
["name"]="Raven",
["desc"]="Ini adalah belati beracun."
},
[44001]={
["name"]="Peri Es",
["desc"]="Seseorang menari dengan pedang, dan Peri Es menggunakan pedangnya membuat musuhnya menari."
},
[44002]={
["name"]="Cleopatra",
["desc"]="Keindahan juga merupakan senjata."
[45001]={
},
[44003]={
["name"]="Penyihir Lunar",
["desc"]="Bintang-bintang malam menari di ujung jari dan di bawah cakramnya, saat cahaya bulan yang ajaib menerangi kebijaksanaannya yang tak terbatas."
},
[44004]={
["name"]="Gembala"
},
[52001]={
["name"]="Ninja Jay",
["desc"]="Meskipun dengan pedang di tangan, skill terbaiknya adalah Seni Perisai dan harapan terbesar Ninja Jay adalah perdamaian dunia."
[45002]={
},
[53001]={
["name"]="Penyihir Kiki",
["desc"]="Penyihir Kiki tidak hanya menyapu lantai, tetapi juga manusia."
},
[53002]={
["name"]="Pemburu Jiwa",
["desc"]="Hal ini jauh lebih baik daripada menghisap darah dengan gigi."
},
[54001]={
["name"]="Gadis Pedang",
["desc"]="Kupu-kupu muncul dari kepompongnya, cantik dan tangguh, tidak hanya tangguh pada hatinya tetapi juga pada pisau panjang yang sama indah di tangannya."
},
[54002]={
["name"]="Blink Mage",
["desc"]="Di sinilah kejahatan berakhir."
[55001]={
},
[54003]={
["name"]="Ksatria Karunia",
["desc"]="Pernah menjadi salah satu ksatria paling terhormat di kerajaan. Takdir mengubahnya menjadi pengguna senjata tanah liat terkutuk."
},
[54004]={
["name"]="Valkyrie"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="ダンサー",
["desc"]="この扇は綺麗でしょう?戦う時はもっと綺麗よ。"
},
[13001]={
["name"]="クラウド ",
["desc"]="いつでもかかってこいや!"
},
[13002]={
["name"]="フレア",
["desc"]="文句があるならこの拳に言って、納得まで殴ってやる。"
},
[14001]={
["name"]="アレキサンダー",
["desc"]="俺のヘヴィーヒットに耐えられる者はいない。いってももう一回叩くだけだ。"
},
[14002]={
["name"]="パンダ",
["desc"]="引っ掻きはもちろん、クラッカーも得意なんだぜ。"
[15001]={
},
[14003]={
["name"]="デビルウェイター",
["desc"]="稲妻のように、攻撃を止めるな!!!!"
[15002]={
},
[14004]={
["name"]="幸運のキツネ"
},
[22001]={
["name"]="ブレードメイド",
["desc"]="この剣が鞘から抜かれる時は誰かを屠る時だけだ。"
[16001]={
},
[23001]={
["name"]="バルバロイ",
["desc"]="最も効果的なダメージは、案外な地味な攻撃に属する。"
},
[23002]={
["name"]="丫ちゃん",
["desc"]="敵か私か、一人しか生き残れない。"
},
[24001]={
["name"]="大剣魔童",
["desc"]="巨大な剣は持ち上げられないが、人を吹き飛ばすことはできる。"
},
[24002]={
["name"]="ソー",
["desc"]="試してみるか、こいつの威力を。"
[25001]={
},
[24003]={
["name"]="トビ",
["desc"]="手にした刀は龍の如く舞い、無類の剣技。"
[25002]={
},
[24004]={
["name"]=""
},
[32001]={
["name"]="タマネギ",
["desc"]="盾は次の突きを隠すもの。"
[26001]={
},
[33001]={
["name"]="シカ",
["desc"]="優しく素朴な森の民は、生まれながらに癒しの能力を持っている。"
},
[33002]={
["name"]="フォレストウルフ",
["desc"]="ガオォォオッ——————。"
},
[34001]={
["name"]="ムーラン",
["desc"]="矢を放ったら死ぬかもしれないよ。"
},
[34002]={
["name"]="夢魔",
["desc"]="一緒に楽しもう!"
[35001]={
},
[34003]={
["name"]="忍者フィル",
["desc"]="風のように素早く、邪悪な力から水の王国を守る。"
},
[34004]={
["name"]="緑の棘"
},
[42001]={
["name"]="氷心",
["desc"]="呪文のように冷たいの、私は。"
[35002]={
},
[43001]={
["name"]="氷女",
["desc"]="氷大好き!あなたもいかが?"
},
[43002]={
["name"]="レイヴン",
["desc"]="このナイフは毒がついているよ。"
},
[44001]={
["name"]="フロストエンチャントレス",
["desc"]="剣を持って踊る人がいるけど、私は剣で敵を踊らせる。"
},
[44002]={
["name"]="クレオパトラ",
["desc"]="美しさだって立派な武器です。"
[45001]={
},
[44003]={
["name"]="月の法師",
["desc"]="月の刃の下で、夜の星が彼女の指先で踊り、魔法の月光が彼女の無限の知恵を照らす~"
},
[44004]={
["name"]="ソウルハーダー"
},
[52001]={
["name"]="忍者リン",
["desc"]="手裏剣を持ち歩いているが、得意技はシールド術だ。最大の願いはやはり世界平和。"
[45002]={
},
[53001]={
["name"]="魔女キキ",
["desc"]="魔法のほうきは床だけでなく、人を掃くこともできる。"
},
[53002]={
["name"]="ソウルハンター",
["desc"]="これは噛んで血を吸うよりずっといい。"
},
[54001]={
["name"]="刀姫",
["desc"]="蝶は美しく頑丈。そう、手に持っているこの刀のように。"
},
[54002]={
["name"]="トゥインクリングメイジ",
["desc"]="ここが邪悪なるものの終着点。"
[55001]={
},
[54003]={
["name"]="堕落騎士",
["desc"]="かつて王国屈指の騎士であった彼は、運命に呪われ、呪いの剣の使い手となった。"
},
[54004]={
["name"]="ワルキューレ"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="무희",
["desc"]="이 부채 예쁘지 않아요? 사람을 공격할 땐 더 아름답죠."
},
[13001]={
["name"]="클로드",
["desc"]="그가 가볍게 날아올라 거대한 검을 짊어지고 회오리바람처럼 빠르게 연속 공격을 날립니다."
},
[13002]={
["name"]="블레이즈",
["desc"]="내 주먹맛을 보기 전까진 다들 계획이 있었지. 흠, 내가 이길 수 없는 놈은 빼고 말이야."
},
[14001]={
["name"]="알렉산더",
["desc"]="알렉산더의 강철 스트라이크를 버텨낼 수 있는 사람은 아무도 없어. 만약 존재한다면 한 번더 날려줘야지."
},
[14002]={
["name"]="판다",
["desc"]="판다는 날카로운 발톱을 가졌을 뿐만아니라 폭죽도 잘 터트립니다."
[15001]={
},
[14003]={
["name"]="악마 시종",
["desc"]="멈추지 않고 번개처럼 공격하라! ! ! !"
[15002]={
},
[14004]={
["name"]="상서로운 매혹의 여우"
},
[22001]={
["name"]="블레이드",
["desc"]="검이 칼자루를 떠났으니 반드시 피를 보겠구나."
[16001]={
},
[23001]={
["name"]="야만인",
["desc"]="가장 단순한 공격이 종종 가장 효과적인 방법이되기도 하지."
},
[23002]={
["name"]="에리아",
["desc"]="카우보이의 펜싱에서 적과 나 둘 중 오직 한 사람만 살아남을 수 있어."
},
[24001]={
["name"]="대검 마법 소년",
["desc"]="내가 대검을 들어 올릴 수 없을지라도 그것으로 사람을 날려버리는 건 아무 문제 없는걸."
},
[24002]={
["name"]="토르",
["desc"]="토르의 망치가 가진 힘을 시험해보고 싶은 건가?"
[25001]={
},
[24003]={
["name"]="아피",
["desc"]="손에 들린 태도의 움직임이 용이 춤을 추듯 하니 비할 데 없는 검술의 소유자."
[25002]={
},
[24004]={
["name"]=""
},
[32001]={
["name"]="양파 헤드",
["desc"]="보호막은 단지 곧 보여줄 폭발적인 힘을 숨기기 위한 위장일 뿐이야."
[26001]={
},
[33001]={
["name"]="아기 사슴",
["desc"]="온순하고 순박한 숲의 주민, 치유 능력을 타고났습니다."
},
[33002]={
["name"]="팀버울프",
["desc"]="우오오오오오오오오——————"
},
[34001]={
["name"]="뮬란",
["desc"]="이 화살 한 발에 넌 죽을 수도 있어."
},
[34002]={
["name"]="인큐버스",
["desc"]="재밌게 놀아보자고!"
[35001]={
},
[34003]={
["name"]="닌자 필",
["desc"]="바람처럼 빠르고 강력하게 물의 왕국을 사악한 세력의 침략으로부터 지켜내리라."
},
[34004]={
["name"]="초록의 가시"
},
[42001]={
["name"]="얼음의 심장",
["desc"]="내 심장은 내 주문만큼이나 차갑지."
[35002]={
},
[43001]={
["name"]="얼음의 여왕",
["desc"]="난 얼음이 좋아. 너도 한 조각 먹어볼래?"
},
[43002]={
["name"]="레이븐",
["desc"]="내 단검은 독으로 뒤덮인 비수야."
},
[44001]={
["name"]="프로스트 마녀",
["desc"]="누군가는 검을 들고 춤을 추지만 프로스트 마녀는 검으로 적을 춤추게 만들 수 있지."
},
[44002]={
["name"]="클레오파트라",
["desc"]="아름다움도 무기라고 할 수 있죠."
[45001]={
},
[44003]={
["name"]="달의 마법사",
["desc"]="그녀의 달빛 쌍날과 함께 밤하늘의 별들이 그녀의 손끝에서 춤을 추고 마법의 달빛이 그녀의 무한한 지혜를 비춰준다."
},
[44004]={
["name"]="영혼 헤럴드"
},
[52001]={
["name"]="닌자 룬",
["desc"]="가장 큰 소원이 세계 평화인 닌자 룬은 비록 수리검을 들었지만 보호막 기술에 최고로 능통합니다."
[45002]={
},
[53001]={
["name"]="마녀 키키",
["desc"]="마녀 키키의 마법 빗자루, 바닥도 쓸고 적도 쓸어버려!"
},
[53002]={
["name"]="소울 헌터",
["desc"]="이빨을 꽂고 피를 빠는 것보다 이게 훨씬 더 편해."
},
[54001]={
["name"]="칼날 공주",
["desc"]="아름답고 강한 나비가 고치를 뚫고 나옵니다. 강한 것은 나비의 심장뿐이 아니며 아름다운 것 역시 그의 손에 들린 긴 칼 뿐이 아닙니다."
},
[54002]={
["name"]="반짝이는 마법사",
["desc"]="여기가 바로 악의 무덤이야."
[55001]={
},
[54003]={
["name"]="타락한 기사",
["desc"]="한때 왕국에서 가장 뛰어난 기사 중 한 명이었지만, 운명은 그를 저주받은 거대한 검의 사용자로 타락시켰다."
},
[54004]={
["name"]="발키리"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="Dançarina",
["desc"]="O leque é bonito, não é? Fica ainda mais bonito quando usado para bater em alguém."
},
[13001]={
["name"]="Claude",
["desc"]="Ele salta, empunhando sua espada gigante, desferindo golpes como um furacão."
},
[13002]={
["name"]="Ignífico",
["desc"]="Se alguém desafiar, ele dará socos até que se renda. Se não conseguir vencer, é outra história."
},
[14001]={
["name"]="Alexandre",
["desc"]="Ninguém pode resistir ao golpe de aço de Alexandre. Se resistir, ele dará outro golpe."
},
[14002]={
["name"]="Panda",
["desc"]="O Panda não é apenas incrível com suas garras, mas também com fogos de artifício."
[15001]={
},
[14003]={
["name"]="Serviçal do Demônio",
["desc"]="Atacando sem parar, feito um relâmpago!!!!"
[15002]={
},
[14004]={
["name"]="Raposa Auspiciosa"
},
[22001]={
["name"]="Senhorita dos Gumes",
["desc"]="Quando a espada é desembainhada, deve ver sangue."
[16001]={
},
[23001]={
["name"]="Bárbaro",
["desc"]="O dano mais eficaz geralmente é aplicado com a forma mais simples de ataque."
},
[23002]={
["name"]="Ária",
["desc"]="A esgrima do cowboy: entre o inimigo e eu, apenas um pode sobreviver."
},
[24001]={
["name"]="Espadachim Titânico",
["desc"]="Eu posso não ser capaz de levantar a espada gigante, mas isso não me impede de usá-la para atacar pessoas."
},
[24002]={
["name"]="Thor",
["desc"]="Quer experimentar o poder do martelo de Thor?"
[25001]={
},
[24003]={
["name"]="Vândalo",
["desc"]="A catana em sua mão dança como um dragão, sua perícia com a espada é inigualável."
[25002]={
},
[24004]={
["name"]="Lee"
},
[32001]={
["name"]="Cabeça de Cebola",
["desc"]="O escudo serve apenas para disfarçar a próxima estocada."
[26001]={
},
[33001]={
["name"]="Cervinho",
["desc"]="Moradores gentis e inocentes da floresta, nascidos com habilidades de cura."
},
[33002]={
["name"]="Lobo das Matas",
["desc"]="Auuuuuuuuuuuuuuuuuuuuuuu!"
},
[34001]={
["name"]="Mulan",
["desc"]="Você pode morrer com esta flecha."
},
[34002]={
["name"]="Súcubo",
["desc"]="Vamos nos divertir!"
[35001]={
},
[34003]={
["name"]="Ninja Phil",
["desc"]="Veloz como o vento, ele protege o Reino da Água das forças do mal."
},
[34004]={
["name"]="Espinho do Verdor"
},
[42001]={
["name"]="Alma Glacial",
["desc"]="Meu coração é tão frio quanto a minha magia."
[35002]={
},
[43001]={
["name"]="Diamond",
["desc"]="Eu gosto de cubos de gelo, você também quer um?"
},
[43002]={
["name"]="Eileen",
["desc"]="Minha adaga está coberta de veneno."
},
[44001]={
["name"]="Fada Gelice",
["desc"]="Alguns dançam com a espada, a Princesa do Gelo faz seus inimigos dançarem com a espada."
},
[44002]={
["name"]="Cleópatra",
["desc"]="A beleza também é uma arma."
[45001]={
},
[44003]={
["name"]="Mago da Lua",
["desc"]="Sob suas lâminas da lua cheia, as estrelas da noite dançam nas pontas dos dedos dela, e o luar mágico ilumina sua infinita sabedoria~"
},
[44004]={
["name"]="Pastor de Almas"
},
[52001]={
["name"]="Luninja",
["desc"]="Embora ele carregue shurikens, sua maior habilidade é a magia do escudo. O maior desejo do ninja é a paz mundial."
[45002]={
},
[53001]={
["name"]="Feiticeira Kiki",
["desc"]="A vassoura mágica da bruxa Kiki não só varre o chão, mas também varre as pessoas."
},
[53002]={
["name"]="Caçador de Almas",
["desc"]="Isso é muito mais útil do que sugar sangue com os dentes."
},
[54001]={
["name"]="Princesa da Lâmina",
["desc"]="A borboleta emerge do casulo, bela e resiliente. A resiliência não está apenas no coração, mas também na bela espada longa que carrega."
},
[54002]={
["name"]="Mago do Brilho",
["desc"]="O mal termina aqui."
[55001]={
},
[54003]={
["name"]="Cavaleiro Caído",
["desc"]="Em outras épocas ele já foi um dos cavaleiros mais ilustres do reino, mas o destino o corrompeu e fez dele portador da espada larga amaldiçoada."
},
[54004]={
["name"]="Valquíria"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,111 +1,72 @@
local hero = {
[12001]={
},
[13001]={
},
[13002]={
},
[14001]={
},
[14002]={
[15001]={
},
[14003]={
[15002]={
},
[14004]={
},
[22001]={
[16001]={
},
[23001]={
},
[23002]={
},
[24001]={
},
[24002]={
[25001]={
},
[24003]={
[25002]={
},
[24004]={
},
[32001]={
[26001]={
},
[33001]={
},
[33002]={
},
[34001]={
},
[34002]={
[35001]={
},
[34003]={
},
[34004]={
},
[42001]={
[35002]={
},
[43001]={
},
[43002]={
},
[44001]={
},
[44002]={
[45001]={
},
[44003]={
},
[44004]={
},
[52001]={
[45002]={
},
[53001]={
},
[53002]={
},
[54001]={
},
[54002]={
[55001]={
},
[54003]={
},
[54004]={
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="สาวเต้น",
["desc"]="พัดลมดูดีไหม เมื่อตีใครสักคนจะดูดียิ่งขึ้นนะ"
},
[13001]={
["name"]="คลอดด์",
["desc"]="เขากระโดดขึ้น หยิบดาบยักษ์ขึ้นมา และทำคอมโบราวกับพายุหมุน"
},
[13002]={
["name"]="ไฟร้อน",
["desc"]="ถ้าใครไม่ยอมก็ชก ปัง ปัง ปัง จนกว่าจะยอมแพ้ ถ้าเอาชนะไม่ได้ก็แล้วแต่"
},
[14001]={
["name"]="อเล็กซานเดอร์",
["desc"]="ไม่มีใครสามารถต้านทานเหล็กตีหนักของอเล็กซานเดอร์ได้ และถ้าเขาทนได้ก็ตีอีกครั้ง"
},
[14002]={
["name"]="แพนด้า",
["desc"]="แพนด้าไม่เพียงเก่งเรื่องกรงเล็บ แต่ยังประทัดอีกด้วย"
[15001]={
},
[14003]={
["name"]="คนรับใช้ปีศาจ",
["desc"]="โจมตีต่อเนื่อง รวดเร็วดุจสายฟ้า!!!"
[15002]={
},
[14004]={
["name"]="จิ้งจอกมงคล"
},
[22001]={
["name"]="สาวดาบ",
["desc"]="เมื่อดาบถูกแกะออกก็ต้องเห็นเลือด"
[16001]={
},
[23001]={
["name"]="คนเถื่อน",
["desc"]="ดาเมจที่มีประสิทธิภาพที่สุดมักจะใช้รูปแบบที่ง่ายที่สุดในการตี"
},
[23002]={
["name"]="เอ่ยา",
["desc"]="ศิลปะฟันดาบของคาวบอย ศัตรูและฉัน มีเพียงหนึ่งเดียวที่จะรอกชีวิตได้"
},
[24001]={
["name"]="เด็กมารดาบ",
["desc"]="ฉันอาจไม่สามารถถือดาบยักษ์ขึ้นได้ แต่นั่นไม่ได้หยุดฉันจากการฟาดฟันผู้คนด้วยมัน"
},
[24002]={
["name"]="โซล",
["desc"]="อยากทอดลองพลังของค้อนของเทพสายฟ้าไหม?"
[25001]={
},
[24003]={
["name"]="เฟย",
["desc"]="แกว่งดาบทาชิในมือดุจมังกรร่ายรำ มั่นคือเพลงดาบที่ไร้เทียมทาน"
[25002]={
},
[24004]={
["name"]="หลี่"
},
[32001]={
["name"]="หัวหอม",
["desc"]="โล่เป็นเพียงเพื่อปกปิดการแทงครั้งหน้า"
[26001]={
},
[33001]={
["name"]="กวาง",
["desc"]="ชาวป่าที่อ่อนโยนและเรียบง่ายเกิดมาพร้อมกับความสามารถในการรักษา"
},
[33002]={
["name"]="หมาป่าป่า",
["desc"]="อร๊ายยยยยยยยยยยยยยยยยยยย------"
},
[34001]={
["name"]="มู่หลาน",
["desc"]="คุณอาจตายด้วยลูกศรนี้"
},
[34002]={
["name"]="ฝันร้าย",
["desc"]="มาสนุกกันเถอะ!"
[35001]={
},
[34003]={
["name"]="นินจาฟิล",
["desc"]="ว่องไวดั่งสายลม ปกป้องอาณาจักรแห่งน้ำจากการบุกรุกของกองกำลังชั่วร้าย"
},
[34004]={
["name"]="หนามเขียว"
},
[42001]={
["name"]="หัวใจน้ำแข็ง",
["desc"]="ใจฉันเย็นชาราวกับมนต์ของฉัน"
[35002]={
},
[43001]={
["name"]="สาวน้ำแข็ง",
["desc"]="ฉันชอบน้ำแข็ง อยากกินสักก้อนไหม"
},
[43002]={
["name"]="สาวอีกา",
["desc"]="กริชของฉันเป็นกริชปกคลุมไปด้วยยาพิษ"
},
[44001]={
["name"]="สาวมารน้ำแข็ง",
["desc"]="มีคนเต้นรำด้วยดาบ และสาวมารน้ำแข็งจะใช้ดาบทำให้ศัตรูเต้นรำ"
},
[44002]={
["name"]="คลีโอพัตรา",
["desc"]="ความงามก็เป็นอาวุธชนิดหนึ่ง"
[45001]={
},
[44003]={
["name"]="นักเวทลูน่า",
["desc"]="ภายใต้ดาบจันทร์เสี้ยวคู่ของเธอ ดวงดาวยามราตรีร่ายรำที่ปลายนิ้วของเธอ แสงจันทร์แห่งเวทมนตร์ส่องสว่างความปัญญาของเธอ~"
},
[44004]={
["name"]="ผู้เลี้ยงวิญญาณ"
},
[52001]={
["name"]="นินจาเร็น",
["desc"]="แม้ว่าสิ่งที่นำมาเป็นดาวกระจาย แต่เรื่องที่เขาเก่งที่สุดคือมนต์โล่ ความปรารถนาสูงสุดของนินจาเร็นคือสันติภาพของโลก"
[45002]={
},
[53001]={
["name"]="แม่มดกีกี้",
["desc"]="ไม้กวาดวิเศษของแม่มดกีกี้ไม่เพียงกวาดพื้นได้เท่านั้น แต่ยังกวาดผู้คนได้อีกด้วย"
},
[53002]={
["name"]="นักล่าวิญญาณ",
["desc"]="สิ่งนี้ดีกว่าการดูดเลือดด้วยฟันมากเลย"
},
[54001]={
["name"]="เจ้าหญิงดาบ",
["desc"]="ผีเสื้อโผล่ออกมาจากรัง สวยงามและแข็งแกร่ง ไม่เพียงแต่หัวใจแข็งแกร่งเท่านั้น แต่ยังมีมีดยาวที่สวยงามอยู่ในมือด้วย"
},
[54002]={
["name"]="นักเวทแวบวับ",
["desc"]="ความชั่วร้ายจะจบลงที่นี่"
[55001]={
},
[54003]={
["name"]="อัศวินชั่วร้าย",
["desc"]="อดีตเป็นหนึ่งในสิบอัศวินที่โดดเด่นที่สุดในอาณาจักร ฟ้าลิขิตให้เขาตกในบาป จนกลายเป็นผู้ใช้ดาบคำสาป"
},
[54004]={
["name"]="วาลคิรี"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="Vũ Cơ",
["desc"]="Quạt đẹp chứ, lúc đánh người càng đẹp đó."
},
[13001]={
["name"]="Cloud",
["desc"]="Hắn nhảy lên, gánh cây cự kiếm, ra đòn liên kích như lốc xoáy."
},
[13002]={
["name"]="Blaze",
["desc"]="Có ai không phục thì đánh tới phục mới thôi, đánh không lại là chuyện khác."
},
[14001]={
["name"]="Alexander",
["desc"]="Không ai có thể chống chọi nổi Trọng Kích Sắt Thép của Alexander, nếu chống chọi được, vậy thì thêm 1 đòn nữa."
},
[14002]={
["name"]="Panda",
["desc"]="Panda không chỉ có móng vuốt lợi hại, mà còn có pháo nổ."
[15001]={
},
[14003]={
["name"]="Incubus",
["desc"]="Như tia chớp, tấn công liên tục!!!"
[15002]={
},
[14004]={
["name"]="Mị Hồ May Mắn"
},
[22001]={
["name"]="Irelia",
["desc"]="Kiếm rút khỏi vỏ, ắt sẽ thấy máu."
[16001]={
},
[23001]={
["name"]="Barbarian",
["desc"]="Sát thương hiệu quả nhất, luôn dùng cách đánh đơn giản nhất."
},
[23002]={
["name"]="Erya",
["desc"]="Thuật Kích Kiếm của Cowboy, kẻ địch và ta, chỉ có thể có 1 người sống sót"
},
[24001]={
["name"]="Sword Imp",
["desc"]="Có thể ta không cầm được cự kiếm, nhưng không thể ngăn cản ta dùng nó đánh người."
},
[24002]={
["name"]="Thor",
["desc"]="Muốn nếm thử uy lực của Búa Thor không."
[25001]={
},
[24003]={
["name"]="Tobi",
["desc"]="Thanh kiếm trong tay anh ta múa như rồng, đó là kiếm thuật vô song."
[25002]={
},
[24004]={
["name"]="Lee"
},
[32001]={
["name"]="Onion",
["desc"]="Khiên chỉ là để che giấu đòn tấn công tiếp theo."
[26001]={
},
[33001]={
["name"]="Enchantress",
["desc"]="Cư dân rừng rậm dịu dàng lại đơn thuần, có năng lực chữa trị."
},
[33002]={
["name"]="Sói Rừng",
["desc"]="Graoooooooo——————."
},
[34001]={
["name"]="Mộc Lan",
["desc"]="Mũi tên này sẽ khiến ngươi mất mạng."
},
[34002]={
["name"]="Incubus",
["desc"]="Đến tìm chút niềm vui nào!"
[35001]={
},
[34003]={
["name"]="Ninja Phil",
["desc"]="Nhanh như gió, hãy bảo vệ Vương Quốc Nước khỏi những thế lực xấu xa."
},
[34004]={
["name"]="Gai Xanh Lục"
},
[42001]={
["name"]="Frozen Heart",
["desc"]="Tim của ta lạnh như phép thuật của ta."
[35002]={
},
[43001]={
["name"]="Ice Queen",
["desc"]="Ta thích khối băng, ngươi cũng muốn 1 khối chứ."
},
[43002]={
["name"]="Crow",
["desc"]="Dao găm này của ta nhuốm đầy thuốc độc."
},
[44001]={
["name"]="Ashe",
["desc"]="Có người cầm kiếm nhảy múa, Ashe dùng kiếm khiến kẻ địch nhảy múa."
},
[44002]={
["name"]="Cleopatra",
["desc"]="Xinh đẹp cũng là 1 loại vũ khí."
[45001]={
},
[44003]={
["name"]="Pháp Sư Moon",
["desc"]="Dưới lưỡi kiếm mặt trăng của cô ấy, sao đêm nhảy múa trong tầm tay, và ánh trăng huyền diệu soi sáng trí tuệ vô tận"
},
[44004]={
["name"]="Kẻ Săn Hồn"
},
[52001]={
["name"]="Ninja Jay",
["desc"]="Tuy đem theo là Shuriken, nhưng sở trường nhất vẫn là Thuật Khiên, nguyện vọng lớn nhất của Ninja Jay vẫn là hòa bình thế giới."
[45002]={
},
[53001]={
["name"]="Phù Thủy Kiki",
["desc"]="Chổi Phép của Phù Thủy Kiki, không chỉ có thể quét nhà, có có thể càn quét người."
},
[53002]={
["name"]="Thợ Săn Linh Hồn",
["desc"]="Đồ chơi này so với dùng răng hút máu đúng là tốt hơn nhiều."
},
[54001]={
["name"]="Đao Cơ",
["desc"]="Bươm Bướm phá kén chui ra, xinh đẹp lại kiên cường, không chỉ kiên cường ở nội tâm, còn có cây Trường Đao xinh đẹp trong tay."
},
[54002]={
["name"]="Pháp Sư Blink",
["desc"]="Tà ác sẽ chấm dứt tại đây."
[55001]={
},
[54003]={
["name"]="Fallen Knight",
["desc"]="Từng là một Kỵ Sĩ nổi tiếng vương quốc, số phận đã khiến anh trở thành người nắm giữ thanh kiếm nguyền rủa."
},
[54004]={
["name"]="Valkyrie"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,141 +1,72 @@
local hero = {
[12001]={
["name"]="舞孃",
["desc"]="扇子好看嗎,打人的時候更好看唷。"
},
[13001]={
["name"]="克勞德",
["desc"]="他一躍而起,扛起巨劍,猶如旋風般使出連擊。"
},
[13002]={
["name"]="火旺",
["desc"]="有誰不服,就是咻咻兩拳,打到服為止,打不過再說。"
},
[14001]={
["name"]="亞歷山大",
["desc"]="沒人能扛住亞歷山大的鋼鐵重擊,如果扛住了,那就再來一擊。"
},
[14002]={
["name"]="潘達",
["desc"]="潘達厲害的可不止爪子,還有鞭炮。"
[15001]={
},
[14003]={
["name"]="惡魔侍者",
["desc"]="像閃電一樣,不停地攻擊!!!!"
[15002]={
},
[14004]={
["name"]="祥瑞魅狐"
},
[22001]={
["name"]="刀妹",
["desc"]="劍一出鞘,必要見血。"
[16001]={
},
[23001]={
["name"]="野蠻人",
["desc"]="最有效的傷害,往往要採用最樸素的毆打方式。"
},
[23002]={
["name"]="二丫",
["desc"]="牛仔的擊劍術,敵人和我,只能活一個"
},
[24001]={
["name"]="巨劍魔童",
["desc"]="我可能拿不起巨劍,但不影響我用它轟人。"
},
[24002]={
["name"]="索爾",
["desc"]="想試試雷神之鎚的威力嗎。"
[25001]={
},
[24003]={
["name"]="阿飛",
["desc"]="手中的太刀如龍飛舞那是無與倫比的劍術。"
[25002]={
},
[24004]={
["name"]=""
},
[32001]={
["name"]="洋蔥頭",
["desc"]="盾牌只是為了掩飾下一次突刺。"
[26001]={
},
[33001]={
["name"]="小鹿",
["desc"]="溫柔又單純的森林子民,擁有與生俱來的治療能力。"
},
[33002]={
["name"]="森林之狼",
["desc"]="嗷嗷嗷嗷嗷嗷嗷嗷嗷——————。"
},
[34001]={
["name"]="木蘭",
["desc"]="這一箭下去你可能會死。"
},
[34002]={
["name"]="夢魔",
["desc"]="來找點樂子吧!"
[35001]={
},
[34003]={
["name"]="忍者菲爾",
["desc"]="迅猛如風,保護水之王國免受邪惡勢力的侵害。"
},
[34004]={
["name"]="綠意之刺"
},
[42001]={
["name"]="冰心",
["desc"]="我的心和我的法術一樣冰冷。"
[35002]={
},
[43001]={
["name"]="冰女",
["desc"]="我喜歡冰塊,你也要來一塊嗎。"
},
[43002]={
["name"]="烏鴉姐",
["desc"]="我這把可是沾滿毒藥的匕首。"
},
[44001]={
["name"]="寒冰妖姬",
["desc"]="有人持劍起舞,寒冰妖姬用劍讓敵人起舞。"
},
[44002]={
["name"]="豔后",
["desc"]="美麗也是一種武器。"
[45001]={
},
[44003]={
["name"]="月之法師",
["desc"]="在她的月輪雙刃下,夜晚的星辰在她的指尖舞動,魔法的月光照亮了她無限的智慧~"
},
[44004]={
["name"]="牧魂者"
},
[52001]={
["name"]="忍者倫",
["desc"]="雖然帶的是手裏劍,但是最擅長的還是護盾術,忍者倫最大的願望還是世界和平"
[45002]={
},
[53001]={
["name"]="魔女琪琪",
["desc"]="魔女琪琪的魔法掃帚,不僅能掃地,還能掃人。"
},
[53002]={
["name"]="靈魂獵手",
["desc"]="這玩意可比用牙吸血好用多啦。"
},
[54001]={
["name"]="刀姬",
["desc"]="蝴蝶破繭而出,美麗又堅韌,堅韌的不止是內心,還有手裡同樣美麗的長刀。"
},
[54002]={
["name"]="閃爍法師",
["desc"]="邪惡在此終結。"
[55001]={
},
[54003]={
["name"]="墮落騎士",
["desc"]="曾是王國中最傑出的騎士之一,命運使他墮落成為一名詛咒巨劍的使用者。"
},
[54004]={
["name"]="女武神"
[55002]={
}
}
local config = {
data=hero,count=35
data=hero,count=22
}
return config

File diff suppressed because it is too large Load Diff

View File

@ -1,162 +1,191 @@
local HeroManager = class("HeroManager", BaseModule)
function HeroManager:showHeroDetailUI(heroId, onlyLook, heroEntity, formationType)
UIManager:showUI("app/ui/hero/hero_detail_ui", {heroId = heroId, onlyLook = onlyLook, heroEntity = heroEntity, formationType = formationType})
UIManager:showUI("app/ui/hero/hero_detail_ui", {heroId = heroId, onlyLook = onlyLook, heroEntity = heroEntity, formationType = formationType})
end
function HeroManager:showHeroSkinUI(heroId, onlyLookSkinId)
UIManager:showUI("app/ui/hero/hero_skin_ui", {heroId = heroId, onlyLookSkinId = onlyLookSkinId})
UIManager:showUI("app/ui/hero/hero_skin_ui", {heroId = heroId, onlyLookSkinId = onlyLookSkinId})
end
function HeroManager:showHeroUnlockUI(heroIdList)
UIManager:showUI("app/ui/hero/hero_unlock_ui", {heroIdList = heroIdList})
UIManager:showUI("app/ui/hero/hero_unlock_ui", {heroIdList = heroIdList})
end
function HeroManager:upgradeHero(heroId, heroEntity)
local heroEntity = heroEntity or DataManager.HeroData:getHeroById(heroId)
if not heroEntity then
return
end
local heroEntity = heroEntity or DataManager.HeroData:getHeroById(heroId)
if not heroEntity then
return
end
local canLvUp, state = heroEntity:canLvUp()
if not canLvUp then
-- 如果是金币不足 尝试触发金币礼包
if state == GConst.HeroConst.CHECK_LV_UP_STATE.COIN_NOT_ENOUGH then
if not ModuleManager.ShopManager:tryTriggerCoinGift() then
GFunc.showItemNotEnough(GConst.ItemConst.ITEM_ID_GOLD)
end
else
heroEntity:canLvUp(true)
end
return
end
local canLvUp, state = heroEntity:canLvUp()
if not canLvUp then
-- 如果是金币不足 尝试触发金币礼包
if state == GConst.HeroConst.CHECK_LV_UP_STATE.COIN_NOT_ENOUGH then
if not ModuleManager.ShopManager:tryTriggerCoinGift() then
GFunc.showItemNotEnough(GConst.ItemConst.ITEM_ID_GOLD)
end
else
heroEntity:canLvUp(true)
end
return
end
self:sendMessage(ProtoMsgType.FromMsgEnum.HeroUpgradeReq, {id = heroId}, {}, self.upgradeHeroFinish, BIReport.ITEM_GET_TYPE.UPGRADE_HERO)
self:sendMessage(ProtoMsgType.FromMsgEnum.HeroUpgradeReq, {id = heroId}, {}, self.upgradeHeroFinish, BIReport.ITEM_GET_TYPE.UPGRADE_HERO)
end
function HeroManager:upgradeHeroFinish(result)
if result.err_code == GConst.ERROR_STR.SUCCESS then
DataManager.HeroData:setHeroLv(result.hero.id, result.hero.level)
DataManager.HeroData:setDirty()
if result.err_code == GConst.ERROR_STR.SUCCESS then
DataManager.HeroData:setHeroLv(result.hero.id, result.hero.level)
DataManager.HeroData:setDirty()
AudioManager:playEffect(AudioManager.EFFECT_ID.HERO_UP)
end
AudioManager:playEffect(AudioManager.EFFECT_ID.HERO_UP)
end
end
function HeroManager:upgradeHeroStar(heroId, heroEntity)
local heroEntity = heroEntity or DataManager.HeroData:getHeroById(heroId)
if not heroEntity then
return
end
-- local canLvUp, state = heroEntity:canLvUp()
-- if not canLvUp then
-- -- 如果是金币不足 尝试触发金币礼包
-- if state == GConst.HeroConst.CHECK_LV_UP_STATE.COIN_NOT_ENOUGH then
-- if not ModuleManager.ShopManager:tryTriggerCoinGift() then
-- GFunc.showItemNotEnough(GConst.ItemConst.ITEM_ID_GOLD)
-- end
-- else
-- heroEntity:canLvUp(true)
-- end
-- return
-- end
self:sendMessage(ProtoMsgType.FromMsgEnum.HeroStarReq, {id = heroId}, {}, self.heroStarReqFinish, BIReport.ITEM_GET_TYPE.UPGRADE_HERO)
end
function HeroManager:heroStarReqFinish(result)
if result.err_code == GConst.ERROR_STR.SUCCESS then
DataManager.HeroData:setHeroLv(result.hero.id, result.hero.level)
DataManager.HeroData:setDirty()
AudioManager:playEffect(AudioManager.EFFECT_ID.HERO_UP)
end
end
------------------------------------------ 英雄相关的工具方法 ------------------------------
function HeroManager:getHeroName(id, needColor)
local cfg = I18N:getConfig("hero")[id]
if cfg == nil then
return "not find:"..id
end
local name = cfg.name
if name and needColor then
local color = GConst.BattleConst.ELEMENT_COLOR[self:getHeroMatchType(id)]
if color then
name = string.format("<color=%s>%s</color>", color, name)
end
end
return name
local cfg = I18N:getConfig("hero")[id]
if cfg == nil then
return "not find:"..id
end
local name = cfg.name
if name and needColor then
local color = GConst.BattleConst.ELEMENT_COLOR[self:getHeroMatchType(id)]
if color then
name = string.format("<color=%s>%s</color>", color, name)
end
end
return name
end
function HeroManager:getHeroDesc(id)
local cfg = I18N:getConfig("hero")[id]
if cfg == nil then
return "not find:"..id
end
return cfg.desc
local cfg = I18N:getConfig("hero")[id]
if cfg == nil then
return "not find:"..id
end
return cfg.desc
end
function HeroManager:getHeroIcon(heroId)
local cfg = ConfigManager:getConfig("hero")[heroId]
return cfg and tostring(cfg.icon)
local cfg = ConfigManager:getConfig("hero")[heroId]
return cfg and tostring(cfg.icon)
end
function HeroManager:getHeroSmallFrame(heroId)
local cfg = ConfigManager:getConfig("hero")[heroId]
return cfg and GConst.HERO_SMALL_FRAME_QLT[cfg.qlt]
local cfg = ConfigManager:getConfig("hero")[heroId]
return cfg and GConst.HERO_SMALL_FRAME_QLT[cfg.qlt]
end
function HeroManager:getHeroMatchType(heroId)
local cfg = ConfigManager:getConfig("hero")[heroId]
return cfg.position
local cfg = ConfigManager:getConfig("hero")[heroId]
return cfg.position
end
function HeroManager:getMatchTypeIcon(matchType)
return GConst.HeroConst.MATCH_ICON_NAME[matchType]
return GConst.HeroConst.MATCH_ICON_NAME[matchType]
end
function HeroManager:getMatchTypeName(matchType, needColor)
local name = I18N:getGlobalText("ELEMENT_NAME_" .. matchType)
if name and needColor then
local color = GConst.BattleConst.ELEMENT_COLOR[matchType]
if color then
name = string.format("<color=%s>%s</color>", color, name)
end
end
return name
local name = I18N:getGlobalText("ELEMENT_NAME_" .. matchType)
if name and needColor then
local color = GConst.BattleConst.ELEMENT_COLOR[matchType]
if color then
name = string.format("<color=%s>%s</color>", color, name)
end
end
return name
end
function HeroManager:getSkillDesc(skillId)
local cfg = I18N:getConfig("skill")[skillId]
return cfg and cfg.desc
local cfg = I18N:getConfig("skill")[skillId]
return cfg and cfg.desc
end
function HeroManager:getSkillIcon(skillId)
local cfg = ConfigManager:getConfig("skill")[skillId]
return cfg and tostring(cfg.battle_icon)
local cfg = ConfigManager:getConfig("skill")[skillId]
return cfg and tostring(cfg.battle_icon)
end
function HeroManager:getSkillRogueDesc(skillId, value)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
if not cfg then
return GConst.EMPTY_STRING
end
local str
if cfg.attr then
str = GFunc.getPerStr(cfg.attr.type, value)
end
return I18N:getText("skill_rogue", skillId, "desc", str)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
if not cfg then
return GConst.EMPTY_STRING
end
local str
if cfg.attr then
str = GFunc.getPerStr(cfg.attr.type, value)
end
return I18N:getText("skill_rogue", skillId, "desc", str)
end
function HeroManager:showValueRogue(skillId)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
if cfg and cfg.toast_mark then
return true
end
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
if cfg and cfg.toast_mark then
return true
end
return false
return false
end
function HeroManager:getSkillRogueIcon(skillId)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
return cfg and tostring(cfg.icon)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
return cfg and tostring(cfg.icon)
end
function HeroManager:getSkillRogueBattleBg(skillId)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
return cfg and "battle_board_" .. cfg.qlt
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
return cfg and "battle_board_" .. cfg.qlt
end
function HeroManager:getSkillRogueBg(skillId, onlyQlt)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
if cfg.skill_position and not onlyQlt then -- 解锁技能类型
return "frame_skill_0"
end
return cfg and "frame_" .. cfg.qlt
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
if cfg.skill_position and not onlyQlt then -- 解锁技能类型
return "frame_skill_0"
end
return cfg and "frame_" .. cfg.qlt
end
function HeroManager:getSkillRoguePosition(skillId)
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
return cfg and cfg.skill_position
local cfg = ConfigManager:getConfig("skill_rogue")[skillId]
return cfg and cfg.skill_position
end
function HeroManager:getMonsterName(monsterBaseId)
if not I18N:getConfig("monster_base") then
return
end
return I18N:getText("monster_base", monsterBaseId, "name")
if not I18N:getConfig("monster_base") then
return
end
return I18N:getText("monster_base", monsterBaseId, "name")
end
return HeroManager

View File

@ -174,6 +174,10 @@ function RewardCell:setVisible(visible)
self.baseObject:setActive(visible)
end
function RewardCell:setActive(visible)
self.baseObject:setActive(visible)
end
function RewardCell:setAnchoredPositionX(x)
self.baseObject:setAnchoredPositionX(x)
end

View File

@ -0,0 +1,35 @@
local StarCell = class("StarCell", BaseCell)
function StarCell:init()
local uiMap = self:getUIMap()
self.starBg = uiMap["cell.star_bg"]
self.descTx = uiMap["cell.desc_tx"]
self.starImgs = {}
for i = 1, 5 do
self.starImgs[i] = uiMap["cell.star_bg.star_img_" .. i]
end
-- self:addClickListener(function()
-- EventManager:dispatchEvent(EventManager.CUSTOM_EVENT.SKIN_SELECT, self.skinId)
-- end)
end
function StarCell:refresh(heroEntity, idx)
self.heroEntity = heroEntity
if not self.heroEntity then
return
end
local star = self.heroEntity:getStar()
for i, v in ipairs(self.starImgs) do
if i <= star then
v:setActive(true)
else
v:setActive(false)
end
end
self.starBg:getComponent(GConst.TYPEOF_UNITY_CLASS.BF_HORIZONTAL_OR_VERTICAL_LAYOUT):RefreshLayout()
self.descTx:setText(I18N:getGlobalText(I18N.GlobalConst["HERO_STAR_DESC_" .. idx]) .. self.heroEntity:getCfgId())
end
return StarCell

View File

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

View File

@ -157,6 +157,11 @@ function HeroDetailUI:updateSide()
end
end
function HeroDetailUI:changePage(panelType)
self.panelType = panelType
self:refreshShow()
end
function HeroDetailUI:refreshShow()
self.txTitle:setText(self.heroEntity:getName())
if self.panelType == GConst.HeroConst.PANEL_TYPE.HERO then
@ -237,11 +242,10 @@ function HeroDetailUI:showStarInfo()
self.starInfo:initPrefabHelper()
self.starInfo:genAllChildren()
self.compStar = self.starInfo:addLuaComponent(COMP_STAR)
self.compStar:setUI(self)
self.compStar:setParentUI(self)
end
self.compStar:setHeroData(self.heroEntity)
self.compStar:refresh()
self.compStar:refresh(self.heroEntity)
end
function HeroDetailUI:showskinInfo()
@ -257,7 +261,7 @@ function HeroDetailUI:showskinInfo()
self.skinInfo:initPrefabHelper()
self.skinInfo:genAllChildren()
self.compSkin = self.skinInfo:addLuaComponent(COMP_SKIN)
self.compSkin:setUI(self)
self.compSkin:setParentUI(self)
end
self.compSkin:setHeroData(self.heroEntity)

View File

@ -189,12 +189,11 @@ function HeroInfoComp:refresh(checkLevel)
atkStr = self.heroEntity:getCfgAtk(self.heroEntity:getBeginLv()) // DEFAULT_FACTOR
end
local costs = {}
costs[1] = {id = 1, num = materials[1], type = 1}
costs[1] = {id = self.heroEntity:getFragmentId(), num = materials[1], type = 1}
costs[2] = {id = self.heroEntity:getLvUpCostId(), num = materials[2], type = 1}
for i,v in ipairs(self.costCells) do
v:refreshByConfig(costs[i])
end
self.costCells[1]:setIconSprite(GConst.ATLAS_PATH.HERO, self.heroEntity:getIcon())
-- local costId = self.heroEntity:getLvUpCostId()
-- self.imgUpIcon:setSprite(GFunc.getIconRes(costId))
-- self.txUpdesc:setText(str)

View File

@ -61,7 +61,7 @@ function ArmorInfoComp:init()
end)
end
function ArmorInfoComp:setUI(ui)
function ArmorInfoComp:setParentUI(ui)
self.uiRoot = ui
end

View File

@ -1,212 +1,73 @@
local WeaponInfoComp = class("WeaponInfoComp", LuaComponent)
local BTN_ICON = {"common_btn_green_2", "common_btn_grey_2"}
local DEFAULT_FACTOR = GConst.BattleConst.DEFAULT_FACTOR
-- 升段
local EFFECT_UP_SECTION = "assets/prefabs/effects/ui/vfs_ui_wuqi_up_b01.prefab"
-- 升级
local EFFECT_UP_GRADE = "assets/prefabs/effects/ui/vfs_ui_wuqi_up_b02.prefab"
-- 常驻
local EFFECT_FIX = {
"assets/prefabs/effects/ui/vfs_ui_wuqi_changzhu_b01.prefab",
"assets/prefabs/effects/ui/vfs_ui_wuqi_changzhu_b02.prefab",
"assets/prefabs/effects/ui/vfs_ui_wuqi_changzhu_b03.prefab",
}
local StarInfoComp = class("StarInfoComp", LuaComponent)
function WeaponInfoComp:init()
local uiMap = self:getUIMap()
local STAR_CELL = "app/ui/hero/cell/star_cell"
self.txName = uiMap["weapon_info.name.tx_name"]
self.imgWeapon = uiMap["weapon_info.img_weapon"]
self.rootEffect = uiMap["weapon_info.root_effect"]
self.txLevel = uiMap["weapon_info.level.tx_level"]
self.txDesc1 = uiMap["weapon_info.tx_desc_1"]
self.txDesc2 = uiMap["weapon_info.tx_desc_2"]
self.attrContent = uiMap["weapon_info.ScrollView.Viewport.Content"]
self.txAttr = uiMap["weapon_info.ScrollView.Viewport.Content.tx_attr"]
self.btnUp = uiMap["weapon_info.upgrade.btn_up"]
self.txUp = uiMap["weapon_info.upgrade.btn_up.tx_desc"]
self.txNum = uiMap["weapon_info.upgrade.btn_up.tx_num"]
self.attr = {}
for i = 1, 2 do
self.attr[i] = uiMap["weapon_info.attr_" .. i]
end
self.canvasWeapon = self.imgWeapon:getComponent(GConst.TYPEOF_UNITY_CLASS.CANVAS)
function StarInfoComp:init()
local uiMap = self:getUIMap()
self.txDesc1:setText(I18N:getGlobalText(I18N.GlobalConst.EQUIP_DESC_4))
self.txDesc2:setText(I18N:getGlobalText(I18N.GlobalConst.EQUIP_DESC_5))
self.txUp:setText(I18N:getGlobalText(I18N.GlobalConst.EQUIP_DESC_3))
self.upBtn = uiMap["star_info.upgrade.up_btn"]
self.upBtnTx = uiMap["star_info.upgrade.up_btn.text"]
self.lvBtn = uiMap["star_info.upgrade.lv_btn"]
self.lvBtnTx = uiMap["star_info.upgrade.lv_btn.text"]
self.costCells = {}
for i = 1, 2 do
self.costCells[i] = uiMap["star_info.upgrade.reward_cell_" .. i]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.REWARD_CELL)
end
DataManager.ShopData:checkPopGift(PayManager.PURCHARSE_ACT_TYPE.WEAPON_GIFT)
-- self.upBtnTx:setText(I18N:getGlobalText(I18N.GlobalConst.HERO_DESC_4))
self.upBtnTx:setText("升星")
self.lvBtnTx:setText(I18N:getGlobalText(I18N.GlobalConst.HERO_DESC_4))
self.upBtn:addClickListener(function()
-- ModuleManager.EquipManager:reqUpgrade(self.heroEntity:getCfgId(), GConst.EquipConst.PART_TYPE.WEAPON)
end)
self.btnUp:addClickListener(function()
ModuleManager.EquipManager:reqUpgrade(self.heroEntity:getCfgId(), GConst.EquipConst.PART_TYPE.WEAPON)
end)
self.lvBtn:addClickListener(function()
self.parentUI:changePage(GConst.HeroConst.PANEL_TYPE.HERO)
end)
self.scrollRectComp = uiMap["star_info.scrollrect"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.SCROLL_RECT_BASE)
self.scrollRectComp:addInitCallback(function()
return STAR_CELL
end)
self.scrollRectComp:addRefreshCallback(function(index, cell)
cell:refresh(self.heroEntity, index)
end)
self.scrollRectComp:clearCells()
-- self.scrollRectComp:refillCells(count)
end
function WeaponInfoComp:setUI(ui)
self.uiRoot = ui
function StarInfoComp:setParentUI(parentUI)
self.parentUI = parentUI
end
function WeaponInfoComp:setHeroData(heroEntity)
self.heroEntity = heroEntity
self.weaponEntity = DataManager.EquipData:getEquip(self.heroEntity:getCfgId(), GConst.EquipConst.PART_TYPE.WEAPON)
self:bind(self.weaponEntity, "isDirty", function()
self:refresh()
end)
self:bind(DataManager.BagData.ItemData, "dirty", function()
self:refresh()
end)
self:playEffect()
function StarInfoComp:refresh(heroEntity)
self.heroEntity = heroEntity or self.heroEntity
if not self.heroEntity then
return
end
self.scrollRectComp:refillCells(5)
if self.heroEntity:getIsStarMax() then
self.upBtn:setActive(false)
self.lvBtn:setActive(false)
for i,v in ipairs(self.costCells) do
v:setActive(false)
end
elseif self.heroEntity:getIsCurLvMax() then
self.upBtn:setActive(false)
self.lvBtn:setActive(true)
else
self.upBtn:setActive(true)
self.lvBtn:setActive(false)
local materials = self.heroEntity:getStarUpMaterials()
local costs = {}
costs[1] = {id = self.heroEntity:getFragmentId(), num = materials[1], type = 1}
costs[2] = {id = self.heroEntity:getStarUpCostId(), num = materials[2], type = 1}
for i,v in ipairs(self.costCells) do
v:setActive(true)
v:refreshByConfig(costs[i])
end
end
end
function WeaponInfoComp:refresh()
local nextWeaponEntity = self.weaponEntity:getNextLevelEntity()
self.txName:setText(self.weaponEntity:getName())
self.imgWeapon:setTexture("assets/arts/textures/background/weapon/".. self.weaponEntity:getIconId() .. ".png")
self.txLevel:setText(I18N:getGlobalText(I18N.GlobalConst.EQUIP_DESC_3) .. self.weaponEntity:getLevel().."/"..self.weaponEntity:getMaxLevel())
self.txAttr:setText(self.weaponEntity:getAttrDesc())
local height = self.txAttr:getComponent(GConst.TYPEOF_UNITY_CLASS.UI_TEXT_MESH_PRO).preferredHeight
self.attrContent:setSizeDeltaY(height + 5)
self.attrContent:setAnchoredPosition(0, 0)
-- 基础属性
local curAtk = self.weaponEntity:getAttack()
local curNormalHurt = self.weaponEntity:getNormalHurt()
local curSkillHurt = self.weaponEntity:getSkillHurt()
local curHp = self.weaponEntity:getHp()
local diffBaseAtk = (nextWeaponEntity:getBaseAttack() - self.weaponEntity:getBaseAttack()) // DEFAULT_FACTOR
local diffBaseNormalHurt = (nextWeaponEntity:getNormalHurt() - self.weaponEntity:getNormalHurt()) // DEFAULT_FACTOR
local diffBaseSkillHurt = (nextWeaponEntity:getSkillHurt() - self.weaponEntity:getSkillHurt()) // DEFAULT_FACTOR
local diffBaseHp = (nextWeaponEntity:getBaseHp() - self.weaponEntity:getBaseHp()) // DEFAULT_FACTOR
local showAttrType = {}
for index, obj in ipairs(self.attr) do
local map = obj:genAllChildren()
local imgIcon = map["img_icon"]
local txTitle = map["tx_title"]
local txNum = map["tx_num"]
obj:setVisible(true)
if not table.containValue(showAttrType, GConst.MATCH_ATTACK_NAME[self.heroEntity:getMatchType()]) and (curAtk > 0 or diffBaseAtk > 0) then
table.insert(showAttrType, GConst.MATCH_ATTACK_NAME[self.heroEntity:getMatchType()])
imgIcon:setSprite(GConst.ATLAS_PATH.COMMON, "common_dec_5")
txTitle:setText("<color=#FCB501>"..I18N:getGlobalText(I18N.GlobalConst.HERO_DESC_3).."</color>")
local numStr = curAtk // DEFAULT_FACTOR
if diffBaseAtk > 0 then
numStr = numStr .. "<color=#A2FF29>+" .. diffBaseAtk .. "</color>"
end
txNum:setText(numStr)
elseif not table.containValue(showAttrType, GConst.MATCH_NORMAL_HURT_NAME[self.heroEntity:getMatchType()]) and (curNormalHurt > 0 or diffBaseNormalHurt > 0) then
table.insert(showAttrType, GConst.MATCH_NORMAL_HURT_NAME[self.heroEntity:getMatchType()])
imgIcon:setSprite(GConst.ATLAS_PATH.COMMON, "common_dec_20")
txTitle:setText("<color=#4CCFFA>"..I18N:getGlobalText(I18N.GlobalConst.ATTR_NORMAL_HURT).."</color>")
local numStr = curNormalHurt // DEFAULT_FACTOR
if diffBaseNormalHurt > 0 then
numStr = numStr .. "<color=#A2FF29>+" .. diffBaseNormalHurt .. "</color>"
end
txNum:setText(numStr)
elseif not table.containValue(showAttrType, GConst.MATCH_SKILL_HURT_NAME[self.heroEntity:getMatchType()]) and (curSkillHurt > 0 or diffBaseSkillHurt > 0) then
table.insert(showAttrType, GConst.MATCH_SKILL_HURT_NAME[self.heroEntity:getMatchType()])
imgIcon:setSprite(GConst.ATLAS_PATH.COMMON, "common_dec_21")
txTitle:setText("<color=#EC80FF>"..I18N:getGlobalText(I18N.GlobalConst.ATTR_SKILL_HURT).."</color>")
local numStr = curSkillHurt // DEFAULT_FACTOR
if diffBaseSkillHurt > 0 then
numStr = numStr .. "<color=#A2FF29>+" .. diffBaseSkillHurt .. "</color>"
end
txNum:setText(numStr)
elseif not table.containValue(showAttrType, GConst.MATCH_HP_NAME[self.heroEntity:getMatchType()]) and (curHp > 0 or diffBaseHp > 0) then
table.insert(showAttrType, GConst.MATCH_HP_NAME[self.heroEntity:getMatchType()])
imgIcon:setSprite(GConst.ATLAS_PATH.COMMON, "common_dec_4")
txTitle:setText("<color=#FB6895>"..I18N:getGlobalText(I18N.GlobalConst.HERO_DESC_2).."</color>")
local numStr = curHp // DEFAULT_FACTOR
if diffBaseHp > 0 then
numStr = numStr .. "<color=#A2FF29>+" .. diffBaseHp .. "</color>"
end
txNum:setText(numStr)
else
obj:setVisible(false)
end
end
-- 消耗材料
local cost = self.weaponEntity:getUpgradeMaterials()
for i = 1, 3 do
local uiMap = self:getUIMap()
local costNode = uiMap["weapon_info.upgrade.cost.cost_" .. i]
if cost[i] then
costNode:setActive(true)
local icon = uiMap["weapon_info.upgrade.cost.cost_" .. i .. ".img_icon"]
local num = uiMap["weapon_info.upgrade.cost.cost_" .. i .. ".tx_num"]
local add = uiMap["weapon_info.upgrade.cost.cost_" .. i .. ".img_icon.img_add"]
local costId = GFunc.getRewardId(cost[i])
local costNum = GFunc.getRewardNum(cost[i])
local haveNum = DataManager.BagData.ItemData:getItemNumById(costId)
if haveNum < costNum then
num:setText("<color=#FF5252>" .. haveNum .. "</color>/" .. costNum)
else
num:setText(haveNum .. "/" .. costNum)
end
local atlas, name = GFunc.getIconRes(costId)
icon:setSprite(atlas, name, function ()
icon:getComponent(GConst.TYPEOF_UNITY_CLASS.UI_IMAGE):SetNativeSize()
end)
add:setActive(costNum - haveNum > 0)
icon:addClickListener(function()
ModuleManager.EquipManager:showItemGetPop(self.weaponEntity:getHeroId(), self.weaponEntity:getPart(), costId, costNum - haveNum < 0 and 0 or costNum - haveNum)
end)
else
costNode:setActive(false)
end
end
if self.weaponEntity:isEnoughGold() then
self.txNum:setText(self.weaponEntity:getUpgradeGoldNum())
else
self.txNum:setText("<color=#FF5252>" .. self.weaponEntity:getUpgradeGoldNum() .. "</color>")
end
self.btnUp:setTouchEnable(self.heroEntity:isActived())
local canLvUp = self.weaponEntity:canLevelUp()
if self.heroEntity:isActived() and canLvUp then
self.btnUp:addRedPoint(120, 50, 0.6)
self.btnUp:setSprite(GConst.ATLAS_PATH.COMMON, BTN_ICON[1])
else
self.btnUp:removeRedPoint()
self.btnUp:setSprite(GConst.ATLAS_PATH.COMMON, BTN_ICON[2])
end
end
-- 播放动效
function WeaponInfoComp:playEffect(isUpgrade, isUpSection)
self.rootEffect:removeAllChildren()
if isUpgrade or isUpSection then
AudioManager:playEffect(AudioManager.EFFECT_ID.EQUIP_WEAPON_UP)
end
-- 升级
if isUpgrade then
EffectManager:loadUIEffectAsync(EFFECT_UP_GRADE, self.uiRoot, self.rootEffect, GConst.UI_EFFECT_ORDER.LEVEL5, function(obj)
obj:play()
end)
end
-- 升段
if isUpSection then
EffectManager:loadUIEffectAsync(EFFECT_UP_SECTION, self.uiRoot, self.rootEffect, GConst.UI_EFFECT_ORDER.LEVEL5, function(obj)
obj:play()
end)
end
-- 常驻特效
local effectIdx = math.ceil(self.weaponEntity:getStage() / 2)
if EFFECT_FIX[effectIdx] then
EffectManager:loadUIEffectAsync(EFFECT_FIX[effectIdx], self.uiRoot, self.rootEffect, GConst.UI_EFFECT_ORDER.LEVEL1, function(obj)
if self.canvasWeapon and self.uiRoot then
self.canvasWeapon.overrideSorting = true
self.canvasWeapon.sortingOrder = self.uiRoot:getUIOrder() + GConst.UI_EFFECT_ORDER.LEVEL1
end
obj:setIsLoop(true)
obj:play()
end)
end
end
return WeaponInfoComp
return StarInfoComp

View File

@ -287,6 +287,17 @@ function HeroEntity:getMaxLv()
return self.maxLv
end
function HeroEntity:getIsCurLvMax()
if self:isMaxLv() then
return true
end
local cfg = ConfigManager:getConfig("hero_level")[self.data.lv + 1]
if not cfg then
return true
end
return self.data.star < cfg.star
end
function HeroEntity:canLvUp(showToast)
if self:isMaxLv() then
return false, GConst.HeroConst.CHECK_LV_UP_STATE.MAX_LV
@ -395,6 +406,10 @@ end
function HeroEntity:getMatchType()
return self.config.position
end
function HeroEntity:getStarUpCostId()
return self.config.entry
end
-- endregion
-- function HeroEntity:getActiveRogueCount()
@ -465,6 +480,23 @@ end
function HeroEntity:getStar()
return self.data.star
end
function HeroEntity:getIsStarMax()
local nextLvInfo = ConfigManager:getConfig("hero_star")[self.data.star + 1]
if not nextLvInfo then
return true
end
return false
end
function HeroEntity:getStarUpMaterials()
local nextLvInfo = ConfigManager:getConfig("hero_star")[self.data.star + 1]
if not nextLvInfo then
return
end
local fieldName = "cost_" .. self:getQlt()
return nextLvInfo[fieldName]
end
-- endregion
-- region 皮肤相关