Compare commits

...

10 Commits

Author SHA1 Message Date
d7c4bc1c4e Update Challenges.java 2023-06-02 21:42:00 +08:00
83e9771865 Update Nyz.java 2023-05-27 20:27:27 +08:00
559b90caf3 去除GMS 2023-05-27 20:13:07 +08:00
bade0370fe EDU Complete 2023-05-27 20:10:34 +08:00
ab7e57ed01 update:提交代码 2023-05-27 16:27:16 +08:00
mason369
33966b7f6f update:修改文本描述 2023-05-27 15:05:32 +08:00
166b11d369 更新素材 2023-05-27 14:11:31 +08:00
18d371378b edu Update 2023-04-25 22:32:05 +08:00
JDSA Ling
31edf3e988
Update README.md 2023-04-20 11:00:41 +08:00
f226f3948f Update build.gradle 2023-04-20 10:52:37 +08:00
51 changed files with 431 additions and 464 deletions

View File

@ -1,4 +1,4 @@
# Magic Ling Pixel Dungeon
# Magic Ling Pixel Dungeon-EDU
[![](https://img.shields.io/badge/join-QQ%20group-brightgreen?style=for-the-badge&logo=tencentqq)](https://jq.qq.com/?_wv=1027&k=R7ZXeEQM)
![](https://img.shields.io/github/repo-size/AnsdoShip/magic-ling-pixel-dungeon?style=for-the-badge&color=%23F8BBD0)

View File

@ -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

View File

@ -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>

View File

@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 668 B

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -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=希望已死,汝之存在亦将化为虚无…

View File

@ -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=这种金属名中的暗并非源于其色泽(它看起来和普通金子一样),而是因为它会在阳光下熔化,令其在地表上毫无用处。

View File

@ -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瓶药水

View File

@ -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\nPatreon 奖励只能提供英语内容,请见谅)
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

View File

@ -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=想要宝物,就必须先击败我!

View File

@ -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=脑力像素全部内容更新完后,完成至少两个结局后可以开启炼狱难度。

View File

@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 548 B

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 536 B

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 296 B

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -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 );

View File

@ -73,7 +73,7 @@ public class Challenges {
"icedied",
"pro",
"cs",
"cs",
"cs"
};
public static final int[] MASKS = {

View File

@ -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:

View File

@ -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);
}

View File

@ -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();

View File

@ -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

View File

@ -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

View File

@ -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);

View File

@ -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) {

View File

@ -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") );
}

View File

@ -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") );

View File

@ -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()) );
}

View File

@ -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();

View File

@ -7,7 +7,7 @@ public class MainBooks extends Item {
@Override
public String info() {
return desc()+"\n\n"+author;
return desc();
}
@Override
public int value() {

View File

@ -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<>();

View File

@ -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);

View File

@ -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() {

View File

@ -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 ){

View File

@ -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();

View File

@ -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);

View File

@ -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 被子"));
}
}

View File

@ -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);
}
}
}

View File

@ -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;
}
}

View File

@ -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);

View File

@ -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.24R.I.P.)")));
("曾经的脑力像素代表怪物,如今也正式退出脑力像素的舞台。2021.2.21--2023.3.24R.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);

View File

@ -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);

View File

@ -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());
}

View File

@ -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);

View File

@ -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 {

View File

@ -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

View File

@ -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;

View File

@ -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;
}

View File

@ -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 + "请将此处的代码截图发送给作者QQ2735951230" +
"version: " + Game.version + "\n" +
exceptionMsg,