Compare commits
10 Commits
master
...
Education-
Author | SHA1 | Date | |
---|---|---|---|
d7c4bc1c4e | |||
83e9771865 | |||
559b90caf3 | |||
bade0370fe | |||
ab7e57ed01 | |||
|
33966b7f6f | ||
166b11d369 | |||
18d371378b | |||
|
31edf3e988 | ||
f226f3948f |
|
@ -1,4 +1,4 @@
|
|||
# Magic Ling Pixel Dungeon
|
||||
# Magic Ling Pixel Dungeon-EDU
|
||||
|
||||
[](https://jq.qq.com/?_wv=1027&k=R7ZXeEQM)
|
||||

|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
apply plugin: 'com.android.application'
|
||||
apply plugin: 'com.google.gms.google-services'
|
||||
apply plugin: 'com.google.firebase.crashlytics'
|
||||
//apply plugin: 'com.google.gms.google-services'
|
||||
//apply plugin: 'com.google.firebase.crashlytics'
|
||||
|
||||
android {
|
||||
compileSdkVersion appAndroidCompileSDK
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="customactivityoncrash_error_activity_error_occurred_explanation">魔绫的像素地牢发生了意外的崩溃,\n\n请点击下方错误日志查看错误详情</string>
|
||||
<string name="customactivityoncrash_error_activity_error_occurred_explanation">脑力益智像素游戏发生了意外的崩溃,\n\n请点击下方错误日志查看错误详情</string>
|
||||
<string name="customactivityoncrash_error_activity_restart_app">重启应用程序</string>
|
||||
<string name="customactivityoncrash_error_activity_close_app">退出应用程序</string>
|
||||
<string name="customactivityoncrash_error_activity_error_details">错误日志</string>
|
||||
|
|
10
build.gradle
|
@ -5,20 +5,20 @@ buildscript {
|
|||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.0.4'
|
||||
classpath 'com.google.gms:google-services:4.3.15'
|
||||
//classpath 'com.google.gms:google-services:4.3.15'
|
||||
//noinspection GradleDependency
|
||||
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
|
||||
//classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
|
||||
}
|
||||
}
|
||||
|
||||
allprojects {
|
||||
|
||||
ext {
|
||||
appName = 'Magic Ling Pixel Dungeon'
|
||||
appPackageName = 'com.ansdomagiclingpixeldungeon.ling'
|
||||
appName = '脑力像素益智游戏'
|
||||
appPackageName = 'com.ansdomagiclingpixeldungeon.lingedu'
|
||||
|
||||
appVersionCode =800850
|
||||
appVersionName = '0.6.1.0-Beta5(P3)'
|
||||
appVersionName = '0.0.1.2'
|
||||
|
||||
appJavaCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
|
|
Before Width: | Height: | Size: 668 B After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 15 KiB |
|
@ -504,8 +504,8 @@ levels.yoggodhardbosslevel.well_name = 空间之井
|
|||
levels.yoggodhardbosslevel.well_desc = 井中涌动着空间的魔力。也许它指向某个地方?
|
||||
|
||||
|
||||
actors.mobs.magicgirldead.name =冰雪魔女
|
||||
actors.mobs.magicgirldead.desc =冰雪魔女曾经是翼绫的护法,因为地牢事变而被黑魔法腐蚀成了魔女\n\n现在她极度憎恨一切,你很不幸的踏入了她的领地.\n\n要么你死,要么我活.\n\n她非常难缠,并且已经毫无理智,如果你没有准备好,势必会被她暴打。\n_千万不要让她踩到水,否则她将非常危险。
|
||||
actors.mobs.magicgirldead.name =冰雪公主
|
||||
actors.mobs.magicgirldead.desc =冰雪公主曾经是寒冰之地的女王,现在被邪恶腐蚀,你需要击败她便可拯救她。
|
||||
actors.mobs.magicgirldead.arise=出来吧,我的傀儡!
|
||||
actors.mobs.magicgirldead.damaged =水晶结界,审判这个无知之徒!
|
||||
actors.mobs.magicgirldead.arise2=出来吧,我的傀儡!
|
||||
|
@ -738,7 +738,7 @@ actors.buffs.superfire.rankings_desc=燃烧殆尽
|
|||
actors.buffs.superfire.desc=没什么比被火焰吞没更痛苦了。 \n\n更何况这是更加令人难受的px磷火。 \n\n剩余的燃烧时长:%s回合
|
||||
|
||||
actors.mobs.molotovhuntsman.name = 血月火焰赏金猎人
|
||||
actors.mobs.molotovhuntsman.desc = 这是被地牢深处的魔绫的怒火感染的极其扭曲的赏金猎人,他们已经失去了理智,他们都有一把猩红血月剑来杀死每一个入侵者。
|
||||
actors.mobs.molotovhuntsman.desc = 这是被地牢深处的脑力像素的怒火感染的极其扭曲的赏金猎人,他们已经失去了理智,他们都有一把猩红血月剑来杀死每一个入侵者。
|
||||
|
||||
actors.mobs.molohr.name = 血月火焰赏金猎人长老
|
||||
actors.mobs.molohr.desc = 总之,就是,近战打!
|
||||
|
@ -765,11 +765,13 @@ actors.mobs.ogpdnqhz.desc = 这个老鼠很健壮,某些时刻可能给你致
|
|||
actors.mobs.kagenonusujin.name=影子盗贼
|
||||
actors.mobs.kagenonusujin.desc=这个邪魔外道的小偷为了偷取什么宝贵之物而在此处游荡着。学习了来自深渊的黑暗法术的他,能够化作黑暗中的影子潜藏其间,又立刻消逝。\n\n这个怪物会尝试偷取玩家物品,之后将玩家瞬移到地图上另一个地方,并被魔法反噬流血。\n\n如果失败,则会因为魔法反噬而中毒!
|
||||
|
||||
actors.mobs.fireghost.name=红色怨灵
|
||||
actors.mobs.fireghost.desc=这只全身赤色的怨灵由地牢深处的死灵学家们从烈焰之中唤醒,虽然它们没有火元素强大,但也已可无限毗近。\n\n这个怪物会点燃你。
|
||||
actors.mobs.fireghost.name=赤色灵武者
|
||||
actors.mobs.fireghost.desc=这名全身赤色的幽灵武士自烈焰中诞生,虽然它没有火元素强大,但也已可无限毗近。\n\n这个怪物会点燃你。
|
||||
|
||||
|
||||
actors.mobs.blackhost.name=玄色灵武者
|
||||
actors.mobs.blackhost.desc=这名全身黑色的幽灵武士自瘴气中诞生,虽然它们很脆弱,但攻击会让你受到大量负面效果。\n\n这个怪物十分危险。
|
||||
|
||||
actors.mobs.blackhost.name=黑色怨灵
|
||||
actors.mobs.blackhost.desc=这只全身黑色的怨灵是地牢深处的瘴气影响怨灵后形成的,虽然它们很脆弱,但却可以让你中毒&流血&燃烧。但是他们的视力非常差。\n\n这个怪物十分危险。
|
||||
|
||||
actors.mobs.ogpdlls.name = 老年老鼠
|
||||
actors.mobs.ogpdlls.desc = 这个老鼠已经步入中老年,因此它的精准程度很高!
|
||||
|
@ -1467,8 +1469,8 @@ actors.hero.talent.soul_siphon.title=灵魂分食
|
|||
actors.hero.talent.soul_siphon.desc=_+1:_其他单位的近战攻击同样会触发噬魂女皇的灵魂标记,但只有_13%效果_。\n\n_+2:_其他单位的近战攻击同样会触发噬魂女皇的灵魂标记,但只有_27%效果_。\n\n_+3:_其他单位的近战攻击同样会触发噬魂女皇的灵魂标记,但只有_40%效果_。
|
||||
actors.hero.talent.soul_eater.title=噬魂秘法
|
||||
actors.hero.talent.soul_eater.desc=_+1:_灵魂标记单位受到的每点物理伤害都会提供相当于_0.33回合_的饥饿值;当持有灵魂标记的单位死亡时,噬魂女皇有_10%几率_触发一次进食效果。\n\n_+2:_灵魂标记单位受到的每点物理伤害都会提供相当于_0.67回合_的饥饿值;当持有灵魂标记的单位死亡时,噬魂女皇有_20%几率_触发一次进食效果。\n\n_+3:_灵魂标记单位受到的每点物理伤害都会提供相当于_1回合_的饥饿值;当持有灵魂标记的单位死亡时,噬魂女皇有_30%几率_触发一次进食效果。
|
||||
actors.hero.talent.necromancers_minions.title=怨灵爪牙
|
||||
actors.hero.talent.necromancers_minions.desc=_+1:_拥有灵魂标记的敌人死亡时,有_13%几率_成为一只被噬魂女皇腐化的怨灵。\n\n_+2:_拥有灵魂标记的敌人死亡时,有_27%几率_成为一只被噬魂女皇腐化的怨灵。\n\n_+3:_拥有灵魂标记的敌人死亡时,有_40%几率_成为一只被噬魂女皇腐化的怨灵。
|
||||
actors.hero.talent.necromancers_minions.title=黑色灵武者之怒
|
||||
actors.hero.talent.necromancers_minions.desc=_+1:_拥有灵魂标记的敌人死亡时,有_13%几率_成为一只被噬魂女皇腐化的黑色灵武者。\n\n_+2:_拥有灵魂标记的敌人死亡时,有_27%几率_成为一只被噬魂女皇腐化的黑色灵武者。\n\n_+3:_拥有灵魂标记的敌人死亡时,有_40%几率_成为一只被噬魂女皇腐化的黑色灵武者。
|
||||
|
||||
actors.hero.talent.blast_radius.title=广域打击
|
||||
actors.hero.talent.blast_radius.desc=_+1:_元素风暴的打击半径从4格扩大到 _5格_。\n\n_+2:_元素风暴的打击半径从4格扩大到 _6格_。\n\n_+3:_元素风暴的打击半径从4格扩大到 _7格_。\n\n_+4:_元素风暴的打击半径从4格扩大到 _8格_。
|
||||
|
@ -1946,10 +1948,10 @@ actors.mobs.shaman$purpleshaman.spell_desc=佩戴紫色面具的萨满会利用
|
|||
actors.mobs.armoredbrute.name=重甲暴徒
|
||||
actors.mobs.armoredbrute.desc=这些顶级的豺狼暴徒通常装备着强力的护甲来体现它们的地位。它们的护甲使得它们对物理伤害有着更高的防御,它们坚强的意志允许它们在弥留之际坚持更长的时间。
|
||||
|
||||
actors.mobs.skeleton.name=骷髅
|
||||
actors.mobs.skeleton.explo_kill=你被骨头的爆炸杀掉了……
|
||||
actors.mobs.skeleton.name=苍白机器人
|
||||
actors.mobs.skeleton.explo_kill=你被机械核心的爆炸杀掉了……
|
||||
actors.mobs.skeleton.def_verb=格挡
|
||||
actors.mobs.skeleton.desc=骷髅是从那些悲惨的冒险者及地牢原住民尸骨的聚合物产生的,来自下层地牢的邪恶力量将它们从死亡中唤起。在吸收了足够的伤害之后,它们就会在骨头的爆炸中消解。
|
||||
actors.mobs.skeleton.desc=苍白机器人是死灵法师模仿矮人科技制作的量产型机体。在吸收了足够的伤害之后,它们就会强行引爆自身的核心,与敌人同归于尽。
|
||||
|
||||
actors.mobs.slime.name=史莱姆
|
||||
actors.mobs.slime.def_verb=格挡
|
||||
|
@ -2005,8 +2007,8 @@ actors.mobs.warlock.name=矮人术士
|
|||
actors.mobs.warlock.bolt_kill=暗影能量使你的生命衰竭了……
|
||||
actors.mobs.warlock.desc=当矮人的兴趣从工程建设转向奥秘学术时,术士们开始在城市中掌权。它们从元素魔法起步,但很快就开始研究恶魔学和死灵术。最强大的术士掌握了矮人王国的王权,其他术士如果想继续练习黑暗魔法,就必须放弃精神的自由,将意志交给他控制。\n\n这些术士拥有具有强大的干扰性魔法,能暂时抑制装备的升级魔力。装备的等级越高,受降级魔法的影响就越严重。
|
||||
|
||||
actors.mobs.wraith.name=怨灵
|
||||
actors.mobs.wraith.desc=怨灵是来自于墓穴中渴望复仇的罪人之魂。作为飘渺的非实体很难被正常武器击中。
|
||||
actors.mobs.wraith.name=黑色灵武者
|
||||
actors.mobs.wraith.desc=黑色灵武者是渴望复仇的罪人之魂。作为飘渺的非实体很难被正常武器击中。
|
||||
|
||||
actors.mobs.yog.name=Yog-Dzewa
|
||||
actors.mobs.yog.notice=希望已死,汝之存在亦将化为虚无…
|
||||
|
|
|
@ -151,7 +151,6 @@ items.weapon.melee.washcrime$diedghost.name=未安息的亡魂
|
|||
items.weapon.melee.washcrime$diedghost.desc=肉身已然逝去,灵魂尚未得到安息,脑海遵照主人的意愿,直到真正的死亡降临。
|
||||
|
||||
#MLPDSTOREYBOOKS
|
||||
|
||||
items.books.bookslist.hellfirebooks.name=《浊焰事件》
|
||||
items.books.bookslist.hellfirebooks.desc=燃尽了一切,真理在何处显存。300年前的地牢大火事件让如今这个地牢变成了怎样的地狱?\n\n你已经见过我妹妹了吧?冒险者。那么,你为此前来的目的,是准备拯救这一切吗。如果是的话,有一点我不得不承认。大火事件确实由我而起,我辜负了她对我的信任。但其实,我们本来就不是真正意义上存在的。我知道,总会有冒险者来到这里,我在这里留下了这本用我力量做成的书。你还想了解大火的真相。那就勇敢的面对我吧!翻开书页,聚精会神,我会在浊焰地狱等着你!
|
||||
items.books.bookslist.hellfirebooks.author=--浊焰魔女
|
||||
|
@ -170,33 +169,33 @@ items.potions.elixirs.elixirofnukecole.name=核子可乐
|
|||
items.potions.elixirs.elixirofnukecole.desc=核子可乐,买到就是赚到。大家用了都说好!
|
||||
|
||||
items.books.bookslist.indexbooks.name=《地牢探险指南第三版》
|
||||
items.books.bookslist.indexbooks.desc=如果你是第一次游玩魔绫的像素地牢,这个指南也许能帮到你。\n\n一意咕行!!!
|
||||
items.books.bookslist.indexbooks.desc=如果你是第一次游玩脑力益智像素游戏,这个指南也许能帮到你。\n\n一意咕行!!!
|
||||
items.books.bookslist.indexbooks.author=--作者:_JDSA-Ling_
|
||||
items.books.bookslist.indexbooks.ac_read=打开看看
|
||||
|
||||
items.books.bookslist.yellowsunbooks.name=《朝阳教团史-Dr.BloodMoon纪年326年卷二》
|
||||
items.books.bookslist.yellowsunbooks.desc=此册编撰者以鲜血与性命示忠于原_地表势力_的领头者_朝阳教团_并承诺绝无欺骗 \n\n……但是在300年前的_那件事_发生后,_朝阳教团_因管理不利而渐渐衰落,从此便销声匿迹了,它原有的地位与名誉被_深渊魔都_和_极地圣境_两方势力所分食。\n\n两方的_管理者_携手封印了地牢的最深处的入口,并且对她进行了_水晶力量抑制_,于Dr.BloodMoon纪年17年她封印在了金城水晶实验室。\n\n……距封印之日已过去三百余年,随着她_力量的增强_,_水晶_已经开始_极不稳定_……\n\n……Dr.BloodMoon纪年326年四月中旬,一名_朝阳教团的残支_要求接见管理者……并且声称,朝阳教团可以帮助他们彻底_杀死她_……\n\n_若要记录在书架里面,请先鉴定!
|
||||
items.books.bookslist.yellowsunbooks.name=《中国历史-大禹》
|
||||
items.books.bookslist.yellowsunbooks.desc=禹姓斯,字文明(也有称禹为名的说法),字(高)密,史称大禹、禹帝,夏侯氏领袖,夏朝开国之王,禹为黄帝重孙,转绪之孙(但也有称禹应为转绪六孙的说法),其父名枪,被帝尧封为禹冲,为伯爵,世称冲伯枪或冲伯。他的母亲是辛家的女儿秀姬。\n\n相传禹治黄河有功,以舜退位继位,在诸侯的支持下,禹王正式即位,定都羊城,定都平阳(安邑或晋阳均可),国号为夏,并将丹竹分为唐朝,所有商人分为禹。\n\n禹是夏朝的第一位皇帝,所以后人也称他为夏禹,是中国古代传说中与尧、舜齐名的圣贤皇帝,他最杰出的功绩就是传说中的控制滔天洪水,将中国的疆域划定为九州,后人称他为大禹,禹死后葬于会稽山上(今浙江绍兴),现存有禹祠、禹陵、禹祠,从夏启开始,多数皇帝都来禹陵朝拜他。!
|
||||
items.books.bookslist.yellowsunbooks.author=--作者:_Kiley-Alien_
|
||||
items.books.bookslist.yellowsunbooks.ac_read=阅读书籍
|
||||
items.books.bookslist.yellowsunbooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
items.books.bookslist.yellowsunbooks.anmazing=你解读书中的奥秘,你领悟到了敌法的力量!
|
||||
|
||||
items.books.bookslist.icecitybooks.name=《寒冰圣域游记》
|
||||
items.books.bookslist.icecitybooks.desc=这是坐拥于曾经的寒冰地带的一座大型城市,似乎已经驱走了严寒的危机,而我现在就站在这里。\n现在由"冷群"进行着管理。\n\n这里的人们都生活的悠哉游哉,似乎工作都是以享受的姿态去迎接的。在冬季的十二月月末下雪的日子,居民们还会举办大型的盛典来庆祝。\n\n似乎所有人都忘记了三百年前的那件事了……\n\n_若要记录在书架里面,请先鉴定!
|
||||
items.books.bookslist.icecitybooks.name=《中国历史-夏启》
|
||||
items.books.bookslist.icecitybooks.desc=夏朝皇帝姓齐,姓斯是禹的儿子,相传禹在世时选择了易为继承人,禹死后,易继位,齐与易为皇位发生了争斗,结果齐国杀了易,建立了子传制度,所以说夏国是夏国建立的,但是有学者在计算夏朝的血统时,从禹开始算起,齐国,史称夏国,出生入死,时间不详。夏禹死后继位,成为中国历史上第一个由退位制改为世袭制的人,在位九年后因病去世,葬于安邑(今山西夏县西池村)附近,儿子继父在世;舜晚年,禹完成治水大业,于是带着妻子出国旅行,请禹在他离开后接任。当时有个习惯,老领导让位后,为了让新领导尽快行使权力、树立威信,让人心逐渐向新领导转移,老领导不得不离开京城,过正常人的生活。\n\n舜帝虽然让位了,但人民还是因为他的政治德行而怀念他,他在百岁时南巡,突然病倒,死在苍雾山(今湖南宁远县南),噩耗传来,全国臣民都悲痛欲绝,大禹听到这个消息,也是伤心欲绝,亲自率领众大臣为舜建陵墓,在苍雾山建庙祭祖,这些就是至今还存在的灵陵、舜庙(今湖南宁远县)。大禹安葬了玉顺,带着鄂皇、女英两个妃子回到京城,二公主痛苦不堪,船过响水河时,两人都投河身亡。\n\n人们不忍说他们死了,而是说他们成了湘水之神,所以被称为湘妃,大禹品德高尚,治水有功,深受百姓拥戴,舜死后,大禹正式成为部落联盟的首领,这就是夏朝的开始,夏朝是我国历史上的第一个王朝,大禹是夏朝的第一位君主,大禹成为夏朝君主后,不忘自己肩负的重任,不忘天下长治久安。他虽身居高位,却不贪图享乐,为了治理天下,经常外出巡游,了解民情。
|
||||
items.books.bookslist.icecitybooks.author=--作者:_LunRes_
|
||||
items.books.bookslist.icecitybooks.ac_read=阅读书籍
|
||||
items.books.bookslist.icecitybooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
items.books.bookslist.icecitybooks.anmazing=你解读书中的奥秘,你领悟到了烈焰的力量!
|
||||
|
||||
items.books.bookslist.deepbloodbooks.name=《深渊魔都纪事录》
|
||||
items.books.bookslist.deepbloodbooks.desc=本传仅作参考,可能包含大量个人想法。\n\n……魔都来了一位少女,她成功地将魔都再次复兴。……三天后,地牢调查团发来一则关于地牢深处强烈魔力流的报告。\n\n地牢第???层:\n魔力强度:DEAD\n采取措施:无\n危险评估:DEADNOBACK\n……以上评估报告仅供参考。\n\n_若要记录在书架里面,请先鉴定!
|
||||
items.books.bookslist.deepbloodbooks.name=《中国历史-刘启》
|
||||
items.books.bookslist.deepbloodbooks.desc=汉景帝刘启(前188年-前141年3月9日)。西汉第六位皇帝(前157年—前141年在位),汉文帝刘恒嫡长子,母为孝文窦皇后窦氏(即窦太后)。\n\n文帝后七年 (前157年)六月继位。在位期间继续推行与民休息、轻徭薄赋政策,社会经济得到进一步恢复和发展。田租由十五税一改为三十税一,此后成为汉朝定制。为加强中央集权,采纳晁错建议实行削藩。景帝前三年(前154年)平定吴楚七国之乱。其后又令诸侯王不得治民,损黜其官制,王国官吏由皇帝任免。后世史家将其和文帝统治时期合称文景之治。 \n\n汉景帝后元三年(前141年)去世,时年四十八岁,谥号孝景皇帝,葬于阳陵。
|
||||
items.books.bookslist.deepbloodbooks.author=--作者:_Dr.BloodMoon_
|
||||
items.books.bookslist.deepbloodbooks.ac_read=阅读书籍
|
||||
items.books.bookslist.deepbloodbooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
items.books.bookslist.deepbloodbooks.anmazing=你解读书中的奥秘,你领悟到了索敌的力量!
|
||||
|
||||
items.books.bookslist.grasskingbooks.name=《绿林圣境守则》
|
||||
items.books.bookslist.grasskingbooks.desc=1.无论是天灾还是人祸,请不要感到害怕。我们有着足够的实力保护你们。\n\n2.请居民不要靠近_森色之庭_,那里是_地表势力_最高层的会议室\n\n……5.请带领刚出生的婴儿到_源色之泉_处进行洗礼,以获取魔力。\n\n……7.外来旅者或是移民请自觉忽略一切你所认为的_高傲、自大、冷酷、无情、自私、不平等_,在这里发生的一切都是正常的,不要试图去做出改变,学会融入我们。\n\n8.其他条例请等待_第十三次高层会议_的补充。\n\n_若要记录在书架里面,请先鉴定!
|
||||
items.books.bookslist.grasskingbooks.name=《中国历史-屈原》
|
||||
items.books.bookslist.grasskingbooks.desc=屈原(约公元前340年—公元前278年),芈姓,屈氏,名平,字原,又自云名正则,字灵均,出生于楚国丹阳秭归(今湖北宜昌),战国时期楚国诗人、政治家。楚武王熊通之子屈瑕的后代。少年时受过良好的教育,博闻强识,志向远大。早年受楚怀王信任,任左徒、三闾大夫,兼管内政外交大事。提倡“美政”,主张对内举贤任能,修明法度,对外力主联齐抗秦。因遭贵族排挤诽谤,被先后流放至汉北和沅湘流域。\n\n楚国郢都被秦军攻破后,自沉于汨罗江,以身殉楚国。\n\n屈原是中国历史上一位伟大的爱国诗人,中国浪漫主义文学的奠基人,“楚辞”的创立者和代表作家,开辟了“香草美人”的传统,被誉为“楚辞之祖”,楚国有名的辞赋家宋玉、唐勒、景差都受到屈原的影响。\n\n屈原作品的出现,标志着中国诗歌进入了一个由大雅歌唱到浪漫独创的新时代,其主要作品有《离骚》《九歌》《九章》《天问》等。以屈原作品为主体的《楚辞》是中国浪漫主义文学的源头之一,对后世诗歌产生了深远影响。成为中国文学史上的璀璨明珠,“逸响伟辞,卓绝一世”。“路漫漫其修远兮,吾将上下而求索”,屈原的“求索”精神,成为后世仁人志士所信奉和追求的一种高尚精神。\n\n1953年,在屈原逝世2230周年之际,世界和平理事会通过决议,确定屈原为当年纪念的世界四大文化名人之一。
|
||||
items.books.bookslist.grasskingbooks.author=--作者:_牡丹洛华_
|
||||
items.books.bookslist.grasskingbooks.ac_read=阅读书籍
|
||||
items.books.bookslist.grasskingbooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
|
@ -209,15 +208,16 @@ items.books.bookslist.brokenbooks.ac_read=阅读书籍
|
|||
items.books.bookslist.brokenbooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
items.books.bookslist.brokenbooks.anmazing=你解读书中的奥秘,你领悟到了成长的力量!
|
||||
|
||||
items.books.bookslist.magicgirlbooks.name=《镶着金边的魔女手记》
|
||||
items.books.bookslist.magicgirlbooks.desc=(前面的几页似乎是被撕掉了)……这是大火后的第三天,我像往常一样推开了窗户。\n\n瘴气似的魔力涌入房间,没办法……我无法对抗它……\n\n在我被这股魔力吞噬殆尽之前,在它占据我的身体之前,我得准备好一些能与之抗衡的东西……\n\n仇恨,密谋,计划,灾厄正在降临。(最后这几个字的笔迹似乎变成了另一个人的)\n\n_若要记录在书架里面,请先鉴定!
|
||||
items.books.bookslist.magicgirlbooks.name=《中国历史-杜甫》
|
||||
items.books.bookslist.magicgirlbooks.desc=杜甫(712年2月12日~770年),字子美,自号少陵野老,唐代伟大的现实主义诗人,与李白合称“李杜”。出生于河南巩县,原籍湖北襄阳。为了与另两位诗人李商隐与杜牧即“小李杜”区分,杜甫与李白又合称“大李杜”,杜甫也常被称为“老杜”。\n\n杜甫少年时代曾先后游历吴越和齐赵,其间曾赴洛阳应举不第。三十五岁以后,先在长安应试,落第;后来向皇帝献赋,向贵人投赠。官场不得志,目睹了唐朝上层社会的奢靡与社会危机。天宝十四载(755年),安史之乱爆发,潼关失守,杜甫先后辗转多地。乾元二年(759年)杜甫弃官入川,虽然躲避了战乱,生活相对安定,但仍然心系苍生,胸怀国事。杜甫创作了《登高》《春望》《北征》以及“三吏”、“三别”等名作。虽然杜甫是个现实主义诗人,但他也有狂放不羁的一面,从其名作《饮中八仙歌》不难看出杜甫的豪气干云。\n\n杜甫的思想核心是仁政思想,他有“致君尧舜上,再使风俗淳”的宏伟抱负。杜甫虽然在世时名声并不显赫,但后来声名远播,对中国文学和日本文学都产生了深远的影响。杜甫共有约1500首诗歌被保留了下来,大多集于《杜工部集》。\n\n大历五年(770年)冬,病逝,享年五十九岁。杜甫在中国古典诗歌中的影响非常深远,被后世尊称为“诗圣”,他的诗被称为“诗史”。后世称其杜拾遗、杜工部,也称他杜少陵、杜草堂。
|
||||
|
||||
items.books.bookslist.magicgirlbooks.author=--作者:_凛_
|
||||
items.books.bookslist.magicgirlbooks.ac_read=阅读书籍
|
||||
items.books.bookslist.magicgirlbooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
items.books.bookslist.magicgirlbooks.anmazing=你解读书中的奥秘,你领悟到了天佑的力量!
|
||||
|
||||
items.books.bookslist.nokingmobbooks.name=《异变调查》
|
||||
items.books.bookslist.nokingmobbooks.desc=地表最近总是能感到一股力量正在从地下涌动,我奉命前往地下进行调查。\n\n没想到,这一次前来,我发现了一个一些惊奇的事情。\n\n老鼠能说话,新的未知生物更多,还有一些高智能怪物。似乎一切,就和那场大火毫无关系。\n\n谁在幕后策划着一切?异变的真凶究竟是谁?\n\n_若要记录在书架里面,请先鉴定!
|
||||
items.books.bookslist.nokingmobbooks.name=《中国历史-李白》
|
||||
items.books.bookslist.nokingmobbooks.desc=李白(701年2月28日—762年12月)字太白,号青莲居士,祖籍陇西成纪(今甘肃省秦安县),出生于绵州昌隆县青莲乡。 [38] 唐朝伟大的浪漫主义诗人,凉武昭王李暠九世孙。\n\n为人爽朗大方,乐于交友,爱好饮酒作诗,名列“酒中八仙”。曾经得到唐玄宗李隆基赏识,担任翰林学士,赐金放还,游历全国,先后迎娶宰相许圉师、宗楚客的孙女。唐肃宗即位后,卷入永王之乱,流放夜郎,辗转到达当涂县令李阳冰家。上元二年,去世,时年六十二。 \n\n著有《李太白集》,代表作有《望庐山瀑布》《行路难》《蜀道难》《将进酒》《早发白帝城》等。\n\n李白所作词赋,就其开创意义及艺术成就而言,享有极为崇高的地位,后世誉为“诗仙”,与诗圣杜甫并称“李杜”。
|
||||
items.books.bookslist.nokingmobbooks.author=--作者:_Demain-Pixel_
|
||||
items.books.bookslist.nokingmobbooks.ac_read=阅读书籍
|
||||
items.books.bookslist.nokingmobbooks.blees=你阅读了书籍,一股力量油然而生!
|
||||
|
@ -319,7 +319,7 @@ items.superdewvial.empty=你的荧光露珠瓶空空如也!
|
|||
|
||||
items.bags.bookbag.name=牛皮书袋
|
||||
items.bags.bookbag.desc=积累了不少灰尘的牛皮书袋,可以装纳不少书籍在里面。
|
||||
items.bags.lingbag.name=魔绫口袋
|
||||
items.bags.lingbag.name=脑力像素口袋
|
||||
items.bags.lingbag.desc=携带一些特殊物品
|
||||
items.bags.herbbag.name=食物袋
|
||||
items.bags.herbbag.desc=一个小袋子装你的食物。
|
||||
|
@ -1172,9 +1172,9 @@ items.potions.exotic.potionofstormclouds.desc=这瓶合剂被丢出后会形成
|
|||
items.quest.ceremonialcandle.name=仪祭蜡烛
|
||||
items.quest.ceremonialcandle.desc=配套的蜡烛,在使用中融化在了一起。\n\n单独看来它们毫无价值,但与其它蜡烛按特定排布共用时却能为召唤仪式聚集能量。
|
||||
|
||||
items.quest.corpsedust.name=尸尘
|
||||
items.quest.corpsedust.name=诅咒结晶
|
||||
items.quest.corpsedust.chill=一股寒意穿透了你的脊背。
|
||||
items.quest.corpsedust.desc=在外观上这团尸尘和普通灰尘差不多。而你却能够感受到其中潜伏着一股充满恶意的魔力。\n\n尽快脱手为好。
|
||||
items.quest.corpsedust.desc=在外观上和普通灰尘差不多。而你却能够感受到其中潜伏着一股充满恶意的魔力。\n\n尽快脱手为好。
|
||||
|
||||
items.quest.darkgold.name=暗金矿
|
||||
items.quest.darkgold.desc=这种金属名中的暗并非源于其色泽(它看起来和普通金子一样),而是因为它会在阳光下熔化,令其在地表上毫无用处。
|
||||
|
|
|
@ -51,7 +51,7 @@ badges$badge.item_level_2=获得6级物品
|
|||
badges$badge.item_level_3=获得9级物品
|
||||
badges$badge.item_level_4=获得12级物品
|
||||
badges$badge.victory=取得Yendor护符
|
||||
badges$badge.get_sc=净化怨灵根源\n将尸尘交给老杖匠
|
||||
badges$badge.get_sc=净化武士之魂\n将诅咒结晶交给老杖匠
|
||||
badges$badge.victory_all_classes=分别使用战士,法师,盗贼和女猎手取得Yendor护符
|
||||
badges$badge.mastery_combo=达成10连击
|
||||
badges$badge.items_crafted_1=一场游戏中酿造3瓶药水
|
||||
|
|
|
@ -24,15 +24,14 @@ scenes.feedbackscene$1.title=确定退出游戏?
|
|||
scenes.feedbackscene$1.intro=你确定要退出游戏吗?
|
||||
scenes.feedbackscene$1.sponsor_msg=如果是,请点击退出游戏。如果不是,请点击回到游戏。
|
||||
scenes.feedbackscene$1.feedback_msg=地牢总是危险多端的,因此,往往需要你去探索他们。
|
||||
scenes.feedbackscene$1.feedback_msg_pr=你可以加入魔绫开发总群,与作者交谈,与其他大佬一起学习进步。
|
||||
scenes.feedbackscene$1.thanks=魔绫像素地牢随时欢迎你的再次回归。
|
||||
scenes.feedbackscene$1.feedback_msg_pr=学习中玩,玩中学习。我们下次再见。
|
||||
scenes.feedbackscene$1.thanks=脑力益智像素游戏随时欢迎你的再次回归。
|
||||
scenes.feedbackscene$1.sponsor_link=退出游戏
|
||||
scenes.feedbackscene$1.feedback_link=回到游戏
|
||||
scenes.feedbackscene$1.join_link=加入魔绫开发总群
|
||||
|
||||
|
||||
scenes.changesscene.earlier=破碎更新日志
|
||||
scenes.changesscene.later=魔绫更新动态
|
||||
scenes.changesscene.later=脑力像素更新动态
|
||||
scenes.changesscene.shpd=破碎更新日志
|
||||
|
||||
#scenes.aboutscene.=
|
||||
|
@ -47,30 +46,30 @@ scenes.gamescene.died_5= 地牢的环境复杂多变,只有细心之人才能
|
|||
scenes.interlevelscene.dialog_1=合理_运用物品_,\n\n获取_最终胜利_!
|
||||
scenes.interlevelscene.dialog_2=你知道吗?\n\n_左下角的放大镜_是一个好东西
|
||||
scenes.interlevelscene.dialog_3=常去看_更新记录_的好孩子,\n\n就不会因为_新改动_而茫然.
|
||||
scenes.interlevelscene.dialog_4=魔绫像素地牢-始于_2021年2月_,\n\n感谢引导者_Ren_和Γ红龙Γ。
|
||||
scenes.interlevelscene.dialog_4=脑力益智像素游戏-始于_2021年2月_,\n\n感谢引导者_Ren_和Γ红龙Γ。
|
||||
scenes.interlevelscene.dialog_5=有些时候_直面失败_,\n\n或许并不是什么坏事
|
||||
scenes.interlevelscene.dialog_6=_小心奸商!!!_\n\n他甚至不会卖给你_未诅咒的物品_!
|
||||
scenes.interlevelscene.dialog_7=Δ种子Δ是个好东西,\n\n_关键看你_会不会用
|
||||
scenes.interlevelscene.dialog_8=你的运气常常是通关的必要东西之一,当然你可以试试自定义种子来盘爽局!
|
||||
scenes.interlevelscene.dialog_9=呐呐呐,\n\n你听说过Ξ水晶之城Ξ的谣言吗?
|
||||
scenes.interlevelscene.dialog_10=_总是暴毙?_这可能并不是你的问题。\n\nΞ总之,不要气馁,菜就多练练Ξ。
|
||||
scenes.interlevelscene.dialog_11=魔绫像素地牢,绝望与希望并存。
|
||||
scenes.interlevelscene.dialog_11=脑力益智像素游戏,欢迎您。
|
||||
scenes.interlevelscene.dialog_12=寻找_红龙之王_,\n\n剿灭_精英敌人_。
|
||||
scenes.interlevelscene.dialog_13=不是史神:\n\n请Γ小心咕咕!!!
|
||||
scenes.interlevelscene.dialog_14=萌新岚:\n\n欢迎来到Γ火炎焱燚Γ地牢,本地牢Γ全面Γ戒烟.\n\n请不要在Γ过道内、木门口、地牢房间Γ吸烟。\n\n谢谢合作,祝您Δ冒险愉快Δ呢。
|
||||
scenes.interlevelscene.dialog_15=你知道吗?\n\n作者游玩的第一个地牢\n\n是Δ阿飞的不思议地牢Δ呢。
|
||||
scenes.interlevelscene.dialog_15=学中玩,玩中学
|
||||
scenes.interlevelscene.dialog_16=_太难打了?试着做一些新东西_\n\n让你的敌人只能抱头鼠窜!
|
||||
scenes.interlevelscene.dialog_17=_雪凛峡谷_,商人们的总部
|
||||
scenes.interlevelscene.dialog_18=魔绫像素地牢2岁啦!
|
||||
scenes.interlevelscene.dialog_18=脑力益智像素游戏欢迎您!
|
||||
scenes.interlevelscene.dialog_19=克里弗斯之果,森林黑暗的源头?
|
||||
scenes.interlevelscene.dialog_20=感谢_那些回忆_和_罗贝里_的大力支持
|
||||
scenes.interlevelscene.dialog_20=祝你通关胜利。
|
||||
scenes.interlevelscene.dialog_21=Hod:\n\n明明清了水却还带电,太屑了。
|
||||
scenes.interlevelscene.dialog_22=笑笑就好:\n\n咒杖会意想不到的好用,敢赌吗?
|
||||
scenes.interlevelscene.dialog_23=lmk3:\n\n话说,为什么尚方宝剑不能吃呢?
|
||||
scenes.interlevelscene.dialog_24=five:\n\n嬗变初始武器可能有惊喜哦。
|
||||
scenes.interlevelscene.dialog_25=U3D:\n\n治疗该喝就得喝,别省。
|
||||
scenes.interlevelscene.dialog_26=观察者:\n\n死亡不是终点,结束即为开始。
|
||||
scenes.interlevelscene.dialog_27=楪祈喵:\n\n欢迎来到魔绫,享受这场狂宴吧。
|
||||
scenes.interlevelscene.dialog_27=楪祈喵:\n\n欢迎来到脑力像素,享受这场狂宴吧。
|
||||
scenes.interlevelscene.dialog_28=Beyond:\n\n今天要炼铜!明天要炼铜!永远要炼铜!
|
||||
scenes.interlevelscene.dialog_29=桃林:\n\n你走过的每一步,都或许是某位先辈的归宿。
|
||||
scenes.interlevelscene.dialog_30=荨麻心绪:\n\nBOSS太肉无法解决?为什么不试试药水呢。
|
||||
|
@ -82,8 +81,8 @@ scenes.interlevelscene.dialog_35=啊哈,猜猜我是谁?:\n\n失败了再
|
|||
scenes.interlevelscene.dialog_36=楪祈喵:\n\n想不想炼铜?想不想涩涩?想是吧?肘,跟我去警察局解释吧
|
||||
|
||||
scenes.mlpdaboutscene.txt_mlpd=基于 _破碎的像素地牢v1.2.3_ \n\n 采用了_注解版;生存地牢;疯长地牢;经验地牢_的部分源代码。
|
||||
scenes.mlpdaboutscene.ttl_ansdo=制作:答舟工作室
|
||||
scenes.mlpdaboutscene.txt_ansdo=_策划:_ JDSA Ling\n\n\
|
||||
scenes.mlpdaboutscene.ttl_ansdo=制作:Galaxy工作室
|
||||
scenes.mlpdaboutscene.txt_ansdo=_策划:_ JDSA Ling & Mason\n\n\
|
||||
_程序:_ JDSA Ling & Tianscar\n\n\
|
||||
_音乐:_ Prohonor\n\n\
|
||||
_美工:_ JDSA Ling、Tianscar\n\
|
||||
|
@ -93,23 +92,23 @@ scenes.mlpdaboutscene.github=源码仓库地址
|
|||
scenes.mlpdaboutscene.joinlink=https://jq.qq.com/?_wv=1027&k=R7ZXeEQM
|
||||
scenes.tssupporterscene.title=捐赠碳酸
|
||||
scenes.thanksscene.title=致谢者名单
|
||||
scenes.tssupporterscene.intro=我在此保证魔绫像素地牢永远不会沾上任何广告或者其它违和的东西用于盈利,但我也希望能够得到资金支持。
|
||||
scenes.tssupporterscene.msg=很多时候,一定的资金支持是保证项目能够健康发展的重要因素。如果您对魔绫像素地牢感到满意,又恰巧财力足够,能否前往Ko-fi留下一份心意?
|
||||
scenes.tssupporterscene.intro=我在此保证脑力益智像素游戏永远不会沾上任何广告或者其它违和的东西用于盈利,但我也希望能够得到资金支持。
|
||||
scenes.tssupporterscene.msg=很多时候,一定的资金支持是保证项目能够健康发展的重要因素。如果您对脑力益智像素游戏感到满意,又恰巧财力足够,能否前往Ko-fi留下一份心意?
|
||||
scenes.tssupporterscene.supporter_link=前往Ko-fi捐赠页面
|
||||
scenes.tssupporterscene.name=碳酸天剑,答舟工作室室长
|
||||
|
||||
scenes.lingsupporterscene.title=捐赠小绫
|
||||
scenes.lingsupporterscene.intro=魔绫像素地牢是我本人基于破碎的像素地牢做的一款MOD地牢。它完全免费,并由我个人独立开发。
|
||||
scenes.lingsupporterscene.intro=脑力益智像素游戏是我本人基于破碎的像素地牢做的一款MOD地牢。它完全免费,并由我个人独立开发。
|
||||
scenes.lingsupporterscene.msg=如果阁下想支持一波小绫,请点击下方捐赠按钮。当然,即使你不捐赠。你的心意小绫也领到了。
|
||||
scenes.lingsupporterscene.supporter_link=前往爱发电捐赠页面
|
||||
scenes.lingsupporterscene.name=JDSALing,魔绫地牢总设计者
|
||||
scenes.lingsupporterscene.name=JDSALing,脑力像素地牢总设计者
|
||||
|
||||
scenes.spslscene.ts=碳酸天剑-Tianscar
|
||||
scenes.spslscene.title=捐赠
|
||||
scenes.spslscene.ling=中二绫-JDSALing
|
||||
scenes.spslscene.zxz=致谢名单
|
||||
scenes.changesscene.spd=破碎的像素地牢
|
||||
scenes.changesscene.mlpd=魔绫像素地牢
|
||||
scenes.changesscene.mlpd=脑力益智像素游戏
|
||||
scenes.changesscene.who=MLPD详细日志摘要
|
||||
scenes.aboutselectscene.title=关于游戏
|
||||
scenes.alchemyscene.title=炼金
|
||||
|
@ -126,7 +125,7 @@ scenes.badgesscene.title=你的徽章
|
|||
|
||||
scenes.changesscene.title=近期更新变动
|
||||
scenes.changesscene.new=新内容
|
||||
scenes.changesscene.changes=改动
|
||||
scenes.changesscene.changes=概述
|
||||
scenes.changesscene.buffs=增强
|
||||
scenes.changesscene.nerfs=削弱
|
||||
scenes.changesscene.bugfixes=Bug修复
|
||||
|
@ -176,7 +175,8 @@ scenes.interlevelscene.install=安装游戏
|
|||
scenes.interlevelscene.file_not_found=未能找到存档文件。如果重启后问题依旧存在, 那这个存档可能已经损坏。节哀顺变。
|
||||
scenes.interlevelscene.io_error=未能找到存档文件。如果重启后问题依旧存在, 那这个存档可能已经损坏。节哀顺变。
|
||||
|
||||
scenes.introscene.text=自宇宙诞生以来,我们的创世神便创造了圣灵之心并建立了我们最初的家园。\n时间不知道过了多久,由于创世神需要离开家园,于是便创造了三个管理者。\n并嘱咐他们一定要守护好这里。创世神始终放不下他们,于是将圣灵之心力量的一半给予了三个管理者,三个管理者叫了一名工匠帮忙制作。于是,水晶之心,就此诞生……\n然而,好景不长。一名管理者突然下落不明,就在同时,另外两个管理者所管理的国度开始受到了未知的毁灭性的袭击。战火蔓延到了每一个角落,但创世神早已离去……\n无奈之下,其中一名的管理者出来发动了一个禁忌魔法,一瞬间,袭击停止了。但这名管理者也消耗了自己的四分之一的生命。并且,由于袭击过于庞大,战后的鬼魂与怨念仍然是头号危机。危急之下,创世神突然归来,并使用水晶之心将全部污秽净化,并用水晶之心把所有的灵体镇压,随后将它放在三国交界处的废弃地牢深处之中。\n但这一做,创世神违背了天地平衡,故此也没有人再记得她。\n所有关于她的记忆,她的传说,被一并消除。\n3个世纪后……\n当时的三大管理者,如今已成为地表三巨头。\n关于那个地牢,近期有传言称里面的环境越来越不稳定,且还有垂涎于水晶之心的人前往。\n你也是其中的一员,你会找到真相吗?是时候开始你自己的冒险了!
|
||||
scenes.introscene.text=欢迎游玩脑力像素游戏,祝你游戏愉快!也希望你能学中玩,玩中学,祝你通关顺利。
|
||||
|
||||
scenes.newsscene.title=游戏动态情报
|
||||
scenes.newsscene.read_more=查阅更多
|
||||
scenes.newsscene$newsinfo.english_warn=新闻仅能由开发者以中文撰写。
|
||||
|
@ -215,15 +215,15 @@ scenes.titlescene$changesbutton.changes=近期更新界面
|
|||
scenes.titlescene.patreon_body=《破碎像素地牢》是一款完全免费的游戏,有玩家的大方捐献支持我才能一直坚持开发。\n\n如果想支持我,最好的方法是使用 Patreon 平台。 Patreon 能提供一个稳定的收入源,也让我有方法回馈我的支持者!\n\nPatreon 支持者每周都可以看一篇独家文章,抢先于其他所有人了解我的下一步开发想法!\n\n你可以访问我的 Patreon 页面获悉最新的回馈详情。感谢你的支持!\n\n(Patreon 奖励只能提供英语内容,请见谅)
|
||||
scenes.titlescene.patreon_button=Patreon 赞助页面
|
||||
|
||||
scenes.welcomescene.welcome_msg=魔绫的像素地牢是一个roguelike类RPG游戏,有着随机生成的敌人、关卡、物品和陷阱!\n\n每一轮游戏都是一次全新的挑战,注意,死亡是永久的!\n\n祝你在地牢一路顺风!
|
||||
scenes.welcomescene.update_intro=魔绫的像素地牢---重大更新!
|
||||
scenes.welcomescene.welcome_msg=脑力益智像素游戏是一个roguelike类RPG游戏,有着随机生成的敌人、关卡、物品和陷阱!\n\n每一轮游戏都是一次全新的挑战,注意,死亡是永久的!\n\n祝你在地牢一路顺风!
|
||||
scenes.welcomescene.update_intro=脑力益智像素游戏---重大更新!
|
||||
scenes.welcomescene.update_msg=0.6.0.0经过一段时间终于出炉,基于破碎1.2.3!!! 具体请看更新记录!By JDSA——Ling
|
||||
scenes.welcomescene.patch_intro=魔绫的像素地牢补丁已经成功安装!
|
||||
scenes.welcomescene.patch_intro=脑力益智像素游戏补丁已经成功安装!
|
||||
scenes.welcomescene.patch_bugfixes=本次补丁包含少量Bug修复。
|
||||
scenes.welcomescene.patch_translations=本次补丁包含翻译文本更新。
|
||||
scenes.welcomescene.patch_balance=本次更新包含游戏平衡性改动。
|
||||
scenes.welcomescene.patch_msg=本次补丁同样包含少量微调和性能优化。
|
||||
scenes.welcomescene.what_msg=看起来你正使用的存档来自于新版本的魔绫地牢!\n\n谨慎行事!你的存档可能包含一些这个版本中不存在的东西,这可能会导致一些非常奇怪的错误发生。
|
||||
scenes.welcomescene.what_msg=看起来你正使用的存档来自于新版本的脑力像素地牢!\n\n谨慎行事!你的存档可能包含一些这个版本中不存在的东西,这可能会导致一些非常奇怪的错误发生。
|
||||
scenes.welcomescene.lang_warning_title=翻译未完成
|
||||
scenes.welcomescjene.lang_warning_msg=本次更新内容还未被完全翻译。\n\n部分词汇可能还是英语。\n\n翻译组正全力解决这个问题,完整翻译将在不久后放出。\n\n谢谢您的耐心等待。
|
||||
scenes.welcomescene.continue=继续
|
||||
|
@ -237,10 +237,10 @@ scenes.kamuletscene.stay=逆转宽恕
|
|||
scenes.kamuletscene.exit=踏上征途
|
||||
scenes.kamuletscene.text=骄傲、妒忌、愤怒,伤悲、贪婪、贪食、好色\n\n人们的丑陋,在这里显露了出来。现在,你已经来到了一个两难的境地。是接受审判,从历史中消失?还是清除所有记忆,重新为你铺上一次道路。\n\n我不是神,但我是神的代言人。请做出选择吧!
|
||||
|
||||
scenes.guidescene.title=魔绫像素地牢指南书
|
||||
scenes.guidescene.title=脑力益智像素游戏指南书
|
||||
scenes.guidescene.pages=11
|
||||
scenes.guidescene.title_0=写在前面
|
||||
scenes.guidescene.page_0=欢迎来到魔绫的像素地牢,这个地牢Δ基于0.92破碎Δ。\n\n这里是新手必读指南书。\n\n如果你是第一次游玩本地牢,请一定先看看这个指南。\n\nΔ它绝对对你今后游玩有益处。
|
||||
scenes.guidescene.page_0=欢迎来到脑力益智像素游戏,这个地牢Δ基于0.92破碎Δ。\n\n这里是新手必读指南书。\n\n如果你是第一次游玩本地牢,请一定先看看这个指南。\n\nΔ它绝对对你今后游玩有益处。
|
||||
scenes.guidescene.title_1=关于难度
|
||||
scenes.guidescene.page_1=诚然,难度是有的,不过肯定比不上赫拉克勒斯的十二试炼。 \n\n 事实上它的难度被认为控制在了一个可以接受的水平,如果不适应或感觉太难,很可能是因为没有熟悉它较为独特的机制,你可能需要更细致和灵活的战略战术才能在地牢里无往不利,所以接下来的内容会很好地帮助你。\n\n 放轻松,虽然它的要求有点高,但凡人又不是非要通关不可。
|
||||
scenes.guidescene.title_2=鉴定物品
|
||||
|
@ -267,5 +267,5 @@ scenes.thanksscene.test=\n\n测试致谢:\n-CodenameE\n-熊猫头\n-迷茫\n-
|
|||
scenes.thanksscene.music=\n\n音乐致谢:\n-Prohonor\n-泰拉瑞亚
|
||||
scenes.thanksscene.art=\n\n美术致谢:\n-被子\n-冷群怪\n-REN\n-Daniel Clan\n-奈亚子-\nTianScar\n-ObSir\n-Nxhy
|
||||
scenes.thanksscene.ad=\n\n宣传致谢:\n-_那些回忆\n-罗贝里\n-泰勒\n-Ømicrónrg9_\n\n翻译致谢:\n-English:\n_Noodlemire & JDSALing_\n\n-繁体中文:\n-_那些回忆 & 冷群_\n\n-日本语:\n-_FromBeyond_
|
||||
scenes.thanksscene.join=加入魔绫总群
|
||||
scenes.thanksscene.join=加入脑力像素总群
|
||||
scenes.thanksscene.link=https://jq.qq.com/?_wv=1027&k=wzMjU0f7
|
|
@ -10,7 +10,7 @@ ui.toolbar.examine_prompt=再按一遍此按钮以搜索周边;\n点选一个
|
|||
ui.updatenotification.title=更新
|
||||
ui.updatenotification$wndupdate.title=有新版本可用!
|
||||
ui.updatenotification$wndupdate.versioned_title=最新版本:%s
|
||||
ui.updatenotification$wndupdate.desc=魔绫的像素地牢会时常更新以变更既有内容,或是加入新东西!\n\n游戏平衡也会经常得到调整,维持物品、英雄、敌人强度的大致均衡。\n\n更新还包含漏洞修复与各种稳定性提升。
|
||||
ui.updatenotification$wndupdate.desc=脑力益智像素游戏会时常更新以变更既有内容,或是加入新东西!\n\n游戏平衡也会经常得到调整,维持物品、英雄、敌人强度的大致均衡。\n\n更新还包含漏洞修复与各种稳定性提升。
|
||||
ui.updatenotification$wndupdate.button=跳转到更新页面
|
||||
|
||||
ui.mainhandindicator$1.saver=冒险指南
|
||||
|
@ -354,7 +354,7 @@ ui.changelist.mlpd.vm0_5_x_changes.musipa=原创音乐圣境层实装&&借用音
|
|||
ui.changelist.mlpd.vm0_5_x_changes.musipalogs=作者_Prohonor_原创发力!\n\n借用泰拉瑞亚双子魔眼BGM,光之女皇BGM\n\n借用橙光战斗BGM第二组\n\n本游戏完全用爱发电,不用于任何商业用途!
|
||||
|
||||
ui.changelist.mlpd.vm0_5_x_changes.dev8=开发日志
|
||||
ui.changelist.mlpd.vm0_5_x_changes.dev8logs=这是大学大一上学期结束的最后一次更新\n-在今后的生活中,我将会休息一段时间。\n-一方面是继续提升编程技术,一方面是为了一些其他重要事情。\n\n无论如何,感谢大家对魔绫地牢的支持。\n\n2022-1-17-Release!
|
||||
ui.changelist.mlpd.vm0_5_x_changes.dev8logs=这是大学大一上学期结束的最后一次更新\n-在今后的生活中,我将会休息一段时间。\n-一方面是继续提升编程技术,一方面是为了一些其他重要事情。\n\n无论如何,感谢大家对脑力像素地牢的支持。\n\n2022-1-17-Release!
|
||||
|
||||
ui.changelist.mlpd.vm0_5_x_changes.mimmc=新Boss:钻石宝箱王
|
||||
ui.changelist.mlpd.vm0_5_x_changes.mimmclogs=想要宝物,就必须先击败我!
|
||||
|
|
|
@ -361,32 +361,28 @@ windows.wndsettings$langstab.title=选择语言
|
|||
windows.wndsettings$langstab.completed=这个语言已被完全翻译并审核完毕。
|
||||
windows.wndsettings$langstab.unreviewed=_这个语言尚未被完全审核。_它也许还存在一些问题,不过所有的文本都已被翻译。
|
||||
windows.wndsettings$langstab.unfinished=_这个语言尚未被完全翻译。_大量文本可能仍然为简体中文。
|
||||
windows.wndsettings$langstab.transifex=所有翻译都来自_破碎原版语言组_和_魔绫语言组_。
|
||||
windows.wndsettings$langstab.transifex=所有翻译都来自_破碎原版语言组_和_脑力像素语言组_。
|
||||
windows.wndsettings$langstab.credits=制作名单
|
||||
windows.wndsettings$langstab.reviewers=审核员
|
||||
windows.wndsettings$langstab.translators=翻译员
|
||||
|
||||
windows.wndstory.sewers=繁茂的林木构筑成了地牢的表层部分。尽管还没进入地牢,地底深处的黑暗能量却是已经渗透到地表了。\n这里的树木相较于其他地方更为浓密,即使是在白天也很难见到阳光。\n不过黑暗能量对这儿的影响似乎仅限于此——如果你不在乎那些莫名其妙出现的小生物,那这儿也和其他树木茂密的森林没什么两样。
|
||||
windows.wndstory.sewers=夏朝(约公元前2070年-约公元前1600年),是中国史书中记载的第一个世袭制朝代。一般认为夏朝共传14代、17后(夏统治者在位称“后”,去世后称“帝”),建立者为大禹,亦又说是启定都阳城(今河南郑州登封)。\n\n根据史书记载,禹本来传位于益,但益却让位给禹的儿子启,这段历史被看作是中国历史上“家天下”的开始。从夏朝的建立开始。夏的十一支姒姓部落与夏后氏中央王室在血缘上有宗法关系,政治上有分封关系,经济上有贡赋关系,大致构成夏王朝的核心领土范围。\n\n夏时期的文物中有一定数量的青铜和玉制的礼器, 7-8年代约在新石器时代晚期、青铜时代初期。\n\n夏朝西起河南省西部、山西省南部,东至河南省、山东省和河北省三省交界处,南达湖北省北部,北及河北省南部。这个区域的地理中心是今河南偃师、登封、新密、禹州一带。
|
||||
|
||||
windows.wndstory.sewersboss=森林的底部并不像往常那样只有树根,而是遍布着翠绿的藤蔓。\n它们编织成一张大网,将所有不慎跌落谷底的生命体供给给中间那粒鲜红的果实。\n这里是森林一切生命力的源泉,这里是森林之肺。
|
||||
windows.wndstory.sewersboss=宋朝(960—1279年)是中国历史上承五代十国、下启元朝的时代,分北宋和南宋。\n\n宋朝历史从960年宋太祖赵匡胤黄袍加身、建立宋朝开始,一直到1279年赵昺跳海殉国为止。共计将近320年。\n\n宋朝建于五代末宋太祖赵匡胤发动兵变,夺后周帝位而改元自立,,继续周世宗时统一天下的大略,最终基本完成了对全国的统一。太祖赵匡胤、太宗赵光义二帝发动宋代仅有的几轮北伐,宋代前中期疆域大致定型。此后宋朝一直采取重内轻外的消极防守策略,很少对北再兴干戈。建国之初,赵匡胤为避免重蹈唐后期藩镇割据和宦官频繁干政引发的悲剧,将军权归于中央,采取崇文抑武的国策,采取募兵制和调将指挥制相结合的政法。这一国策影响所及深远:一方面宋朝地方兵员极广极雑,终宋少有权臣豪强乱政,工商业、科技发达,文化极为繁荣;另一方面,也导致北宋自初立之后武备积弱,频频不敌北方外患,对西夏、契丹用兵屡遭挫败。\n\n宋于1126年-1127年发生靖康之难,徽、钦二帝皆被金人掳去,宋室被迫南迁临安(今浙江杭州),与入侵的金国以淮水、大散关为界,史称南宋,此前建都汴梁时期的宋称作北宋。1276年,都城临安陷落,南宋亡于蒙古可汗忽必烈建立的元帝国的征服。
|
||||
|
||||
#windows.wndstory.prison=多年以前一座地下监狱为了收容危险的犯罪者而建立于此。由于其严格的监管和高安全性,地表各处的囚犯都被带到这里经受时间的折磨。 \n\n但不久之后下方充斥着黑暗的瘴气在这里弥漫开来,扭曲了罪犯和狱卒的心智。\n\n监狱里充斥开来的混乱使其彻底失去了秩序,于是城市封锁了整个监狱。现今已经没有人知道这些高墙之下经历过无数死亡的生物究竟会是什么样子...\n\n现在这里已经乱套,你只能将所有东西全部杀掉。
|
||||
|
||||
windows.wndstory.prison=水晶之心所散发出来的寒气结合了地表树木汇集的水汽,化作阵阵飘雪散落在这个古旧的监狱中。\n\n这里相较于地表更为寒冷,但还不至于让人瑟瑟发抖。\n\n监狱如今早已没有生命的气息,亡灵生物和死灵占据着这个破败的废墟。
|
||||
windows.wndstory.prison=唐朝(618年-907年),是中国历史上继隋朝之后的大一统中原王朝,共历二十一帝,享国二百八十九年。隋末天下群雄并起,唐国公李渊趁势在晋阳起兵,于618年称帝,建立唐朝,定都长安。唐太宗继位后开创贞观之治,为盛唐奠定基础。唐高宗承贞观遗风开创"永徽之治"。\n\n690年,武则天改国号为周, 705年神龙革命后,恢复唐国号。 唐玄宗即位后缔造全盛的开元盛世,使唐朝达到全盛。 天宝末年,全国人口达八千万左右。 安史之乱后接连出现藩镇割据、宦官专权现象,国力渐衰。历经唐宪宗元和中兴、唐武宗会昌中兴及唐宣宗大中之治,国势复振。878年爆发的黄巢起义,破坏了唐朝统治根基。\n\n907年藩镇将领朱温篡唐,唐朝覆亡。唐朝疆域空前辽阔,极盛时东起日本海、南据安南、西抵咸海、北逾贝加尔湖。 在攻灭东突厥、薛延陀后,唐太宗被四夷各族尊为天可汗 。唐朝又借羁縻制度征调突厥、回鹘、铁勒、契丹、靺鞨、室韦等民族攻伐敌国,并允许日本、南诏、新罗、渤海国等藩属国学习自身的文化与制度,出现万国来朝局。\n\n唐朝接纳各国交流学习,经济、社会、文化、艺术呈现出多元化、开放性等特点 ,诗、书、画、乐等方面涌现出大量名家,如诗仙李白、诗圣杜甫、诗魔白居易,书法家颜真卿,画圣吴道子,音乐家李龟年等。唐朝是当时世界上最强盛的国家之一,声誉远播,与亚欧国家均有往来。唐以后海外多称中国人为"唐人"。
|
||||
|
||||
|
||||
windows.wndstory.prisonboss=如果你做了坏事,就会付出与之相匹配的代价。\n\n希望与绝望,是一个相对量\n\n这是她曾经对天狗说过的话\n\n\
|
||||
作为这个世界的第一个刺客,天狗的职责是什么?他究竟是否还在遵守那个契约?\n\n没有人知道这些。\n\n不过,你并不是天狗等待的那个人\n\n\
|
||||
因此,如果你想要去矿洞。必须要先想办法离开这里。\n\n虽然天狗与你无冤无仇,但,真正的钥匙在天狗那里,您必须为这一战付出艰辛的努力。\n\n不过,你究竟是常量吗?\n\n如果是,请拿出证明。
|
||||
|
||||
windows.wndstory.caves=这座从废弃监狱延伸而下的洞穴,早已空无一人。这里对于城市而言过于深入且很难开发,其中极度匮乏的矿物也无法激起矮人的兴趣。曾经在这里有一个为两个势力建立的贸易站,但在矮人国度衰落之后,只有无所不在的豺狼人和地下生物还居住在这里。\n\n但这里早已经被邪恶的魔力控制\n\n这里已经十分危险了。
|
||||
windows.wndstory.prisonboss=明朝(1368年―1644年),中国历史上的朝代,明太祖朱元璋建立。初期建都南京,明成祖时期迁都北京。传十六帝,共计276年。\n\n元末爆发红巾起义,朱元璋加入郭子兴队伍。1364年称吴王,史称西吴。1368年初称帝,国号大明,定都南京。1421年朱棣迁都至北京,以南京为陪都。明初历经洪武之治、永乐盛世、仁宣之治等治世政治清明、国力强盛。1449年经土木堡之变由盛转衰,后经弘治中兴、万历中兴国势复振。晚明因政治腐败、东林党争和天灾外患导致国力衰退,爆发农民起义。1644年李自成攻入北京,崇祯帝自缢,明朝灭亡,清兵入关。明朝宗室在南方建立了多个政权,史称南明。清军陆续击败弘光、隆武、绍武等政权。1662年永历帝被杀,南明覆灭。1683年,清军攻占台湾,奉明正朔的明郑覆灭。\n\n明朝时期君主专制空前加强,多民族国家也进一步统一和巩固。明初废丞相、设立厂卫特务机构,加强了专制主义中央集权,但同时也为中后期宦官专政埋下伏笔。明朝时期农民反封建斗争也进入了一个新阶段。
|
||||
windows.wndstory.caves=明朝(1368年―1644年),中国历史上的朝代,明太祖朱元璋建立。初期建都南京,明成祖时期迁都北京。传十六帝,共计276年。\n\n元末爆发红巾起义,朱元璋加入郭子兴队伍。1364年称吴王,史称西吴。1368年初称帝,国号大明,定都南京。1421年朱棣迁都至北京,以南京为陪都。明初历经洪武之治、永乐盛世、仁宣之治等治世政治清明、国力强盛。1449年经土木堡之变由盛转衰,后经弘治中兴、万历中兴国势复振。晚明因政治腐败、东林党争和天灾外患导致国力衰退,爆发农民起义。1644年李自成攻入北京,崇祯帝自缢,明朝灭亡,清兵入关。明朝宗室在南方建立了多个政权,史称南明。清军陆续击败弘光、隆武、绍武等政权。1662年永历帝被杀,南明覆灭。1683年,清军攻占台湾,奉明正朔的明郑覆灭。\n\n明朝时期君主专制空前加强,多民族国家也进一步统一和巩固。明初废丞相、设立厂卫特务机构,加强了专制主义中央集权,但同时也为中后期宦官专政埋下伏笔。明朝时期农民反封建斗争也进入了一个新阶段。
|
||||
|
||||
windows.wndstory.cavesboss=起源,发展,盛世,腐朽,危机,暴乱,谋权,灭亡\n\n这便是这个矮人王国的发展历程\n\n现在,矮人王国的人似乎已经知道你正在前来的路上、\n\n\
|
||||
他们为你准备了一份大礼,你是否看见了前面的那台机器?\n\n那是DM,是矮人王国的中的一台巨型采矿机器。\n\n不过,现在这个机器只是在守卫这里。\n\n它在等待什么?\n\n我们又在这里干什么?\n\n 按照你曾经在家看见的古书记载,这里过去就是曾经繁荣昌盛的矮人国度。\n\nDM似乎并没有发现你,虽然这不是DM的错,但你是想寻找到地牢的深处。\n\n为此,你不得不得向这台机器进行殊死搏斗。\n\n记住,要相信自己,能够活下来!
|
||||
|
||||
windows.wndstory.icedead=死亡不是我们的终点,而是我们的起点。\n\n-在堕落的那一瞬间,我就已经与世隔绝。现在,谁还能帮助我?
|
||||
|
||||
windows.wndstory.city=矮人都市曾经是最宏伟的矮人城邦。在其鼎盛时期矮人的机械化部队曾成功击退过古神及其恶魔军队的入侵。但是也有传闻说,凯旋而归的战士同时带来了腐坏的种子,矮人王国的胜利正是其毁灭的开端。\n\n这里的魔力越来越强烈,谁才是幕后主谋?
|
||||
windows.wndstory.city=中国历史的发展历程可以大致分为以下几个阶段:先秦时期、秦汉时期、三国两晋南北朝、隋唐时期、五代十国、宋元明清时期。其中,先秦时期是中国文化的孕育期;秦汉时期实现了统一和中央集权;三国两晋南北朝时期是中国历史上政治动荡和文化繁荣的时期;隋唐时期是中国古代封建文明的顶峰时期;五代十国时期是中国历史上政治割据和文化交流的时期;宋元明清时期是中国古代封建社会的黄金时代,同时也经历了西方列强入侵和半殖民地化的苦难历程。\n\n祝贺你,游戏通关。
|
||||
|
||||
windows.wndstory.cityboss=一路杀出重围\n\n一路直逼矮人国王议事厅\n\n你的心中一直明白:“这里已经不是矮人王国,这里是恶魔的乐园”\n\n矮人国度的幕后主谋应该知道你来了\n\n而你也知道,这将是你第一次同时也是最后一次见到矮人国王\n\n你已经准备好了,那么,就请杀出一条血路吧!
|
||||
|
||||
|
@ -418,7 +414,7 @@ windows.wndgoshop.ok=索取
|
|||
windows.wndstory.drawfmaster=庄严的大厅,死寂的环境。\n\n这里曾经是矮人王国的最大议事厅,而如今的死寂恐怖气氛却令这里显得十分诡异。\n\n并且这里似乎机关重重……\n有一个破旧不堪的石碑依稀的写着不要踏入这里,裂缝会变为地板,大将将会醒来……\n这在预示着什么?
|
||||
|
||||
windows.wndsupportprompt.title=来自Ling的留言
|
||||
windows.wndsupportprompt.intro=欢迎~希望您能在魔绫的像素地牢中玩得开心!
|
||||
windows.wndsupportprompt.intro=欢迎~希望您能在脑力益智像素游戏中玩得开心!
|
||||
windows.wndsupportprompt.close=开启FireBase功能
|
||||
|
||||
windows.wndtradeitem.buy=花%d金币购买
|
||||
|
@ -472,6 +468,6 @@ difficulty.hard_desc=直面地牢,前方只有黑暗,为了胜利,我们
|
|||
|
||||
|
||||
|
||||
difficulty.impossible_desc=魔绫全部内容更新完后,完成至少两个结局后可以开启炼狱难度。
|
||||
difficulty.impossible_desc=脑力像素全部内容更新完后,完成至少两个结局后可以开启炼狱难度。
|
||||
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ difficulty.impossible=Impossible
|
|||
#difficulty.easy_desc=踏上一次简单的旅行,我们知晓每一次胜利。简单难度调整如下:\n\n-1.所有怪物_攻速减少50%_\n-2.所有怪物_移速降低25%_\n-3.所有怪物_闪避下降30%_\n-4.英雄击败怪物将获得_1.5倍经验_\n-5.食物回复饥饿效果提升_1.2倍_\n-6._寒冷值_不再自然降低
|
||||
#difficulty.normal_desc=但愿这只是一次调查。
|
||||
#difficulty.hard_desc=前进吧,英雄,调查地牢的真相。所有怪物血量提升25%。
|
||||
#difficulty.impossible_desc=魔绫全部内容更新完后,完成至少两个结局后可以开启炼狱难度。
|
||||
#difficulty.impossible_desc=脑力像素全部内容更新完后,完成至少两个结局后可以开启炼狱难度。
|
||||
|
||||
windows.wndsettings$extendtab.quickslots=Quickslots Setting
|
||||
windows.wndsettings$extendtab.wxts=Tips: Adjust the shortcut bar after entering the game
|
||||
|
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 82 KiB |
Before Width: | Height: | Size: 548 B After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 536 B After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 296 B After Width: | Height: | Size: 1.9 KiB |
|
@ -110,7 +110,6 @@ public class Badges {
|
|||
GODD_MAKE ( 82 ),
|
||||
CLEAR_WATER ( 83 ),
|
||||
GHOSTDAGE ( 84 ),
|
||||
ENDIED ( 85 ),
|
||||
//gold
|
||||
PIRANHAS ( 64 ),
|
||||
//these names are a bit outdated, but it doesn't really matter.
|
||||
|
@ -155,7 +154,7 @@ public class Badges {
|
|||
GAMES_PLAYED_3 ( 99, true ),
|
||||
CHAMPION_1X ( 100 ),
|
||||
KILL_APPLE(101),
|
||||
KILL_DM720 (102),
|
||||
|
||||
RLPT (103),
|
||||
|
||||
|
||||
|
@ -165,20 +164,16 @@ public class Badges {
|
|||
CHAMPION_3X ( 114 ),
|
||||
CHAMPION_4X ( 115 ),
|
||||
CHAMPION_5X ( 116 ),
|
||||
NYZ_SHOP ( 117 ),
|
||||
DAGETO ( 118 ),
|
||||
KILL_DM ( 119 ),
|
||||
|
||||
//rudy
|
||||
FIREGIRL ( 128 ),
|
||||
//rudy/FIREGIRL ( 128 ),
|
||||
//SLIMEPR ( 129 ),
|
||||
DRAWF_HEAD ( 130 ),
|
||||
SPICEALBOSS ( 131),
|
||||
|
||||
|
||||
|
||||
KILL_MG (133),
|
||||
BIG_X (134),
|
||||
EXSG (135),
|
||||
BRCLER (136);
|
||||
EXSG (135);
|
||||
|
||||
public boolean meta;
|
||||
|
||||
|
@ -373,17 +368,6 @@ public class Badges {
|
|||
displayBadge( badge );
|
||||
}
|
||||
|
||||
public static void nyzvalidateGoldCollected() {
|
||||
Badge badge = null;
|
||||
|
||||
if (!local.contains( Badge.NYZ_SHOP ) && Statistics.naiyaziCollected >= 7) {
|
||||
badge = Badge.NYZ_SHOP;
|
||||
local.add( badge );
|
||||
}
|
||||
|
||||
displayBadge( badge );
|
||||
}
|
||||
|
||||
public static void GhostDageCollected() {
|
||||
Badge badge = null;
|
||||
|
||||
|
@ -574,13 +558,7 @@ public class Badges {
|
|||
validateYASD();
|
||||
}
|
||||
|
||||
public static void ENDDIED() {
|
||||
// Badge badge = Badge.ENDIED;
|
||||
// local.add( badge );
|
||||
// displayBadge( badge );
|
||||
//
|
||||
// validateYASD();
|
||||
}
|
||||
|
||||
|
||||
public static void DeathRedNercols() {
|
||||
Badge badge = Badge.DEATH_FROM_FIRE;
|
||||
|
@ -670,14 +648,14 @@ public class Badges {
|
|||
}
|
||||
}
|
||||
|
||||
private static void validateAMZ() {
|
||||
if (global.contains( Badge.KILL_APPLE ) &&global.contains( Badge.KILL_DM720 ) &&
|
||||
global.contains( Badge.KILL_MG) && global.contains( Badge.FIREGIRL) && global.contains( Badge.DRAWF_HEAD)) {
|
||||
|
||||
Badge badge = Badge.SPICEALBOSS;
|
||||
displayBadge( badge );
|
||||
}
|
||||
}
|
||||
// private static void validateAMZ() {
|
||||
// if (global.contains( Badge.KILL_APPLE ) &&global.contains( Badge.KILL_DM720 ) &&
|
||||
// global.contains( Badge.KILL_MG) && global.contains( Badge.FIREGIRL) && global.contains( Badge.DRAWF_HEAD)) {
|
||||
//
|
||||
// Badge badge = Badge.SPICEALBOSS;
|
||||
// displayBadge( badge );
|
||||
// }
|
||||
// }
|
||||
|
||||
private static void validateYASD() {
|
||||
if (global.contains( Badge.DEATH_FROM_FIRE ) &&
|
||||
|
@ -934,37 +912,30 @@ public class Badges {
|
|||
|
||||
public static void KILLSAPPLE() {
|
||||
displayBadge( Badge.KILL_APPLE);
|
||||
validateAMZ();
|
||||
//validateAMZ();
|
||||
}
|
||||
|
||||
public static void KILLSDM720() {
|
||||
displayBadge( Badge.KILL_DM720 );
|
||||
validateAMZ();
|
||||
}
|
||||
// public static void KILLSDM720() {
|
||||
// displayBadge( Badge.KILL_DM720 );
|
||||
// validateAMZ();
|
||||
// }
|
||||
|
||||
public static void CLEARWATER() {
|
||||
displayBadge( Badge.CLEAR_WATER );
|
||||
}
|
||||
|
||||
public static void KILLDWARF() {
|
||||
displayBadge( Badge.DRAWF_HEAD );
|
||||
validateAMZ();
|
||||
}
|
||||
// public static void KILLDWARF() {
|
||||
// displayBadge( Badge.DRAWF_HEAD );
|
||||
// validateAMZ();
|
||||
// }
|
||||
|
||||
|
||||
public static void KILLFIREGIRL() {
|
||||
displayBadge( Badge.FIREGIRL );
|
||||
validateAMZ();
|
||||
}
|
||||
|
||||
public static void KILLMG() {
|
||||
displayBadge( Badge.KILL_MG );
|
||||
validateAMZ();
|
||||
//validateAMZ();
|
||||
}
|
||||
|
||||
public static void KILL_DMK() {
|
||||
displayBadge( Badge.KILL_DM );
|
||||
validateAMZ();
|
||||
}
|
||||
|
||||
|
||||
public static void BIGX() {
|
||||
|
@ -974,9 +945,7 @@ public class Badges {
|
|||
displayBadge( Badge.EXSG );
|
||||
}
|
||||
|
||||
public static void BOSSRUSH() {
|
||||
displayBadge( Badge.BRCLER );
|
||||
}
|
||||
|
||||
|
||||
public static void GOODRLPT() {
|
||||
displayBadge( Badge.RLPT );
|
||||
|
|
|
@ -73,7 +73,7 @@ public class Challenges {
|
|||
"icedied",
|
||||
"pro",
|
||||
"cs",
|
||||
"cs",
|
||||
"cs"
|
||||
};
|
||||
|
||||
public static final int[] MASKS = {
|
||||
|
|
|
@ -64,14 +64,12 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.DeadEndLevel;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.levels.DimandKingLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.DwarfMasterBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.ForestBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.HallsLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.ItemLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.LastLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.LinkLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.NewCavesBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.NewCityBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.NewHallsBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.PrisonBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.PrisonLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.SLMKingLevel;
|
||||
|
@ -457,40 +455,9 @@ public class Dungeon {
|
|||
level = new CavesLevel();
|
||||
break;
|
||||
case 15:
|
||||
if (SPDSettings.level3boss()==3){
|
||||
level = new CavesGirlDeadLevel();
|
||||
} else if (SPDSettings.level3boss()==2){
|
||||
level = new CaveTwoBossLevel();
|
||||
} else {
|
||||
level = new NewCavesBossLevel();
|
||||
}
|
||||
level = new CavesGirlDeadLevel();
|
||||
break;
|
||||
case 16:
|
||||
case 17:
|
||||
case 18:
|
||||
case 19:
|
||||
level = new CityLevel();
|
||||
break;
|
||||
case 20:
|
||||
if((Statistics.boss_enhance & 0x8) != 0) {
|
||||
Buff.affect(hero, TestDwarfMasterLock.class).set((1), 1);
|
||||
level = new DwarfMasterBossLevel();
|
||||
break;
|
||||
}
|
||||
else
|
||||
level = new NewCityBossLevel();
|
||||
break;
|
||||
case 21:
|
||||
case 22:
|
||||
case 23:
|
||||
case 24:
|
||||
level = new HallsLevel();
|
||||
break;
|
||||
case 25:
|
||||
if((Statistics.boss_enhance & 0x10) != 0) level = new YogGodHardBossLevel();
|
||||
else level = new NewHallsBossLevel();
|
||||
break;
|
||||
case 26:
|
||||
level = new LastLevel();
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -67,7 +67,7 @@ public abstract class ChampionHero extends FlavourBuff {
|
|||
|
||||
@Override
|
||||
public String desc() {
|
||||
//todo 取负数,通过绝对值获取,以显示为正数 并通过INT省略后面的小数点
|
||||
//todo 取负数,通过绝对值获取,以显示为正数 并通过INT省略后面的小数点 未来会优化
|
||||
return Messages.get(this, "desc")+(int)(Math.abs(1.0f - visualcooldown())+1f);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,6 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.QuickSlot;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.ChampionHero;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.RandomBuff;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.abilities.ArmorAbility;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.abilities.huntress.NaturesPower;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.abilities.huntress.SpectralBlades;
|
||||
|
@ -161,11 +160,6 @@ public enum HeroClass {
|
|||
new WaterSoul().quantity(4).identify().collect();
|
||||
}
|
||||
|
||||
if ( Badges.isUnlocked(Badges.Badge.NYZ_SHOP)){
|
||||
Buff.affect(hero, RandomBuff.class).set( (5), 1 );
|
||||
Dungeon.gold+=1200;
|
||||
}
|
||||
|
||||
if ( Badges.isUnlocked(Badges.Badge.EXSG)){
|
||||
Dungeon.gold += 1500;
|
||||
new PotionOfExperience().quantity(2).identify().collect();
|
||||
|
|
|
@ -1,5 +1,9 @@
|
|||
package com.shatteredpixel.shatteredpixeldungeon.actors.mobs;
|
||||
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.AQUAPHOBIA;
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.EXSG;
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.RLPT;
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.SBSG;
|
||||
import static com.shatteredpixel.shatteredpixeldungeon.Dungeon.hero;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
|
@ -39,12 +43,10 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.SnowParticle;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.SparkParticle;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Gold;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.DriedRose;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.MagicGirlBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.NoKingMobBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.keys.SkeletonKey;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHealing;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfUpgrade;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfBlastWave;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfGodIce;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.CavesGirlDeadLevel;
|
||||
|
@ -389,19 +391,29 @@ public class MagicGirlDead extends Boss {
|
|||
GameScene.bossSlain();
|
||||
Badges.KILLMG();
|
||||
Badges.validateBossSlain();
|
||||
|
||||
Dungeon.level.drop( new MagicGirlBooks(), pos ).sprite.drop();
|
||||
Dungeon.level.drop( new NoKingMobBooks(), pos ).sprite.drop();
|
||||
WandOfGodIce woc = new WandOfGodIce();
|
||||
woc.level(Random.NormalIntRange(2,6));
|
||||
woc.identify();
|
||||
|
||||
if(Dungeon.isChallenged(RLPT)){
|
||||
Badges.GOODRLPT();
|
||||
}
|
||||
|
||||
if(Dungeon.isChallenged(AQUAPHOBIA)){
|
||||
Badges.CLEARWATER();
|
||||
}
|
||||
|
||||
if(Dungeon.isChallenged(SBSG)){
|
||||
Badges.BIGX();
|
||||
}
|
||||
|
||||
if(Dungeon.isChallenged(EXSG)){
|
||||
Badges.EXSG();
|
||||
}
|
||||
|
||||
Dungeon.level.drop(woc, pos).sprite.drop();
|
||||
|
||||
Dungeon.level.drop(new Gold().quantity(Random.Int(1800, 1200)), pos).sprite.drop();
|
||||
Dungeon.level.drop(new PotionOfHealing().quantity(Random.NormalIntRange(1, 2)), pos).sprite.drop();
|
||||
Dungeon.level.drop(new ScrollOfMagicMapping().quantity(1).identify(), pos).sprite.drop();
|
||||
Dungeon.level.drop(new ScrollOfUpgrade().quantity(1).identify(), pos).sprite.drop();
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -532,7 +532,7 @@ public class NewDM720 extends MolotovHuntsman {
|
|||
// }
|
||||
super.die(cause);
|
||||
Badges.validateBossSlain();
|
||||
Badges.KILLSDM720();
|
||||
//Badges.KILLSDM720();
|
||||
GameScene.bossSlain();
|
||||
Dungeon.level.unseal();
|
||||
//60% chance of 2 shards, 30% chance of 3, 10% chance for 4. Average of 2.5
|
||||
|
|
|
@ -54,6 +54,8 @@ import com.shatteredpixel.shatteredpixeldungeon.items.TengusMask;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.DriedRose;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.LloydsBeacon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.bombs.Bomb;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.DeepBloodBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.GrassKingBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.PrisonBossLevel;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
||||
|
@ -206,7 +208,8 @@ public class Tengu extends Mob {
|
|||
|
||||
GameScene.bossSlain();
|
||||
super.die( cause );
|
||||
|
||||
Dungeon.level.drop( new DeepBloodBooks(), pos ).sprite.drop();
|
||||
Dungeon.level.drop( new GrassKingBooks(), pos ).sprite.drop();
|
||||
Badges.validateBossSlain();
|
||||
|
||||
LloydsBeacon beacon = Dungeon.hero.belongings.getItem(LloydsBeacon.class);
|
||||
|
|
|
@ -28,6 +28,8 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.effects.BlobEmitter;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.DriedRose;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.IceCityBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.YellowSunBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.food.CrivusFruitsFood;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.food.Food;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.keys.CrystalKey;
|
||||
|
@ -237,8 +239,8 @@ public class CrivusFruits extends Mob {
|
|||
Dungeon.level.drop( new IronKey( Dungeon.depth ), pos-1 ).sprite.drop();
|
||||
Dungeon.level.drop( new IronKey( Dungeon.depth ), pos+1 ).sprite.drop();
|
||||
Badges.validateBossSlain();
|
||||
|
||||
|
||||
Dungeon.level.drop( new IceCityBooks(), pos ).sprite.drop();
|
||||
Dungeon.level.drop( new YellowSunBooks(), pos ).sprite.drop();
|
||||
if (!Badges.isUnlocked(Badges.Badge.KILL_APPLE)){
|
||||
Dungeon.level.drop( new LifeTreeSword(), pos ).sprite.drop();
|
||||
} else if (Random.Float()<0.4f) {
|
||||
|
|
|
@ -3,7 +3,6 @@ package com.shatteredpixel.shatteredpixeldungeon.actors.mobs.bosses;
|
|||
import static com.shatteredpixel.shatteredpixeldungeon.Dungeon.hero;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Statistics;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
||||
|
@ -381,7 +380,7 @@ public class DMZERO extends Mob
|
|||
GameScene.add(((Mob) (obj)));
|
||||
Actor.addDelayed(new Pushing(((Char) (obj)), pos, ((NullDiedTO) (obj)).pos), -1F);
|
||||
|
||||
Badges.BOSSRUSH();
|
||||
//Badges.BOSSRUSH();
|
||||
|
||||
yell( Messages.get(this, "defeated") );
|
||||
}
|
||||
|
|
|
@ -1639,7 +1639,7 @@ public class DwarfMaster extends Boss {
|
|||
Dungeon.level.drop(new KingsCrown(), pos).sprite.drop();
|
||||
Dungeon.level.drop(new PotionOfHealing().quantity(Random.NormalIntRange(2,4)), pos).sprite.drop();
|
||||
Dungeon.level.drop(new MeatPie().quantity(Random.NormalIntRange(1,2)), pos).sprite.drop();
|
||||
Badges.KILLDWARF();
|
||||
//Badges.KILLDWARF();
|
||||
Badges.validateBossSlain();
|
||||
|
||||
yell( Messages.get(this, "defeated") );
|
||||
|
|
|
@ -6,7 +6,6 @@ import static com.shatteredpixel.shatteredpixeldungeon.levels.ShopBossLevel.FALS
|
|||
import static com.shatteredpixel.shatteredpixeldungeon.levels.ShopBossLevel.TRUEPosition;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Conducts;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
||||
|
@ -767,7 +766,7 @@ public class FireMagicDied extends Mob implements Callback {
|
|||
|
||||
GameScene.bossSlain();
|
||||
|
||||
Badges.KILLFIREGIRL();
|
||||
//Badges.KILLFIREGIRL();
|
||||
|
||||
yell( Messages.get(this, "defeated",Dungeon.hero.name()) );
|
||||
}
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
package com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Conducts;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.bombs.Bomb;
|
||||
|
@ -25,7 +23,6 @@ import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndNyzShop;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndQuest;
|
||||
import com.watabou.noosa.Game;
|
||||
import com.watabou.noosa.audio.Music;
|
||||
import com.watabou.utils.Callback;
|
||||
|
||||
public class Nyz extends NPC {
|
||||
|
@ -42,15 +39,12 @@ public class Nyz extends NPC {
|
|||
if (!seenBefore && Dungeon.level.heroFOV[pos]) {
|
||||
GLog.p(Messages.get(this, "greetings", Dungeon.hero.name()));
|
||||
//TODO 诡异奈亚子 早上好 中午好 晚上好
|
||||
if(!Dungeon.isDLC(Conducts.Conduct.BOSSRUSH)){
|
||||
Music.INSTANCE.play(Assets.NYZSHOP, true);
|
||||
}
|
||||
seenBefore = true;
|
||||
} else if (seenBefore && !Dungeon.level.heroFOV[pos] && Dungeon.depth == 0) {
|
||||
Music.INSTANCE.play(Assets.TOWN, true);
|
||||
//Music.INSTANCE.play(Assets.TOWN, true);
|
||||
seenBefore = false;
|
||||
} else if (seenBefore && !Dungeon.level.heroFOV[pos] && Dungeon.depth == 12) {
|
||||
Music.INSTANCE.play(Assets.BGM_2,true);
|
||||
//Music.INSTANCE.play(Assets.BGM_2,true);
|
||||
seenBefore = false;
|
||||
}
|
||||
throwItem();
|
||||
|
|
|
@ -7,7 +7,7 @@ public class MainBooks extends Item {
|
|||
|
||||
@Override
|
||||
public String info() {
|
||||
return desc()+"\n\n"+author;
|
||||
return desc();
|
||||
}
|
||||
@Override
|
||||
public int value() {
|
||||
|
|
|
@ -43,16 +43,12 @@ import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.SandalsOfNature;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.TalismanOfForesight;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.TimekeepersHourglass;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.UnstableSpellbook;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.BrokenBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.DeepBloodBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.GrassKingBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.IceCityBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.MagicGirlBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.NoKingMobBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.bookslist.YellowSunBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.playbookslist.DeYiZiBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.playbookslist.MoneyMoreBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.books.playbookslist.PinkRandomBooks;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfExperience;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfFrost;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHaste;
|
||||
|
@ -296,11 +292,11 @@ public enum Catalog {
|
|||
BOOKS.seen.put( YellowSunBooks.class, false);
|
||||
BOOKS.seen.put( MagicGirlBooks.class, false);
|
||||
BOOKS.seen.put( NoKingMobBooks.class, false);
|
||||
BOOKS.seen.put( BrokenBooks.class, false);
|
||||
// BOOKS.seen.put( BrokenBooks.class, false);R
|
||||
|
||||
PLAYBOOKS.seen.put( MoneyMoreBooks.class, true);
|
||||
PLAYBOOKS.seen.put( PinkRandomBooks.class, true);
|
||||
PLAYBOOKS.seen.put( DeYiZiBooks.class, true);
|
||||
// PLAYBOOKS.seen.put( MoneyMoreBooks.class, true);
|
||||
// PLAYBOOKS.seen.put( PinkRandomBooks.class, true);
|
||||
// PLAYBOOKS.seen.put( DeYiZiBooks.class, true);
|
||||
}
|
||||
|
||||
public static LinkedHashMap<Catalog, Badges.Badge> catalogBadges = new LinkedHashMap<>();
|
||||
|
|
|
@ -35,7 +35,6 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.SacrificialFire;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AutoRandomBuff;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.RandomBuff;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.GoldenMimic;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mimic;
|
||||
|
@ -62,7 +61,6 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.AutoShopRoo
|
|||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.LanFireRoom;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.MagicalFireRoom;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.NxhyShopRoom;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.NyzBombAndBooksRoom;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.PitRoom;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.ShopRoom;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom;
|
||||
|
@ -241,10 +239,10 @@ public abstract class RegularLevel extends Level {
|
|||
initRooms.add(new LanFireRoom());
|
||||
}
|
||||
|
||||
if (Dungeon.NyzshopOnLevel()) {
|
||||
Buff.affect(hero, RandomBuff.class).set( (3 + Random.Int(9)+hero.STR/6+hero.HP/30)/Random.Int(1,2)+5, 1 );
|
||||
initRooms.add(new NyzBombAndBooksRoom());
|
||||
}
|
||||
// if (Dungeon.NyzshopOnLevel()) {
|
||||
// Buff.affect(hero, RandomBuff.class).set( (3 + Random.Int(9)+hero.STR/6+hero.HP/30)/Random.Int(1,2)+5, 1 );
|
||||
// initRooms.add(new NyzBombAndBooksRoom());
|
||||
// }
|
||||
|
||||
//force max special rooms and add one more for large levels
|
||||
int specials = specialRooms(feeling == Feeling.LARGE);
|
||||
|
|
|
@ -26,7 +26,6 @@ import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.NxhyNpc;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Nyz;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.REN;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Slyl;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.obSir;
|
||||
|
@ -157,12 +156,6 @@ public class ZeroLevel extends Level {
|
|||
// PinkLing god1= new PinkLing();
|
||||
// god1.pos = (this.width * 28 + 30);
|
||||
// mobs.add(god1);
|
||||
|
||||
if (Badges.isUnlocked(Badges.Badge.NYZ_SHOP)){
|
||||
Nyz npc4= new Nyz();
|
||||
npc4.pos = (this.width * 28 + 7);
|
||||
mobs.add(npc4);
|
||||
}
|
||||
}
|
||||
|
||||
public int randomRespawnCell() {
|
||||
|
|
|
@ -50,8 +50,6 @@ public class Messages {
|
|||
return lang;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Setup Methods
|
||||
*/
|
||||
|
@ -170,10 +168,8 @@ public class Messages {
|
|||
//Words which should not be capitalized in title case, mostly prepositions which appear ingame
|
||||
//This list is not comprehensive!
|
||||
private static final HashSet<String> noCaps = new HashSet<>(
|
||||
Arrays.asList(new String[]{
|
||||
//English
|
||||
"a", "an", "and", "of", "by", "to", "the", "x"
|
||||
})
|
||||
Arrays.asList(//English
|
||||
"a", "an", "and", "of", "by", "to", "the", "x")
|
||||
);
|
||||
|
||||
public static String titleCase( String str ){
|
||||
|
|
|
@ -46,7 +46,6 @@ import com.shatteredpixel.shatteredpixeldungeon.ui.RedButton;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.DungeonSeed;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndChallenges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndDLC;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndDLCX;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndHeroInfo;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndKeyBindings;
|
||||
|
@ -474,12 +473,7 @@ public class HeroSelectScene extends PixelScene {
|
|||
IconButton DungeonHappyMode = new IconButton(new ItemSprite(ItemSpriteSheet.LANTERNB)) {
|
||||
@Override
|
||||
protected void onClick() {
|
||||
if(1==1){
|
||||
ShatteredPixelDungeon.scene().addToFront(new WndDLC(SPDSettings.dlc(), true));
|
||||
} else {
|
||||
ShatteredPixelDungeon.scene().addToFront(new WndMessage("击败_第三大层Boss_后解锁娱乐模式。"));
|
||||
}
|
||||
|
||||
ShatteredPixelDungeon.scene().addToFront(new WndMessage("该模式正在开发……"));
|
||||
}
|
||||
};
|
||||
DungeonHappyMode.setSize( BUTTON_HEIGHT, BUTTON_HEIGHT );
|
||||
|
@ -573,16 +567,16 @@ public class HeroSelectScene extends PixelScene {
|
|||
|
||||
|
||||
title.setPos(frame.x - frame.width / 5f + FRAME_MARGIN_X / 5f, frame.y + frame.height / 8 - BUTTON_HEIGHT - 45);
|
||||
placeTorch(title.x - 8, title.y + 42);
|
||||
placeTorch(title.x + 132, title.y + 42);
|
||||
add(title);
|
||||
//placeTorch(title.x - 8, title.y + 42);
|
||||
//placeTorch(title.x + 132, title.y + 42);
|
||||
//add(title);
|
||||
|
||||
Image twotitle = new Image(Assets.Interfaces.TWOYEARS, 0, 0, 126, 34);
|
||||
|
||||
//float topRegion = Math.max(title.height/2, 20f);
|
||||
|
||||
twotitle.setPos(frame.x - frame.width / 5f + FRAME_MARGIN_X / 5f, frame.y + frame.height / 4 - BUTTON_HEIGHT - 40);
|
||||
add(twotitle);
|
||||
//add(twotitle);
|
||||
}
|
||||
|
||||
fadeIn();
|
||||
|
|
|
@ -47,9 +47,9 @@ public class ThanksScene extends PixelScene {
|
|||
content.clear();
|
||||
|
||||
CreditsBlock mispd = new CreditsBlock(true, Window.TITLE_COLOR,
|
||||
"Magic Ling Pixel Dungeon",
|
||||
"脑力益智像素游戏",
|
||||
new Image("Ling.png", 0, 0, 16, 16),
|
||||
"_Start to 2021-2-12_\n\nDev:_JDSA Ling_"
|
||||
"_Start to 2023-1-10_\n\nDev:_JDSA Ling_"
|
||||
,
|
||||
null,
|
||||
null);
|
||||
|
@ -184,7 +184,7 @@ public class ThanksScene extends PixelScene {
|
|||
"Thanks Playing My Dungeon",
|
||||
Icons.TALENT.get(),
|
||||
"All the Players wishing you all the best every day!!!\n\n",
|
||||
"加入QQ魔绫开发总群",
|
||||
"加入QQ脑力像素开发总群",
|
||||
"https://jq.qq.com/?_wv=1027&k=wzMjU0f7");
|
||||
if (landscape()){
|
||||
wata2.setRect((Camera.main.width - colWidth)/2f-10, wata.bottom() + 20, colWidth+20, 0);
|
||||
|
|
|
@ -7,7 +7,6 @@ import com.shatteredpixel.shatteredpixeldungeon.SPDSettings;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.BannerSprites;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Fireball;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.services.news.News;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.services.updates.Updates;
|
||||
|
@ -17,6 +16,7 @@ import com.shatteredpixel.shatteredpixeldungeon.ui.Archs;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.ui.EndButton;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.StyledButton;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndMessage;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.windows.WndSettings;
|
||||
import com.watabou.glwrap.Blending;
|
||||
import com.watabou.noosa.BitmapText;
|
||||
|
@ -26,7 +26,6 @@ import com.watabou.noosa.Image;
|
|||
import com.watabou.noosa.audio.Music;
|
||||
import com.watabou.utils.ColorMath;
|
||||
import com.watabou.utils.DeviceCompat;
|
||||
import com.watabou.utils.GameMath;
|
||||
import com.watabou.utils.Point;
|
||||
|
||||
import java.util.Date;
|
||||
|
@ -56,8 +55,8 @@ public class TitleScene extends PixelScene {
|
|||
|
||||
align(title);
|
||||
|
||||
placeTorch(title.x + 22, title.y + 46);
|
||||
placeTorch(title.x + title.width - 22, title.y + 46);
|
||||
// placeTorch(title.x + 22, title.y + 46);
|
||||
// placeTorch(title.x + title.width - 22, title.y + 46);
|
||||
|
||||
// placeTorch2(title.x + -5, title.y + 63);
|
||||
// placeTorch2(title.x + title.width - 15, title.y + 63);
|
||||
|
@ -65,75 +64,75 @@ public class TitleScene extends PixelScene {
|
|||
// placeTorch3(title.x + -10, title.y + 46);
|
||||
// placeTorch3(title.x + title.width - 10, title.y + 46);
|
||||
|
||||
Image swordLeft = new Image( BannerSprites.get( BannerSprites.Type.SWORD ) ) {
|
||||
private float preCurTime = 0;
|
||||
private float curTime = 0;
|
||||
|
||||
@Override
|
||||
public void update() {
|
||||
super.update();
|
||||
this.origin.set( this.width / 2, this.height / 2 );
|
||||
float time = 0.8f;
|
||||
this.x = - this.width + curTime/ time * (Camera.main.width / 2f + this.width / 2f);
|
||||
this.angle = 90 - curTime/ time *225;
|
||||
am = curTime*curTime*curTime/(time * time * time);
|
||||
|
||||
float preTime = 0.9f;
|
||||
if (preCurTime < preTime) {
|
||||
preCurTime += Game.elapsed;
|
||||
return;
|
||||
}
|
||||
if (curTime < time) {
|
||||
curTime += Game.elapsed;
|
||||
if (curTime >= time) Camera.main.shake( GameMath.gate( 1, 2, 5), 0.3f );
|
||||
}
|
||||
}
|
||||
};
|
||||
swordLeft.center(title.center());
|
||||
add( swordLeft );
|
||||
|
||||
Image swordRight = new Image( BannerSprites.get( BannerSprites.Type.SWORD ) ) {
|
||||
private float preCurTime = 0;
|
||||
private float curTime = 0;
|
||||
|
||||
@Override
|
||||
public void update() {
|
||||
super.update();
|
||||
this.origin.set( this.width / 2, this.height / 2 );
|
||||
float time = 0.8f;
|
||||
this.x = Camera.main.width - curTime/ time * (Camera.main.width / 2f + this.width / 2f);
|
||||
this.angle = 90 + curTime/ time * 225;
|
||||
am = curTime*curTime*curTime/(time * time * time);
|
||||
|
||||
float preTime = 0.9f;
|
||||
if (preCurTime < preTime) {
|
||||
preCurTime += Game.elapsed;
|
||||
return;
|
||||
}
|
||||
if (curTime < time) curTime += Game.elapsed;
|
||||
}
|
||||
};
|
||||
swordRight.center(title.center());
|
||||
add( swordRight );
|
||||
|
||||
// Image swordLeft = new Image( BannerSprites.get( BannerSprites.Type.SWORD ) ) {
|
||||
// private float preCurTime = 0;
|
||||
// private float curTime = 0;
|
||||
//
|
||||
// @Override
|
||||
// public void update() {
|
||||
// super.update();
|
||||
// this.origin.set( this.width / 2, this.height / 2 );
|
||||
// float time = 0.8f;
|
||||
// this.x = - this.width + curTime/ time * (Camera.main.width / 2f + this.width / 2f);
|
||||
// this.angle = 90 - curTime/ time *225;
|
||||
// am = curTime*curTime*curTime/(time * time * time);
|
||||
//
|
||||
// float preTime = 0.9f;
|
||||
// if (preCurTime < preTime) {
|
||||
// preCurTime += Game.elapsed;
|
||||
// return;
|
||||
// }
|
||||
// if (curTime < time) {
|
||||
// curTime += Game.elapsed;
|
||||
// if (curTime >= time) Camera.main.shake( GameMath.gate( 1, 2, 5), 0.3f );
|
||||
// }
|
||||
// }
|
||||
// };
|
||||
// swordLeft.center(title.center());
|
||||
// add( swordLeft );
|
||||
//
|
||||
// Image swordRight = new Image( BannerSprites.get( BannerSprites.Type.SWORD ) ) {
|
||||
// private float preCurTime = 0;
|
||||
// private float curTime = 0;
|
||||
//
|
||||
// @Override
|
||||
// public void update() {
|
||||
// super.update();
|
||||
// this.origin.set( this.width / 2, this.height / 2 );
|
||||
// float time = 0.8f;
|
||||
// this.x = Camera.main.width - curTime/ time * (Camera.main.width / 2f + this.width / 2f);
|
||||
// this.angle = 90 + curTime/ time * 225;
|
||||
// am = curTime*curTime*curTime/(time * time * time);
|
||||
//
|
||||
// float preTime = 0.9f;
|
||||
// if (preCurTime < preTime) {
|
||||
// preCurTime += Game.elapsed;
|
||||
// return;
|
||||
// }
|
||||
// if (curTime < time) curTime += Game.elapsed;
|
||||
// }
|
||||
// };
|
||||
// swordRight.center(title.center());
|
||||
// add( swordRight );
|
||||
//
|
||||
add( title );
|
||||
|
||||
Flare flare = new Flare( 7, 128 ) {
|
||||
private float time1 = 0;
|
||||
private float time2 = 0;
|
||||
private float time3 = 0;
|
||||
@Override
|
||||
public void update() {
|
||||
super.update();
|
||||
am = Math.max(0f, (float)Math.sin(time1 += Game.elapsed));
|
||||
if (time1 >= 1.5f * Math.PI) time1 = 0;
|
||||
rm = Math.max(0f, (float)Math.sin(time2 += Game.elapsed));
|
||||
if (time2 >= 1.0f * Math.E) time2 = 5;
|
||||
ra = Math.max(0f, (float)Math.sin(time3 += Game.elapsed));
|
||||
if (time3 >= 1.0f * Math.PI) time3 = 1;
|
||||
}
|
||||
};
|
||||
flare.color( Window.BLUE_COLOR, true ).show( title, 0 ).angularSpeed = +27;
|
||||
//
|
||||
// Flare flare = new Flare( 7, 128 ) {
|
||||
// private float time1 = 0;
|
||||
// private float time2 = 0;
|
||||
// private float time3 = 0;
|
||||
// @Override
|
||||
// public void update() {
|
||||
// super.update();
|
||||
// am = Math.max(0f, (float)Math.sin(time1 += Game.elapsed));
|
||||
// if (time1 >= 1.5f * Math.PI) time1 = 0;
|
||||
// rm = Math.max(0f, (float)Math.sin(time2 += Game.elapsed));
|
||||
// if (time2 >= 1.0f * Math.E) time2 = 5;
|
||||
// ra = Math.max(0f, (float)Math.sin(time3 += Game.elapsed));
|
||||
// if (time3 >= 1.0f * Math.PI) time3 = 1;
|
||||
// }
|
||||
// };
|
||||
// flare.color( Window.BLUE_COLOR, true ).show( title, 0 ).angularSpeed = +27;
|
||||
|
||||
Archs archs = new Archs();
|
||||
archs.setSize( w, h );
|
||||
|
@ -224,7 +223,7 @@ public class TitleScene extends PixelScene {
|
|||
|
||||
StyledButton btnNews = new NewsButton(GREY_TR, Messages.get(this, "news"));
|
||||
btnNews.icon(new ItemSprite(ItemSpriteSheet.YELLOWBOOKS, null));
|
||||
add(btnNews);
|
||||
//add(btnNews);
|
||||
|
||||
final int BTN_HEIGHT = 20;
|
||||
int GAP = (int)(h - topRegion - (landscape() ? 3 : 4) * BTN_HEIGHT) / 3;
|
||||
|
@ -341,7 +340,7 @@ public class TitleScene extends PixelScene {
|
|||
|
||||
@Override
|
||||
protected void onClick() {
|
||||
ShatteredPixelDungeon.switchNoFade( ChangesScene.class );
|
||||
ShatteredPixelDungeon.scene().addToFront(new WndMessage("脑力像素益智游戏,始于2023"));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -376,7 +375,8 @@ public class TitleScene extends PixelScene {
|
|||
|
||||
@Override
|
||||
protected void onClick() {
|
||||
ShatteredPixelDungeon.switchNoFade(ThanksScene.class);
|
||||
ShatteredPixelDungeon.scene().addToFront(new WndMessage("鸣谢以下人员:\n\n策划设计:JDSALing Mason\n\n文案设计:Mason " +
|
||||
"Complex\n\n音乐设计:Prohonor\n\n美工设计:Complex DC 被子"));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,42 +1,42 @@
|
|||
//
|
||||
// Source code recreated from a .class file by IntelliJ IDEA
|
||||
// (powered by Fernflower decompiler)
|
||||
//
|
||||
|
||||
package com.shatteredpixel.shatteredpixeldungeon.sprites;
|
||||
|
||||
import com.watabou.noosa.TextureFilm;
|
||||
|
||||
public class PoltergeistSprite extends MobSprite {
|
||||
public PoltergeistSprite() {
|
||||
this.texture("SRPD/BlackGhost.png");
|
||||
TextureFilm var1 = new TextureFilm(this.texture, 14, 15);
|
||||
this.idle = new Animation(5, true);
|
||||
this.idle.frames(var1, new Object[]{0, 1});
|
||||
this.run = new Animation(10, true);
|
||||
this.run.frames(var1, new Object[]{0, 1});
|
||||
this.attack = new Animation(10, false);
|
||||
this.attack.frames(var1, new Object[]{0, 2, 3, 4, 5});
|
||||
this.die = new Animation(8, false);
|
||||
this.die.frames(var1, new Object[]{0, 5, 6, 7, 8, 9});
|
||||
this.play(this.idle);
|
||||
}
|
||||
|
||||
public int blood() {
|
||||
return -2013265920;
|
||||
}
|
||||
|
||||
public static class WraithSpriteRed extends PoltergeistSprite {
|
||||
|
||||
public WraithSpriteRed(){
|
||||
super();
|
||||
tint(1, 1, 1, 0.3f);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void resetColor() {
|
||||
super.resetColor();
|
||||
tint(1, 1, 1, 0.3f);
|
||||
}
|
||||
}
|
||||
}
|
||||
//
|
||||
// Source code recreated from a .class file by IntelliJ IDEA
|
||||
// (powered by Fernflower decompiler)
|
||||
//
|
||||
|
||||
package com.shatteredpixel.shatteredpixeldungeon.sprites;
|
||||
|
||||
import com.watabou.noosa.TextureFilm;
|
||||
|
||||
public class PoltergeistSprite extends MobSprite {
|
||||
public PoltergeistSprite() {
|
||||
this.texture("SRPD/BlackGhost.png");
|
||||
TextureFilm var1 = new TextureFilm(this.texture, 14, 15);
|
||||
this.idle = new Animation(5, true);
|
||||
this.idle.frames(var1, 0, 1);
|
||||
this.run = new Animation(10, true);
|
||||
this.run.frames(var1, 0, 1);
|
||||
this.attack = new Animation(10, false);
|
||||
this.attack.frames(var1, 0, 2, 3, 4, 5);
|
||||
this.die = new Animation(8, false);
|
||||
this.die.frames(var1, 0, 5, 6, 7, 8);
|
||||
this.play(this.idle);
|
||||
}
|
||||
|
||||
public int blood() {
|
||||
return -2013265920;
|
||||
}
|
||||
|
||||
public static class WraithSpriteRed extends PoltergeistSprite {
|
||||
|
||||
public WraithSpriteRed(){
|
||||
super();
|
||||
tint(1, 1, 1, 0.3f);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void resetColor() {
|
||||
super.resetColor();
|
||||
tint(1, 1, 1, 0.3f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,65 +1,65 @@
|
|||
/*
|
||||
* Pixel Dungeon
|
||||
* Copyright (C) 2012-2015 Oleg Dolya
|
||||
*
|
||||
* Shattered Pixel Dungeon
|
||||
* Copyright (C) 2014-2022 Evan Debenham
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
*/
|
||||
|
||||
package com.shatteredpixel.shatteredpixeldungeon.sprites;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||
import com.watabou.noosa.TextureFilm;
|
||||
|
||||
public class SkeletonSprite extends MobSprite {
|
||||
|
||||
public SkeletonSprite() {
|
||||
super();
|
||||
|
||||
texture( Assets.Sprites.SKELETON );
|
||||
|
||||
TextureFilm frames = new TextureFilm( texture, 12, 15 );
|
||||
|
||||
idle = new Animation( 12, true );
|
||||
idle.frames( frames, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3 );
|
||||
|
||||
run = new Animation( 15, true );
|
||||
run.frames( frames, 4, 5, 6, 7, 8, 9 );
|
||||
|
||||
attack = new Animation( 15, false );
|
||||
attack.frames( frames, 14, 15, 16 );
|
||||
|
||||
die = new Animation( 12, false );
|
||||
die.frames( frames, 10, 11, 12, 13 );
|
||||
|
||||
play( idle );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void die() {
|
||||
super.die();
|
||||
if (Dungeon.level.heroFOV[ch.pos]) {
|
||||
emitter().burst( Speck.factory( Speck.BONE ), 6 );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int blood() {
|
||||
return 0xFFcccccc;
|
||||
}
|
||||
}
|
||||
/*
|
||||
* Pixel Dungeon
|
||||
* Copyright (C) 2012-2015 Oleg Dolya
|
||||
*
|
||||
* Shattered Pixel Dungeon
|
||||
* Copyright (C) 2014-2022 Evan Debenham
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
*/
|
||||
|
||||
package com.shatteredpixel.shatteredpixeldungeon.sprites;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||
import com.watabou.noosa.TextureFilm;
|
||||
|
||||
public class SkeletonSprite extends MobSprite {
|
||||
|
||||
public SkeletonSprite() {
|
||||
super();
|
||||
|
||||
texture( Assets.Sprites.SKELETON );
|
||||
|
||||
TextureFilm frames = new TextureFilm( texture, 12, 15 );
|
||||
|
||||
idle = new Animation( 12, true );
|
||||
idle.frames( frames, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3 );
|
||||
|
||||
run = new Animation( 15, true );
|
||||
run.frames( frames, 4, 5, 6 );
|
||||
|
||||
attack = new Animation( 15, false );
|
||||
attack.frames( frames, 10, 11, 12, 13);
|
||||
|
||||
die = new Animation( 12, false );
|
||||
die.frames( frames, 7 ,8 ,9 );
|
||||
|
||||
play( idle );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void die() {
|
||||
super.die();
|
||||
if (Dungeon.level.heroFOV[ch.pos]) {
|
||||
emitter().burst( Speck.factory( Speck.BONE ), 6 );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int blood() {
|
||||
return 0xFFcccccc;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -296,7 +296,7 @@ public class StatusPane extends Component {
|
|||
|
||||
if(SPDSettings.TimeLimit()) {
|
||||
PixelScene.align(timeText);
|
||||
timeStatusText.x = MenuPane.version.x;
|
||||
timeStatusText.x = MenuPane.version.x-10;
|
||||
timeStatusText.y = MenuPane.version.y+10;
|
||||
PixelScene.align(timeStatusText);
|
||||
} else {
|
||||
|
@ -353,10 +353,8 @@ public class StatusPane extends Component {
|
|||
}
|
||||
|
||||
if(SPDSettings.TimeLimit()) {
|
||||
timeText.x = MenuPane.version.x;
|
||||
|
||||
timeText.x = MenuPane.version.x-20;
|
||||
timeText.y = MenuPane.version.y + 5;
|
||||
|
||||
PixelScene.align(timeText);
|
||||
timeStatusText.x = MenuPane.version.x;
|
||||
timeStatusText.y = MenuPane.version.y+10;
|
||||
|
@ -404,8 +402,8 @@ public class StatusPane extends Component {
|
|||
}
|
||||
|
||||
if (ClassPage()) {
|
||||
page.setPos(0, 40);
|
||||
pageb.setPos(0, 500);
|
||||
page.setPos(0, 5000);
|
||||
pageb.setPos(0, 5000);
|
||||
mainhand.setPos(0, 51);
|
||||
joinxxx.setPos(0, 78);
|
||||
bossselect.setPos(0, 104);
|
||||
|
@ -416,8 +414,8 @@ public class StatusPane extends Component {
|
|||
}
|
||||
|
||||
} else {
|
||||
page.setPos(0, 500);
|
||||
pageb.setPos(0, 40);
|
||||
page.setPos(0, 5000);
|
||||
pageb.setPos(0, 5000);
|
||||
mainhand.setPos(0, 500);
|
||||
joinxxx.setPos(0, 500);
|
||||
bossselect.setPos(0, 500);
|
||||
|
|
|
@ -196,7 +196,7 @@ public class vM0_6_7_X_Changes {
|
|||
changeInfos.add(changes);
|
||||
|
||||
changes.addButton(new ChangeButton((new Image("Ling.png", 0, 0, 16, 16)), ("开发者的话"),
|
||||
("不知不觉中,魔绫已经走过2年路程。从最初的几十人测试群到现在的1000人以上,\n" +
|
||||
("不知不觉中,脑力像素已经走过2年路程。从最初的几十人测试群到现在的1000人以上,\n" +
|
||||
"你们的支持和喜爱是我继续开发的动力。\n" +
|
||||
"近期,我的课程很多,所以更新有所减缓。希望各位能够理解\n" +
|
||||
"此版本是重大更新前的最后一个版本,宝箱王我经过了多次重新设计,希望能在Beta5版本为大家带来不一样的体验。\n" +
|
||||
|
@ -251,10 +251,10 @@ public class vM0_6_7_X_Changes {
|
|||
changeInfos.add(changes);
|
||||
|
||||
changes.addButton(new ChangeButton(new OGPDNQHZTT(), ("OGPD老鼠组"),
|
||||
("曾经的魔绫代表怪物,如今也正式退出魔绫的舞台。2021.2.21--2023.3.24(R.I.P.)")));
|
||||
("曾经的脑力像素代表怪物,如今也正式退出脑力像素的舞台。2021.2.21--2023.3.24(R.I.P.)")));
|
||||
|
||||
changes.addButton(new ChangeButton(new SnakeSprite(), ("下水道巨蛇"),
|
||||
("破碎的代表怪物,由于不符合魔绫的世界观,故而被移除。")));
|
||||
("破碎的代表怪物,由于不符合脑力像素的世界观,故而被移除。")));
|
||||
}
|
||||
|
||||
public static void add_v0_6_25_Changes( ArrayList<ChangeInfo> changeInfos ) {
|
||||
|
@ -1138,10 +1138,10 @@ public class vM0_6_7_X_Changes {
|
|||
changeInfos.add(changes);
|
||||
|
||||
changes.addButton(new ChangeButton((new Image("Ling.png", 0, 0, 16, 16)), ("开发者的话"),
|
||||
("你好,这里是绫。如你所见,这是全新的魔绫像素地牢,她已经步入了破碎1.2" +
|
||||
".3的版本。\n\n至此,魔绫像素地牢以后将针对于此破碎底层进行更新。今后不会继续同步底层破碎版本。\n\n" +
|
||||
"同时,本次更新后,后续应该还有几个补丁版。很高兴一路以来有那么多的朋友,非常谢谢你们的支持。\n\n现在,旅途才刚刚开始,魔绫下半段,将会更加精彩。\n" +
|
||||
"在这之前,就让我们继续在上半段的魔绫里面探索前进吧。")));
|
||||
("你好,这里是绫。如你所见,这是全新的脑力益智像素游戏,她已经步入了破碎1.2" +
|
||||
".3的版本。\n\n至此,脑力益智像素游戏以后将针对于此破碎底层进行更新。今后不会继续同步底层破碎版本。\n\n" +
|
||||
"同时,本次更新后,后续应该还有几个补丁版。很高兴一路以来有那么多的朋友,非常谢谢你们的支持。\n\n现在,旅途才刚刚开始,脑力像素下半段,将会更加精彩。\n" +
|
||||
"在这之前,就让我们继续在上半段的脑力像素里面探索前进吧。")));
|
||||
|
||||
changes.addButton(new ChangeButton(Icons.get(Icons.CHALLENGE_ON), ("新挑战:空洞旅程"),
|
||||
("开启本挑战将会在开局获得240点理智,在_没有光芒下_和_部分怪物的近战_将会使你理智降低。详情查看下表:\n" +
|
||||
|
@ -1165,16 +1165,16 @@ public class vM0_6_7_X_Changes {
|
|||
("快捷栏使用说明:\n-1.请最好根据自己的分辨率进行调整,避免出现快捷栏叠加情况\n-2.由于技术问题,快捷栏仅在游戏中才可以设置\n-3.最多支持12个快捷栏,玩得高兴!!!")));
|
||||
|
||||
changes.addButton(new ChangeButton(Icons.get(Icons.CHANGES), ("重大更新"),
|
||||
("魔绫现已更新底层到破碎V1.2.3版本!")));
|
||||
("脑力像素现已更新底层到破碎V1.2.3版本!")));
|
||||
|
||||
changes.addButton(new ChangeButton(Icons.get(Icons.CHALLENGE_ON), ("新挑战和部分挑战改动"),
|
||||
("部分挑战进行重新调整,同时追加全新挑战,欢迎前来探索\n\n注意:部分挑战尚未完成,请等待后续版本")));
|
||||
|
||||
changes.addButton(new ChangeButton(Icons.get(Icons.LANGS), ("本地化模块升级"),
|
||||
("魔绫已经对本地化语言模块优化,使部分低配设备性能更好")));
|
||||
("脑力像素已经对本地化语言模块优化,使部分低配设备性能更好")));
|
||||
|
||||
changes.addButton(new ChangeButton(Icons.get(Icons.DISPLAY), ("UI优化改动"),
|
||||
("魔绫已经对UI优化改动进行大规模调整,欢迎前来体验")));
|
||||
("脑力像素已经对UI优化改动进行大规模调整,欢迎前来体验")));
|
||||
|
||||
changes = new ChangeInfo("调整", false, null);
|
||||
changes.hardlight(Window.CYELLOW);
|
||||
|
|
|
@ -30,7 +30,7 @@ public class WndBook extends Window {
|
|||
int width = WIDTH_MIN;
|
||||
|
||||
RenderedTextBlock info = PixelScene.renderTextBlock(
|
||||
Messages.get(this, "written_by", book.author) +"\n"+
|
||||
Messages.get(this, "written_by") +"\n"+
|
||||
Messages.get(this, "age", book.age) +"\n\n"+
|
||||
book.desc, 6 );
|
||||
info.maxWidth(width);
|
||||
|
|
|
@ -19,7 +19,7 @@ import com.watabou.noosa.Game;
|
|||
public class WndFeedback extends Window {
|
||||
|
||||
protected static final int WIDTH_P = 122;
|
||||
protected static final int WIDTH_L = 223;
|
||||
protected static final int WIDTH_L = 200;
|
||||
private static final int BTN_HEIGHT = 18;
|
||||
private static final float GAP = 2;
|
||||
|
||||
|
@ -93,7 +93,7 @@ public class WndFeedback extends Window {
|
|||
} else {
|
||||
btnJoinback.setRect(0,btnFeedback.bottom() + GAP, width, BTN_HEIGHT);
|
||||
}
|
||||
add(btnJoinback);
|
||||
//add(btnJoinback);
|
||||
|
||||
if (ingame) {
|
||||
RedButton btnClose = new RedButton(Messages.get(this, "close")){
|
||||
|
@ -109,7 +109,7 @@ public class WndFeedback extends Window {
|
|||
|
||||
resize(width, (int)btnClose.bottom());
|
||||
}
|
||||
else resize(width, (int) btnJoinback.bottom());
|
||||
else resize(width, (int) btnFeedback.bottom());
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -73,6 +73,55 @@ public class WndInfoItem extends Window {
|
|||
layoutFields(item, iconTitle, PixelScene.renderTextBlock(item.info(), 6));
|
||||
}
|
||||
|
||||
boolean isMatch(String customName) {
|
||||
String[] matchArray = {
|
||||
// 水果 Fruit
|
||||
"Apple", "Banana", "Orange", "Grape", "Watermelon", "Strawberry", "Mango", "Peach", "Pineapple", "Pear",
|
||||
|
||||
// 动物 Animal
|
||||
"Bear", "Beaver", "Bee", "Bird", "Butterfly", "Cat", "Chicken", "Cow", "Crocodile",
|
||||
"Deer", "Dog", "Dolphin", "Duck", "Eagle", "Elephant", "Fish", "Fox", "Frog", "Giraffe",
|
||||
"Goat", "Gorilla", "Hamster", "Hippopotamus", "Horse", "Jaguar", "Kangaroo", "Koala", "Leopard",
|
||||
"Lion", "Lobster", "Monkey", "Mosquito", "Mouse", "Octopus", "Owl", "Panda", "Panther", "Parrot",
|
||||
"Pelican", "Penguin", "Pig", "Pigeon", "Pike", "Rabbit", "Rat", "Rhinoceros", "Rooster", "Seagull",
|
||||
"Shark", "Sheep", "Snail", "Snake", "Spider", "Squirrel", "Swan", "Tiger", "Turtle", "Walrus",
|
||||
"Whale", "Wolf", "Zebra",
|
||||
|
||||
// 花卉 Flower
|
||||
"Rose", "Lily", "Daisy", "Sunflower", "Tulip", "Orchid", "Carnation", "Hyacinth", "Peony", "Chrysanthemum",
|
||||
|
||||
// 运动器材 Sport Equipment
|
||||
"Basketball", "Football", "Soccer", "Tennis", "Table Tennis", "Badminton", "Swimming", "Running", "Cycling", "Hiking",
|
||||
|
||||
// 学科 Subject
|
||||
"Mathematics", "Physics", "Chemistry", "Biology", "History", "Geography", "English", "Chinese", "Art", "Music",
|
||||
|
||||
// 家具 Furniture
|
||||
"Chair", "Table", "Bed", "Wardrobe", "Sofa", "Armchair", "Bookshelf", "Coffee Table", "Dining Table", "Desk",
|
||||
|
||||
// 电器 Appliance
|
||||
"Television", "Refrigerator", "Washing Machine", "Air Conditioner", "Microwave Oven", "Vacuum Cleaner", "Water Heater", "Hair Dryer", "Electric Fan", "Lamp",
|
||||
|
||||
// 自然地理 Nature
|
||||
"Forest", "Mountain", "River", "Lake", "Beach", "Desert", "Jungle", "Grassland", "Island", "Volcano",
|
||||
|
||||
// 职业 Occupation
|
||||
"Doctor", "Nurse", "Teacher", "Engineer", "Lawyer", "Writer", "Actor", "Singer", "Chef", "Scientist",
|
||||
|
||||
// 学习用品 Stationery
|
||||
"Pencil", "Pen", "Eraser", "Ruler", "Scissors", "Tape", "Glue", "Calculator", "Notebook", "Highlighter"
|
||||
};
|
||||
|
||||
//忽略首尾空格 忽略大小写判定
|
||||
customName = customName.trim().toLowerCase();
|
||||
for (String str : matchArray) {
|
||||
if (str.toLowerCase().equals(customName)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private void layoutFields(Item item, IconTitle iconTitle, RenderedTextBlock renderedTextBlock) {
|
||||
int i = 120;
|
||||
renderedTextBlock.maxWidth(120);
|
||||
|
|
|
@ -3,7 +3,6 @@ package com.shatteredpixel.shatteredpixeldungeon.windows;
|
|||
import static com.shatteredpixel.shatteredpixeldungeon.Dungeon.hero;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Chrome;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon;
|
||||
|
@ -195,7 +194,7 @@ public class WndNyzShop extends Window {
|
|||
Buff.prolong( hero, ReloadShop.class, 1f);
|
||||
Statistics.naiyaziCollected += 1;
|
||||
WndNyzShop.RewardWindow.this.hide();
|
||||
Badges.nyzvalidateGoldCollected();
|
||||
//Badges.nyzvalidateGoldCollected();
|
||||
} else {
|
||||
tell(Messages.get(WndNyzShop.class,"nomoney"));
|
||||
WndNyzShop.RewardWindow.this.hide();
|
||||
|
@ -239,7 +238,7 @@ public class WndNyzShop extends Window {
|
|||
WndNyzShop.this.selectReward( item );
|
||||
if (RandomBuff.level-- >= 0) {
|
||||
}
|
||||
Badges.nyzvalidateGoldCollected();
|
||||
//Badges.nyzvalidateGoldCollected();
|
||||
Statistics.naiyaziCollected += 1;
|
||||
WndNyzShop.RewardWindow2.this.hide();
|
||||
} else {
|
||||
|
|
|
@ -167,7 +167,7 @@ public class WndStory extends Window {
|
|||
}
|
||||
} );
|
||||
|
||||
resize( (int)(tf.width() + MARGIN * 2), (int)Math.min( tf.bottom()+MARGIN, 180 ) );
|
||||
resize( (int)(tf.width() + MARGIN * 2), (int)Math.min( tf.bottom()+MARGIN, 280 ) );
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -158,10 +158,10 @@ public class WndTradeItem extends WndInfoItem {
|
|||
btnStole.icon(Statistics.fireGirlnoshopping && !Statistics.deadshoppingdied ? new FireMagicGirlSprite() :
|
||||
new ShopGuardDead.ShopGuardianRedSprite());
|
||||
|
||||
add( btnStole );
|
||||
//add( btnStole );
|
||||
|
||||
if(shopOnLevel()){
|
||||
pos = btnStole.bottom();
|
||||
pos = btnBuy.bottom();
|
||||
btnStole.visible=true;
|
||||
} else {
|
||||
pos = btnBuy.bottom()-2;
|
||||
|
|
|
@ -28,6 +28,7 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.items.EquipableItem;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.IconButton;
|
||||
|
@ -35,7 +36,9 @@ import com.shatteredpixel.shatteredpixeldungeon.ui.Icons;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.ui.InventoryPane;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.RedButton;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||
import com.watabou.noosa.Image;
|
||||
import com.watabou.utils.Random;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
|
@ -108,6 +111,10 @@ public class WndUseItem extends WndInfoItem {
|
|||
if (name) {
|
||||
if (item instanceof EquipableItem) {
|
||||
((EquipableItem) item).customName = str;
|
||||
if (!(item instanceof Weapon) || isMatch(((Weapon)item).customName)) {
|
||||
item.level(Random.Int(2, 4));
|
||||
GLog.b("拼写正确!该武器名称为 " + item.name() + ",等级为 " + item.level() + "。");
|
||||
}
|
||||
} else {
|
||||
((Wand) item).customName = str;
|
||||
}
|
||||
|
|
|
@ -89,7 +89,7 @@ public class DesktopLauncher {
|
|||
"If you're certain the game should be working on your computer, feel free to message the developer (Evan@ShatteredPixel.com)\n\n" +
|
||||
"version: " + Game.version, "ok", "error", false);
|
||||
} else {
|
||||
TinyFileDialogs.tinyfd_messageBox(title + "魔绫像素地牢发生了意外的崩溃!",
|
||||
TinyFileDialogs.tinyfd_messageBox(title + "脑力益智像素游戏发生了意外的崩溃!",
|
||||
title + "请将此处的代码截图发送给作者,QQ:2735951230" +
|
||||
"version: " + Game.version + "\n" +
|
||||
exceptionMsg,
|
||||
|
|