update beta21-2.875
This commit is contained in:
parent
698828c54e
commit
5dbd8f23c9
|
@ -632,7 +632,7 @@ actors.mobs.slime_sz.name=史莱姆-圣紫守护者
|
||||||
actors.mobs.slime_sz.desc=史莱姆七大守护者中的_圣紫使者_\n它发出的攻击有几率让入侵者受到_迟缓效果_!
|
actors.mobs.slime_sz.desc=史莱姆七大守护者中的_圣紫使者_\n它发出的攻击有几率让入侵者受到_迟缓效果_!
|
||||||
|
|
||||||
actors.mobs.slimeking.name=史莱姆王子
|
actors.mobs.slimeking.name=史莱姆王子
|
||||||
actors.mobs.slimeking.desc=史莱姆王子,圣境密林的守护者,没有人能从它这里活着走过去。\n\n-机制说明:移动极其缓慢但有无限使用的锁链。血量低于一半后立刻呼唤_当前楼层至多3个怪物_前来支援(只可触发一次),并且移速恢复正常但_锁链功能失效_且_自身防御降为0_以及近战有概率造成_双倍伤害_。
|
actors.mobs.slimeking.desc=史莱姆王子,圣境密林的守护者,没有人能从它这里活着走过去。\n\n-机制说明:移动极其缓慢但有无限使用的锁链。血量低于一半后立刻呼唤_当前楼层至多3个怪物_前来支援(只可触发一次),并且移速恢复正常但_锁链功能失效_且_自身防御降为0_以及近战有概率造成_双倍伤害_。血量低于60后受到敌人的近战攻击将有45%的概率分裂成蚀化史莱姆,但分裂的血量/4。
|
||||||
actors.mobs.slimeking.notice=你将会死在圣境密林!
|
actors.mobs.slimeking.notice=你将会死在圣境密林!
|
||||||
actors.mobs.slimeking.defeated=不……这不可能……
|
actors.mobs.slimeking.defeated=不……这不可能……
|
||||||
actors.mobs.slimeking.arise=我的史莱姆守卫们,快点出来支援本王!
|
actors.mobs.slimeking.arise=我的史莱姆守卫们,快点出来支援本王!
|
||||||
|
|
|
@ -66,7 +66,7 @@ items.wands.wandofbluefuck.name=磷焰法杖
|
||||||
items.wands.wandofbluefuck.staff_name=鬼磷之杖
|
items.wands.wandofbluefuck.staff_name=鬼磷之杖
|
||||||
items.wands.wandofbluefuck.desc=这根法杖由欧松木制成,饰以紫色宝石,这使它看起来相当庄严。它的顶端噼啪作响嘶嘶而鸣,渴望着释放其强大的魔法。
|
items.wands.wandofbluefuck.desc=这根法杖由欧松木制成,饰以紫色宝石,这使它看起来相当庄严。它的顶端噼啪作响嘶嘶而鸣,渴望着释放其强大的魔法。
|
||||||
items.wands.wandofbluefuck.stats_desc=该法杖在使用时会产生一股强大的磷焰,延伸出一个锥形区域。下一次使用它将消耗_%1$d发充能_并造成_%2$d~%3$d点伤害_。法杖消耗的充能数越多,其范围与威力就越大或越强。
|
items.wands.wandofbluefuck.stats_desc=该法杖在使用时会产生一股强大的磷焰,延伸出一个锥形区域。下一次使用它将消耗_%1$d发充能_并造成_%2$d~%3$d点伤害_。法杖消耗的充能数越多,其范围与威力就越大或越强。
|
||||||
items.wands.wandofbluefuck.bmage_desc=当_战斗法师_以焰浪法杖近战攻击目标时,能像拥有烈焰附魔一样有概率将其点燃。
|
items.wands.wandofbluefuck.bmage_desc=当_战斗法师_以鬼磷法杖近战攻击目标时,能像拥有鬼磷附魔一样有概率将其点燃。
|
||||||
|
|
||||||
items.weapon.enchantments.haloblazing.name=鬼磷%s
|
items.weapon.enchantments.haloblazing.name=鬼磷%s
|
||||||
items.weapon.enchantments.haloblazing.desc=这个附魔会使磷火从武器中喷薄而出,能够使用点燃敌人并对正在燃烧的敌人造成中毒的额外伤害。
|
items.weapon.enchantments.haloblazing.desc=这个附魔会使磷火从武器中喷薄而出,能够使用点燃敌人并对正在燃烧的敌人造成中毒的额外伤害。
|
||||||
|
@ -213,11 +213,13 @@ items.wands.wandofscale.name=恐惧暴风法杖
|
||||||
items.wands.wandofscale.staff_name=暴风之杖
|
items.wands.wandofscale.staff_name=暴风之杖
|
||||||
items.wands.wandofscale.desc=这根法杖的紫色主干顶端镶嵌着一颗明亮的黑色宝石。
|
items.wands.wandofscale.desc=这根法杖的紫色主干顶端镶嵌着一颗明亮的黑色宝石。
|
||||||
items.wands.wandofscale.stats_desc=这根法杖能射出恐惧声波,附近的敌人都会四处逃窜。\n并且可以产生暴风,使周围陷阱全部失效且成为水地面。\n会造成_%1$d~%2$d点伤害_。
|
items.wands.wandofscale.stats_desc=这根法杖能射出恐惧声波,附近的敌人都会四处逃窜。\n并且可以产生暴风,使周围陷阱全部失效且成为水地面。\n会造成_%1$d~%2$d点伤害_。
|
||||||
|
items.wands.wandofscale.bmage_desc=当_战斗法师_以暴风之杖近战攻击目标时,能概率让目标流血。
|
||||||
|
|
||||||
items.wands.wandofgodice.name=霜殇法杖
|
items.wands.wandofgodice.name=霜殇法杖
|
||||||
items.wands.wandofgodice.staff_name=冰雪悲歌之杖
|
items.wands.wandofgodice.staff_name=冰雪悲歌之杖
|
||||||
items.wands.wandofgodice.desc=这根法杖的蔚蓝色色主干顶端镶嵌着一颗明亮的金色宝石。
|
items.wands.wandofgodice.desc=这根法杖的蔚蓝色色主干顶端镶嵌着一颗明亮的金色宝石。
|
||||||
items.wands.wandofgodice.stats_desc=这根法杖能射出冰冻冲击波,\n会造成_%1$d~%2$d点伤害_。\n对首领的可以造成双倍伤害!\n-翼绫,我很抱歉,我只能这样杀死你吗?
|
items.wands.wandofgodice.stats_desc=这根法杖能射出冰冻冲击波,\n会造成_%1$d~%2$d点伤害_。\n对首领的可以造成双倍伤害!
|
||||||
|
items.wands.wandofgodice.bmage_desc=当_战斗法师_以冰雪悲歌之杖近战攻击目标时,能概率触发幸运附魔。
|
||||||
|
|
||||||
items.quest.goldbao.name=黄金珍宝
|
items.quest.goldbao.name=黄金珍宝
|
||||||
items.quest.goldbao.desc=由钻石宝箱王守护的东西,据说是商人的喜爱产品。\n\n无论怎么样,现在珍宝已经在你手中,你已经打败了钻石宝箱王。\n提示:出价资金可能会和实际资金不同,因为商人随时可能变卦。
|
items.quest.goldbao.desc=由钻石宝箱王守护的东西,据说是商人的喜爱产品。\n\n无论怎么样,现在珍宝已经在你手中,你已经打败了钻石宝箱王。\n提示:出价资金可能会和实际资金不同,因为商人随时可能变卦。
|
||||||
|
|
|
@ -119,7 +119,7 @@ challenges.champion_enemies_desc=会升级的不止你一个!\n\n・普通敌
|
||||||
的机率拥有特殊的精英属性。\n・精英敌人刷出时会立即醒来。\n・精英敌人免疫腐化效果。\n\n精英敌人有七种:\n_烈焰(橙色):_ 近战伤害 \
|
的机率拥有特殊的精英属性。\n・精英敌人刷出时会立即醒来。\n・精英敌人免疫腐化效果。\n\n精英敌人有七种:\n_烈焰(橙色):_ 近战伤害 \
|
||||||
+25% 且带有点燃效果,免疫火焰,死亡时引燃周围。\n_索敌(紫色):_ 近战伤害 +25%,近战范围 +8。\n_敌法(绿色):_ 受到伤害 -25%,拥有魔法免疫。\n_巨型(蓝色):_ 受到伤害 -75%,近战范围 +1,无法进入门与过道。\n_祝福(黄色):_ 精准与躲避 +200%。\n_成长(红色):_ 精准、躲避、攻击伤害与有效生命值 +20%。每过 3 回合会再增长 1%。\n_鬼磷(天蓝色):_ 近战伤害 +15% 且带有磷火效果,免疫火焰与磷火。
|
+25% 且带有点燃效果,免疫火焰,死亡时引燃周围。\n_索敌(紫色):_ 近战伤害 +25%,近战范围 +8。\n_敌法(绿色):_ 受到伤害 -25%,拥有魔法免疫。\n_巨型(蓝色):_ 受到伤害 -75%,近战范围 +1,无法进入门与过道。\n_祝福(黄色):_ 精准与躲避 +200%。\n_成长(红色):_ 精准、躲避、攻击伤害与有效生命值 +20%。每过 3 回合会再增长 1%。\n_鬼磷(天蓝色):_ 近战伤害 +15% 且带有磷火效果,免疫火焰与磷火。
|
||||||
challenges.stronger_bosses=Π梦魇Boss
|
challenges.stronger_bosses=Π梦魇Boss
|
||||||
challenges.stronger_bosses_desc=这项挑战让挑战 Boss 变得更有挑战性了!\n\n_粘咕:_生命值 +20%\n_-_ 水中恢复量增长,每回合恢复 3 点生命\n_-_ 爆发攻击蓄力时间由 2 回合缩短至 1 回合\n_天狗:_生命 +25%\n_-_ 第一阶段:陷阱更加致命\n_-_ 第二阶段:技能频率更高\n_钻石宝箱王_: 生命+20% \n_-_ 整场战斗出现额外技能\n_DM-300:_生命 +60%\n_-_ 能量塔更坚固。\n_-_ 技能频率更高,威力也更强大\n_-_ 超载时移动速度更高\n_-_ 击败时必掉落荆棘斗篷\n_矮人国王:_生命 +50%\n_-_ 整场战斗内召唤的随从都更强大\n_-_ 第一阶段:技能与召唤频率都更高\n_-_ 第二阶段:每轮额外召唤两个随从\n_-_ 第三阶段:生命值 +100%,召唤频率更高\n_Yog-Dzewa:_\n_-_ 同时召唤两个古神之拳!\n_-_ 激光攻击伤害 +60%\n_-_ 召唤更强大的随从
|
challenges.stronger_bosses_desc=这项挑战让挑战 Boss 变得更有挑战性了!\n\n_粘咕:_生命值 +20%\n_-_ 水中恢复量增长,每回合恢复 3 点生命\n_-_ 爆发攻击蓄力时间由 2 回合缩短至 1 回合\n_天狗:_生命 +25%\n_-_ 第一阶段:陷阱更加致命\n_-_ 第二阶段:技能频率更高\n_钻石宝箱王_: 生命+20%\n_DM-300:_生命 +60%\n_-_ 能量塔更坚固。\n_-_ 技能频率更高,威力也更强大\n_-_ 超载时移动速度更高\n_-_ 击败时必掉落荆棘斗篷\n_矮人国王:_生命 +50%\n_-_ 整场战斗内召唤的随从都更强大\n_-_ 第一阶段:技能与召唤频率都更高\n_-_ 第二阶段:每轮额外召唤两个随从\n_-_ 第三阶段:生命值 +100%,召唤频率更高\n_Yog-Dzewa:_\n_-_ 同时召唤两个古神之拳!\n_-_ 激光攻击伤害 +60%\n_-_ 召唤更强大的随从
|
||||||
actors.char.aquaphobia=你受到了来自水的伤害!
|
actors.char.aquaphobia=你受到了来自水的伤害!
|
||||||
challenges.pro=Δ开发者模式Δ
|
challenges.pro=Δ开发者模式Δ
|
||||||
challenges.pro_desc=供测试和开发使用\n开局_几乎是全物品_!同时,你将无法通关!也无法记录在排行榜上面。
|
challenges.pro_desc=供测试和开发使用\n开局_几乎是全物品_!同时,你将无法通关!也无法记录在排行榜上面。
|
||||||
|
|
|
@ -1,155 +1,73 @@
|
||||||
badges.endorsed=Badge endorsed: %s
|
badges.endorsed=Badge endorsed: %s
|
||||||
badges.new=Badge unlocked: %s
|
badges.new_super=New super badge: %s
|
||||||
badges$badge.monsters_slain_1.title=Novice Monster Hunter
|
badges.new=New badge: %s
|
||||||
badges$badge.monsters_slain_1.desc=Defeat 10 enemies in one game
|
badges$badge.monsters_slain_1=10 enemies slain
|
||||||
badges$badge.monsters_slain_2.title=Adept Monster Hunter
|
badges$badge.monsters_slain_2=50 enemies slain
|
||||||
badges$badge.monsters_slain_2.desc=Defeat 50 enemies in one game
|
badges$badge.monsters_slain_3=150 enemies slain
|
||||||
badges$badge.monsters_slain_3.title=Expert Monster Hunter
|
badges$badge.monsters_slain_4=250 enemies slain
|
||||||
badges$badge.monsters_slain_3.desc=Defeat 100 enemies in one game
|
badges$badge.gold_collected_1=100 gold collected
|
||||||
badges$badge.monsters_slain_4.title=Master Monster Hunter
|
badges$badge.gold_collected_2=500 gold collected
|
||||||
badges$badge.monsters_slain_4.desc=Defeat 200 enemies in one game
|
badges$badge.gold_collected_3=2500 gold collected
|
||||||
badges$badge.monsters_slain_5.title=Grandmaster Monster Hunter
|
badges$badge.gold_collected_4=7500 gold collected
|
||||||
badges$badge.monsters_slain_5.desc=Defeat 300 enemies in one game
|
badges$badge.level_reached_1=Level 6 reached
|
||||||
badges$badge.gold_collected_1.title=Novice Treasure Hunter
|
badges$badge.level_reached_2=Level 12 reached
|
||||||
badges$badge.gold_collected_1.desc=Collect 250 gold in one game
|
badges$badge.level_reached_3=Level 18 reached
|
||||||
badges$badge.gold_collected_2.title=Adept Treasure Hunter
|
badges$badge.level_reached_4=Level 24 reached
|
||||||
badges$badge.gold_collected_2.desc=Collect 1000 gold in one game
|
badges$badge.all_weapons_identified=All weapons identified
|
||||||
badges$badge.gold_collected_3.title=Expert Treasure Hunter
|
badges$badge.all_armor_identified=All armor identified
|
||||||
badges$badge.gold_collected_3.desc=Collect 2500 gold in one game
|
badges$badge.all_wands_identified=All wands identified
|
||||||
badges$badge.gold_collected_4.title=Master Treasure Hunter
|
badges$badge.all_rings_identified=All rings identified
|
||||||
badges$badge.gold_collected_4.desc=Collect 5000 gold in one game
|
badges$badge.all_artifacts_identified=All artifacts identified
|
||||||
badges$badge.gold_collected_5.title=Grandmaster Treasure Hunter
|
badges$badge.all_potions_identified=All potions identified
|
||||||
badges$badge.gold_collected_5.desc=Collect 10,000 gold in one game
|
badges$badge.all_scrolls_identified=All scrolls identified
|
||||||
badges$badge.level_reached_1.title=Novice Adventurer
|
badges$badge.all_items_identified=All items identified
|
||||||
badges$badge.level_reached_1.desc=Reach level 6
|
badges$badge.all_bags_bought=All bags bought
|
||||||
badges$badge.level_reached_2.title=Adept Adventurer
|
badges$badge.death_from_fire=Death from fire
|
||||||
badges$badge.level_reached_2.desc=Reach level 12
|
badges$badge.death_from_poison=Death from poison
|
||||||
badges$badge.level_reached_3.title=Expert Adventurer
|
badges$badge.death_from_gas=Death from toxic gas
|
||||||
badges$badge.level_reached_3.desc=Reach level 18
|
badges$badge.death_from_hunger=Death from hunger
|
||||||
badges$badge.level_reached_4.title=Master Adventurer
|
badges$badge.death_from_glyph=Death from deferred damage
|
||||||
badges$badge.level_reached_4.desc=Reach level 24
|
badges$badge.death_from_falling=Death from falling down
|
||||||
badges$badge.level_reached_5.title=Grandmaster Adventurer
|
badges$badge.yasd=Death from fire, poison, toxic gas, hunger, glyph, and falling
|
||||||
badges$badge.level_reached_5.desc=Reach level 30
|
badges$badge.boss_slain_1=1st boss slain
|
||||||
badges$badge.all_weapons_identified.title=Weapon Researcher
|
badges$badge.boss_slain_2=2nd boss slain
|
||||||
badges$badge.all_weapons_identified.desc=Identify all weapons in your journal
|
badges$badge.boss_slain_3=3rd boss slain
|
||||||
badges$badge.all_armor_identified.title=Armor Researcher
|
badges$badge.boss_slain_4=4th boss slain
|
||||||
badges$badge.all_armor_identified.desc=Identify all armors in your journal
|
badges$badge.boss_slain_1_all_classes=1st boss slain by Warrior, Mage, Rogue & Huntress
|
||||||
badges$badge.all_wands_identified.title=Wand Researcher
|
badges$badge.boss_slain_3_all_subclasses=3rd boss slain by Gladiator, Berserker, Warlock, Battlemage, Freerunner, Assassin, Sniper & Warden
|
||||||
badges$badge.all_wands_identified.desc=Identify all wands in your journal
|
badges$badge.strength_attained_1=13 points of Strength attained
|
||||||
badges$badge.all_rings_identified.title=Ring Researcher
|
badges$badge.strength_attained_2=15 points of Strength attained
|
||||||
badges$badge.all_rings_identified.desc=Identify all rings in your journal
|
badges$badge.strength_attained_3=17 points of Strength attained
|
||||||
badges$badge.all_artifacts_identified.title=Artifact Researcher
|
badges$badge.strength_attained_4=19 points of Strength attained
|
||||||
badges$badge.all_artifacts_identified.desc=Identify all artifacts in your journal
|
badges$badge.food_eaten_1=10 pieces of food eaten
|
||||||
badges$badge.all_potions_identified.title=Potion Researcher
|
badges$badge.food_eaten_2=20 pieces of food eaten
|
||||||
badges$badge.all_potions_identified.desc=Identify all potions in your journal
|
badges$badge.food_eaten_3=30 pieces of food eaten
|
||||||
badges$badge.all_scrolls_identified.title=Scroll Researcher
|
badges$badge.food_eaten_4=40 pieces of food eaten
|
||||||
badges$badge.all_scrolls_identified.desc=Identify all scrolls in your journal
|
badges$badge.item_level_1=Item of level 3 acquired
|
||||||
badges$badge.all_items_identified.title=Master Researcher
|
badges$badge.item_level_2=Item of level 6 acquired
|
||||||
badges$badge.all_items_identified.desc=Identify all items in your journal
|
badges$badge.item_level_3=Item of level 9 acquired
|
||||||
badges$badge.all_bags_bought.title=Pack Mule
|
badges$badge.item_level_4=Item of level 12 acquired
|
||||||
badges$badge.all_bags_bought.desc=Fully expand your inventory
|
badges$badge.victory=Amulet of Yendor obtained
|
||||||
badges$badge.death_from_fire.title=Burned
|
badges$badge.victory_all_classes=Amulet of Yendor obtained by Warrior, Mage, Rogue & Huntress
|
||||||
badges$badge.death_from_fire.desc=Die from fire
|
badges$badge.mastery_combo=10-hit combo
|
||||||
badges$badge.death_from_poison.title=Poisoned
|
badges$badge.potions_cooked_1=3 potions cooked
|
||||||
badges$badge.death_from_poison.desc=Die from poison
|
badges$badge.potions_cooked_2=6 potions cooked
|
||||||
badges$badge.death_from_gas.title=Suffocated
|
badges$badge.potions_cooked_3=9 potions cooked
|
||||||
badges$badge.death_from_gas.desc=Die from toxic gas
|
badges$badge.potions_cooked_4=12 potions cooked
|
||||||
badges$badge.death_from_hunger.title=Starved
|
badges$badge.no_monsters_slain=Level completed without killing any monsters
|
||||||
badges$badge.death_from_hunger.desc=Die from hunger
|
badges$badge.grim_weapon=Monster killed by a Grim weapon
|
||||||
badges$badge.death_from_glyph.title=Deferred Death
|
badges$badge.piranhas=6 piranhas killed
|
||||||
badges$badge.death_from_glyph.desc=Die from deferred damage
|
badges$badge.games_played_1=10 games played
|
||||||
badges$badge.death_from_falling.title=Pancaked
|
badges$badge.games_played_2=50 games played
|
||||||
badges$badge.death_from_falling.desc=Die from falling down
|
badges$badge.games_played_3=250 games played
|
||||||
badges$badge.yasd.title=Yet Another Sad Death
|
badges$badge.games_played_4=1000 games played
|
||||||
badges$badge.yasd.desc=Die to fire, poison, toxic gas, hunger, deferred damage, and falling
|
badges$badge.happy_end=Happy end
|
||||||
badges$badge.boss_slain_1.title=Slime janitor
|
badges$badge.champion_1=Won with a Challenge
|
||||||
badges$badge.boss_slain_1.desc=Defeat the boss at the end of the sewers
|
badges$badge.champion_2=Won with 3 Challenges
|
||||||
badges$badge.boss_slain_2.title=Prison Warden
|
badges$badge.champion_3=Won with 6 Challenges
|
||||||
badges$badge.boss_slain_2.desc=Defeat the boss at the end of the prison
|
badges$badge.unlock_mage=Unlocked the Mage
|
||||||
badges$badge.boss_slain_3.title=Metal Scrapper
|
badges$badge.unlock_rogue=Unlocked the Rogue
|
||||||
badges$badge.boss_slain_3.desc=Defeat the boss at the end of the caves
|
badges$badge.unlock_huntress=Unlocked the Huntress
|
||||||
badges$badge.boss_slain_4.title=King Conqueror
|
|
||||||
badges$badge.boss_slain_4.desc=Defeat the boss at the end of the city
|
|
||||||
badges$badge.boss_slain_1_all_classes.title=Jack of Many Trades
|
|
||||||
badges$badge.boss_slain_1_all_classes.desc=Defeat the first boss with the Warrior, Mage, Rogue & Huntress
|
|
||||||
badges$badge.boss_slain_3_all_subclasses.title=Jack of All Trades
|
|
||||||
badges$badge.boss_slain_3_all_subclasses.desc=Defeat the third boss with the Gladiator, Berserker, Warlock, Battlemage, Freerunner, Assassin, Sniper & Warden
|
|
||||||
badges$badge.strength_attained_1.title=Novice Bodybuilder
|
|
||||||
badges$badge.strength_attained_1.desc=Reach 12 points of strength
|
|
||||||
badges$badge.strength_attained_2.title=Adept Bodybuilder
|
|
||||||
badges$badge.strength_attained_2.desc=Reach 14 points of strength
|
|
||||||
badges$badge.strength_attained_3.title=Expert Bodybuilder
|
|
||||||
badges$badge.strength_attained_3.desc=Reach 16 points of strength
|
|
||||||
badges$badge.strength_attained_4.title=Master Bodybuilder
|
|
||||||
badges$badge.strength_attained_4.desc=Reach 18 points of strength
|
|
||||||
badges$badge.strength_attained_5.title=Grandmaster Bodybuilder
|
|
||||||
badges$badge.strength_attained_5.desc=Reach 20 points of strength
|
|
||||||
badges$badge.food_eaten_1.title=Novice Gourmet
|
|
||||||
badges$badge.food_eaten_1.desc=Eat food 10 times in one game
|
|
||||||
badges$badge.food_eaten_2.title=Adept Gourmet
|
|
||||||
badges$badge.food_eaten_2.desc=Eat food 20 times in one game
|
|
||||||
badges$badge.food_eaten_3.title=Expert Gourmet
|
|
||||||
badges$badge.food_eaten_3.desc=Eat food 30 times in one game
|
|
||||||
badges$badge.food_eaten_4.title=Master Gourmet
|
|
||||||
badges$badge.food_eaten_4.desc=Eat food 40 times in one game
|
|
||||||
badges$badge.food_eaten_5.title=Grandmaster Gourmet
|
|
||||||
badges$badge.food_eaten_5.desc=Eat food 50 times in one game
|
|
||||||
badges$badge.item_level_1.title=Novice Enchanter
|
|
||||||
badges$badge.item_level_1.desc=Acquire an item of level 3 or higher
|
|
||||||
badges$badge.item_level_2.title=Adept Enchanter
|
|
||||||
badges$badge.item_level_2.desc=Acquire an item of level 6 or higher
|
|
||||||
badges$badge.item_level_3.title=Expert Enchanter
|
|
||||||
badges$badge.item_level_3.desc=Acquire an item of level 9 or higher
|
|
||||||
badges$badge.item_level_4.title=Master Enchanter
|
|
||||||
badges$badge.item_level_4.desc=Acquire an item of level 12 or higher
|
|
||||||
badges$badge.item_level_5.title=Grandmaster Enchanter
|
|
||||||
badges$badge.item_level_5.desc=Acquire an item of level 15 or higher
|
|
||||||
badges$badge.victory.title=Victory!
|
|
||||||
badges$badge.victory.desc=Obtain the Amulet of Yendor
|
|
||||||
badges$badge.victory_all_classes.title=Master of Many Trades
|
|
||||||
badges$badge.victory_all_classes.desc=Obtain the Amulet of Yendor with the Warrior, Mage, Rogue & Huntress
|
|
||||||
badges$badge.mastery_combo.title=Gladiator's Fury
|
|
||||||
badges$badge.mastery_combo.desc=Reach a 10-hit combo
|
|
||||||
badges$badge.items_crafted_1.title=Novice Alchemist
|
|
||||||
badges$badge.items_crafted_1.desc=Craft 5 items via alchemy in one game
|
|
||||||
badges$badge.items_crafted_2.title=Adept Alchemist
|
|
||||||
badges$badge.items_crafted_2.desc=Craft 10 items via alchemy in one game
|
|
||||||
badges$badge.items_crafted_3.title=Expert Alchemist
|
|
||||||
badges$badge.items_crafted_3.desc=Craft 15 items via alchemy in one game
|
|
||||||
badges$badge.items_crafted_4.title=Master Alchemist
|
|
||||||
badges$badge.items_crafted_4.desc=Craft 20 items via alchemy in one game
|
|
||||||
badges$badge.items_crafted_5.title=Grandmaster Alchemist
|
|
||||||
badges$badge.items_crafted_5.desc=Craft 25 items via alchemy in one game
|
|
||||||
badges$badge.no_monsters_slain.title=Pacifist
|
|
||||||
badges$badge.no_monsters_slain.desc=Complete a Floor without defeating any enemies
|
|
||||||
badges$badge.grim_weapon.title=Grim Reaper
|
|
||||||
badges$badge.grim_weapon.desc=Defeat an enemy with a Grim weapon
|
|
||||||
badges$badge.piranhas.title=Unconventional Angler
|
|
||||||
badges$badge.piranhas.desc=Kill 6 piranhas in one game
|
|
||||||
badges$badge.games_played_1.title=Novice Dungeoneer
|
|
||||||
badges$badge.games_played_1.desc=Play 10 games or win 1 game
|
|
||||||
badges$badge.games_played_2.title=Adept Dungeoneer
|
|
||||||
badges$badge.games_played_2.desc=Play 50 games or win 5 games
|
|
||||||
badges$badge.games_played_3.title=Expert Dungeoneer
|
|
||||||
badges$badge.games_played_3.desc=Play 100 games or win 10 games
|
|
||||||
badges$badge.games_played_4.title=Master Dungeoneer
|
|
||||||
badges$badge.games_played_4.desc=Play 250 games or win 25 games
|
|
||||||
badges$badge.games_played_5.title=Grandmaster Dungeoneer
|
|
||||||
badges$badge.games_played_5.desc=Play 1000 games or win 100 games
|
|
||||||
badges$badge.happy_end.title=Happy Ending
|
|
||||||
badges$badge.happy_end.desc=Take the Amulet of Yendor to the surface
|
|
||||||
badges$badge.champion_1.title=Bronze Champion
|
|
||||||
badges$badge.champion_1.desc=Beat the game with 1 or more challenges enabled
|
|
||||||
badges$badge.champion_2.title=Silver Champion
|
|
||||||
badges$badge.champion_2.desc=Beat the game with 3 or more challenges enabled
|
|
||||||
badges$badge.champion_3.title=Golden Champion
|
|
||||||
badges$badge.champion_3.desc=Beat the game with 6 or more challenges enabled
|
|
||||||
badges$badge.unlock_mage.title=Mage Unlocked!
|
|
||||||
badges$badge.unlock_mage.desc=Unlock the Mage by using a scroll of upgrade
|
|
||||||
badges$badge.unlock_rogue.title=Rogue Unlocked!
|
|
||||||
badges$badge.unlock_rogue.desc=Unlock the Rogue by performing 10 surprise attacks in one game
|
|
||||||
badges$badge.unlock_huntress.title=Huntress Unlocked!
|
|
||||||
badges$badge.unlock_huntress.desc=Unlock the Huntress by attacking 10 enemies with thrown weapons in one game
|
|
||||||
|
|
||||||
challenges.no_food=On diet
|
challenges.no_food=On diet
|
||||||
challenges.no_food_desc=Food's already scarce, but you have to watch your portions as well!\n\n- Food and the horn of plenty are one third as effective at satisfying hunger\n- Other sources of satiety are unaffected
|
challenges.no_food_desc=Food's already scarce, but you have to watch your portions as well!\n\n- Food and the horn of plenty are one third as effective at satisfying hunger\n- Other sources of satiety are unaffected
|
||||||
|
@ -164,19 +82,46 @@ challenges.swarm_intelligence_desc=Watch out, the dungeon monsters are getting s
|
||||||
challenges.darkness=Into darkness
|
challenges.darkness=Into darkness
|
||||||
challenges.darkness_desc=It is a dungeon after all!\n\n- Regular visible distance dramatically reduced\n- A torch appears on each floor\n- Light buff lasts for less time
|
challenges.darkness_desc=It is a dungeon after all!\n\n- Regular visible distance dramatically reduced\n- A torch appears on each floor\n- Light buff lasts for less time
|
||||||
challenges.no_scrolls=Forbidden runes
|
challenges.no_scrolls=Forbidden runes
|
||||||
challenges.no_scrolls_desc=A certain rune is harder to find. Unfortunately, it's always the most useful one.\n\n- Half of the dungeon's upgrade scrolls are removed
|
challenges.no_scrolls_desc=A certain rune is harder to find. Unfortunately, it's always the most useful one.\n\n- Half of the dungeon's upgrades scrolls are removed
|
||||||
challenges.champion_enemies=Hostile champions
|
challenges.champion_enemies=_Hostile champions_
|
||||||
challenges.champion_enemies_desc=You're not the only one who can level up!\n\n- Regular enemies have a 1/8 chance to spawn with a special champion buff.\n- Champions wake up if they spawn asleep\n- The hero knows when a champion spawns\n- Champions are immune to corruption\n\nThere are six types of champion enemy:\n_Blazing (orange):_ +25% melee damage, ignites on hit, immune to fire, spreads flames on death\n_Projecting (purple):_ +25% melee damage, can attack anything they see\n_Antimagic (green):_ -25% damage taken, immune to magical effects\n_Giant (blue):_ -75% damage taken, +1 melee range, cannot move into tunnels\n_Blessed (yellow):_ +200% accuracy, +200% evasion\n_Growing (red):_ +20% accuracy, evasion, damage, and effective HP. Increases by 1% every 3 turns.
|
challenges.champion_enemies_desc=You're not the only one who can level up!\n\n- Regular enemies have a 1/8 chance to spawn with a special champion buff.\n- Champions wake up if they spawn asleep\n- The hero knows when a champion spawns\n- Champions are immune to corruption\n\nThere are seven types of champion enemy:\n_Blazing (orange):_ +25% melee damage, ignites on hit, immune to fire, spreads flames on death\n_Projecting (purple):_ +25% melee damage, can attack anything they see\n_Antimagic (green):_ -25% damage taken, immune to magical effects\n_Giant (blue):_ -75% damage taken, +1 melee range, cannot move into tunnels\n_Blessed (yellow):_ +200% accuracy, +200% evasion\n_Growing (red):_ +20% accuracy, evasion, damage, and effective HP. Increases by 1% every 3 turns.\n_Ghost Ling (Sky Blue): _ Melee damage +65% with Phosphorus Fire effect, immune to fire and Phosphorus Fire, ignites the surrounding area upon death.
|
||||||
challenges.stronger_bosses=Badder bosses
|
|
||||||
challenges.stronger_bosses_desc=Bosses are much tougher with this challenge!\n\n_Goo:_ +20% health\n_-_ Healing in water ramps up, to 3/turn\n_-_ Pumps up in 1 turn instead of 2\n_Tengu:_ +25% health\n_-_ Phase 1: traps are much deadlier\n_-_ Phase 2: abilities are more frequent\n_DM-300:_ +33% health\n_-_ Pylons are tougher and 3 activate\n_-_ Abilities are more powerful and frequent\n_-_ DM-300 is faster when supercharged\n_-_ Exposed wires are twice as common\n_Dwarf King:_ +50% health\n_-_ Minions are stronger in all phases\n_-_ Phase 1: faster abilities and summons\n_-_ Phase 2: 2 more minions per round\n_-_ Phase 3: 2x health, faster summons\n_Yog-Dzewa:_\n_-_ Two fists are summoned at a time!\n_-_ +60% laser damage\n_-_ Stronger minions
|
|
||||||
|
|
||||||
rankings$record.something=Killed by Something
|
rankings$record.something=Killed by Something
|
||||||
|
|
||||||
challenges.light&black =_Light & Shadow_
|
badges$badge.kill_red=Defeat the RedNer
|
||||||
challenges.light&black_desc=\n_ Stepping into the dungeon again and again will only make yourself more eroded by vicious magic. _This time, you don't know when you will come to this dungeon again, but the evil and eerie atmosphere blows your face. A mysterious man has given you a lantern. You don't know when you'll be engulfed by the magic here. \n\nOpen this challenge, you will get a special Sanity Buff at the beginning, and a new item _Lantern_ will be added. The spiritual power of the lantern needs to be obtained by the player defeating the enemy. \n\n_Only in the light can you live. Otherwise, you will be devoured by darkness, lose your mind a little bit, and become a monster. _\n\nOnce your sanity is too low, special monsters and debuffs will appear. Sanity of 0 will immediately die and become a monster. If there is a cross, it will be resurrected and restore 100 sanity, but all your last things will be on the monster whose sanity became 0 last time. \n\n_It is an echo of your past life. Defeat it, take back its power, and make yourself whole again. _\n\n_Completing the Light and Shadow Challenge will add a mysterious character to level 0...and unlock new items and weapons!_\n\nOpening this challenge will give you 240 Sanity at the start, under _without light_ and _Melee combat of some monsters_ will reduce your Sanity. See the table below for details:\n\n- Brown Rat: 20% chance (-1 Sanity/round)\n- Black Wraith: 10% chance (-3 Sanity/round)\n- Torch Hunter: 40% Chance (-1 Sanity/per turn)\n- Dwarf Warlock: 15% chance (-5 Sanity/per turn)\n- Ice Rat: 25% chance (-2 Sanity/per turn)\n-DM200:10 % chance (-7 sanity/per turn)\n-dwarven monk: 30% chance (-3 sanity/per turn)\n\n_environmental sanity deduction_:\n-without light buff\n :\n\n_Sanity recovery strategy_:\n-_1_: When there is light, use: [(+1 Sanity + Floor Depth/10)/each turn] (Example: When there is no light on the 20th floor, 1 +20/10=3 (+3 wisdom/round)\n-_2_. Merchants sell potions of faith, drink it to add 40 rounds of sanity\n-_3_. Defeating the enemy can get the enemy's soul, and if the soul reaches a certain amount, you can make a lantern Can light up the road again. Soul can also slowly restore sanity. (50 soul = 1 sanity recovery)
|
badges$badge.kill_rotheart=Eradicate Rotberry Heart
|
||||||
|
badges$badge.kill_coldele=Cold of the New Fire Elemental
|
||||||
|
badges$badge.get_sc=Purge the Root of Wrath\nGive the dust to the old sticksmith
|
||||||
|
badges$badge.godd_make=The old man and the sea\nComplete all the tasks of the old stickmaker in total
|
||||||
|
badges$badge.death_good=Death Good - Exhausted Free Resurrects in Fragmentation
|
||||||
|
badges$badge.halofire_died=Died in Phosphorus Fire
|
||||||
|
badges$badge.champion_4=Open 9 challenges to clear\n\nYour prestige is very noble!
|
||||||
|
badges$badge.champion_5=All challenges? !\n\nCan you save her?
|
||||||
|
badges$badge.rlpt=_Rand Broken Conqueror_\n\nStart the challenge and defeat the Yog God
|
||||||
|
badges$badge.sbdjs=Storm Rain\n\nYou passed it successfully to leave, but you don't know, the storm is coming outside\n\nThe crystal heart is still shining in your hand, maybe, this is not over yet !
|
||||||
|
badges$badge.kill_mg=Defeat the Ice Witch
|
||||||
|
badges$badge.kill_slmking=Kill prince slime
|
||||||
|
badges$badge.big_x=Giant's Death\n\nThe Mutant Behemoth is on! You have overcome many difficulties! ! !
|
||||||
|
badges$badge.kill_dm720= Kill DM720
|
||||||
|
|
||||||
dlc.bossrush=Boss Rush
|
challenges.aquaphobia=_Sludge water_
|
||||||
dlc.bossrush_desc=The bosses who have been defeated by you many times are familiar with the hero's skills and have mastered certain countermeasures. They are entrenched in dungeons, waiting for their revenge. \nYou don't know what kind of crisis will be dealt with this time. \nBut you feel that this adventure is definitely different from other times. \nThe Fragmentation and Reduction Diet will not be able to be generated and used when this challenge is opened.
|
challenges.aquaphobia_desc=The water has been polluted by the city above__, now you are _blinded_ and _crippled_ when you touch it. \nAt the same time, you can start to get _10 quicklime ideal reagents_! _
|
||||||
|
actors.char.aquaphobia=You are hurt by water!
|
||||||
|
challenges.pro=_Developer mode_
|
||||||
|
challenges.pro_desc=Annotated version? \nStarting with _almost all items_! At the same time, you will not be able to pass the level!
|
||||||
|
challenges.traditional = Vanilla Mode - T1
|
||||||
|
challenges.hard = Valhalla Mode - T2
|
||||||
|
challenges.warning = Danger Mode - T3
|
||||||
|
challenges.test = Debug - Mod
|
||||||
|
challenges.custom = Custom - Mod
|
||||||
|
challenges.dhxd =_Candle Fire Road_
|
||||||
|
challenges.dhxd_desc= Lights guide the way forward. Lanterns lead the way. Lights lead the way! [This is a special mechanism for you must open more than 3 Challenges that than work, but you can also open it directly!]
|
||||||
|
challenges.rlpt = Fragmented
|
||||||
|
challenges.rlpt_desc=The magic of the dungeon is eroding this place, and reality is nothing but a nightmare. \n\nAfter defeating the boss on the fifth floor, all floors and monsters will be random! ! ! \n\nSpecial Instructions: The Rogue opening cloak is replaced with 5 invisibility potions. \n\nEnable this challenge, you can get 3 free resurrection chances.
|
||||||
|
challenges.sbsg = Mutant Behemoth
|
||||||
|
challenges.sbsg_desc=Humans recall the fear of being dominated by giants\n- All creatures mutate hormones to become larger, but some become smaller due to some other adverse effect. \n- The size of the creature determines their movement speed, defense, evasion and melee damage. \n- Your extreme hunger will also become more deadly.
|
||||||
|
challenges.stronger_bosses=Badder bosses
|
||||||
|
challenges.stronger_bosses_desc=Bosses are much tougher with this challenge!\n\n_Goo:_ +20% health\n_-_ Healing in water ramps up, to 3/turn\n_-_ Pumps up in 1 turn instead of 2\n_Tengu:_ +25% health\n_-_ Phase 1: traps are much deadlier\n_-_ Phase 2: abilities are more frequent\n_DM-300:_ +33% health\n_-_ Pylons are tougher and 3 activate\n_-_ Abilities are more powerful and frequent\n_-_ DM-300 is faster when supercharged\n_-_ Exposed wires are twice as common\n_Dwarf King:_ +50% health\n_-_ Minions are stronger in all phases\n_-_ Phase 1: faster abilities and summons\n_-_ Phase 2: 2 more minions per round\n_-_ Phase 3: 2x health, faster summons\n_Yog-Dzewa:_\n_-_ Two fists are summoned at a time!\n_-_ +60% laser damage\n_-_ Stronger minions
|
||||||
|
|
||||||
dlc.back_go=Back Go
|
challenges.exsg = Potion Illness
|
||||||
dlc.back_go_desc=A reverse adventure, can you get out of here? The 5 fixed bosses appear on the final floor.
|
challenges.exsg_desc=Potion Illness Rules?\n-PotionOfStrength Strength:-1\n-PotionOfMindVision NoEye:5 Round\n-Stealth potion roars immediately after drinking\n-Bleed for 6 rounds immediately after drinking the experience medicine\n-After drinking the super fast potion, you will be cripple for 8 rounds immediately\n==========================\nGet 8 rounds of extreme speed immediately after eating small rations\n Upgrade immediately after eating stew \n Get an arcane shield after eating frozen raw meat\n Get 8 rounds of extreme speed and+1 strength immediately after eating whole meat pancake \n Don't know why, most good potions are poisonous! \n Some potions are completely in DeBuff, but the food will be very useful!
|
|
@ -1,5 +1,12 @@
|
||||||
#scenes.aboutscene.=
|
#scenes.aboutscene.=
|
||||||
|
|
||||||
|
windows.wndsettings$extendtab.splash_screen=Splash Scenes
|
||||||
|
windows.wndsettings$extendtab.disable=Disable
|
||||||
|
windows.wndsettings$extendtab.full=Open
|
||||||
|
|
||||||
|
windows.wndsettings$helptab.title=Help Setting
|
||||||
|
windows.wndsettings$helptab.helpsettings=Enable Item Generation Querier
|
||||||
|
|
||||||
scenes.alchemyscene.title=Alchemy
|
scenes.alchemyscene.title=Alchemy
|
||||||
scenes.alchemyscene.text=Combine ingredients to create something new!
|
scenes.alchemyscene.text=Combine ingredients to create something new!
|
||||||
scenes.alchemyscene.select=Select an item
|
scenes.alchemyscene.select=Select an item
|
||||||
|
@ -63,7 +70,7 @@ scenes.introscene.text=Many heroes have ventured into the dungeon before you fro
|
||||||
|
|
||||||
scenes.newsscene.title=Game News
|
scenes.newsscene.title=Game News
|
||||||
scenes.newsscene.read_more=Read More
|
scenes.newsscene.read_more=Read More
|
||||||
scenes.newsscene$newsinfo.english_warn=News posts are written by the developer and are only available in English.
|
scenes.newsscene$newsinfo.english_warn=News posts are written by the developer and are only available in Chinese.
|
||||||
scenes.newsscene$newsinfo.metered_network=Couldn't check for news posts, as you're connected to a metered network, such as mobile data.
|
scenes.newsscene$newsinfo.metered_network=Couldn't check for news posts, as you're connected to a metered network, such as mobile data.
|
||||||
scenes.newsscene$newsinfo.enable_data=Check on Mobile Data
|
scenes.newsscene$newsinfo.enable_data=Check on Mobile Data
|
||||||
scenes.newsscene$newsinfo.no_internet=Couldn't check for news posts, make sure you're connected to the internet.
|
scenes.newsscene$newsinfo.no_internet=Couldn't check for news posts, make sure you're connected to the internet.
|
||||||
|
@ -96,7 +103,7 @@ scenes.titlescene.update=Update
|
||||||
scenes.titlescene.install=Install
|
scenes.titlescene.install=Install
|
||||||
scenes.titlescene.settings=Settings
|
scenes.titlescene.settings=Settings
|
||||||
scenes.titlescene.about=About
|
scenes.titlescene.about=About
|
||||||
scenes.titlescene.support=Support the Game
|
scenes.titlescene.support=Thanks
|
||||||
scenes.titlescene$changesbutton.title=An Update is Available!
|
scenes.titlescene$changesbutton.title=An Update is Available!
|
||||||
scenes.titlescene$changesbutton.versioned_title=Update Available: %s
|
scenes.titlescene$changesbutton.versioned_title=Update Available: %s
|
||||||
scenes.titlescene$changesbutton.desc=Shattered Pixel Dungeon is regularly updated with overhauls to existing game content, or entirely new content!\n\nGame balance is also frequently improved in game updates, so that specific items/heroes/enemies aren't too strong or too weak.\n\nUpdates also include fixes for bugs and other various stability improvements.
|
scenes.titlescene$changesbutton.desc=Shattered Pixel Dungeon is regularly updated with overhauls to existing game content, or entirely new content!\n\nGame balance is also frequently improved in game updates, so that specific items/heroes/enemies aren't too strong or too weak.\n\nUpdates also include fixes for bugs and other various stability improvements.
|
||||||
|
|
|
@ -476,4 +476,6 @@ ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x33=-P2.6\n1.修复了感知符石鉴
|
||||||
|
|
||||||
ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x34=-P2.7\n1.修复了火焰特效遗留问题\n2.修复了炖肉不回复饱食度的问题\n3.修复部分逻辑错误
|
ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x34=-P2.7\n1.修复了火焰特效遗留问题\n2.修复了炖肉不回复饱食度的问题\n3.修复部分逻辑错误
|
||||||
|
|
||||||
|
ui.changelist.mlpd.vm0_6_7_x_changes.bug_06x35=-P2.875\n1.修复了回溯之书的快捷使用错误\n2.修复了自定义名称的缓存问题\n3.删除不必要的赘余代码\n4.元素风暴现在可以工作,但特效有一些Bug,因此视觉效果不会出现\n5.删除WIP的东西\n6.英雄选择界面优化
|
||||||
|
|
||||||
//ui.changelist.mlpd.vm0_5_x_changes.xxx//
|
//ui.changelist.mlpd.vm0_5_x_changes.xxx//
|
|
@ -49,7 +49,7 @@ windows.wndstartgame.hard=难度选择
|
||||||
windows.wndstartgame.news=章节选择
|
windows.wndstartgame.news=章节选择
|
||||||
windows.wndstartgame.seedtitle=命名终端
|
windows.wndstartgame.seedtitle=命名终端
|
||||||
windows.wndstartgame.custom_name=自定义名字
|
windows.wndstartgame.custom_name=自定义名字
|
||||||
windows.wndstartgame.custom_name_desc=输入你需要的自定义名字,最多可以输入20字符\n\n自定义名字规则激活后图标会显示为卷轴标志,此时进入游戏后方可生效。\n\n自定义名字将完全独立\n\n[温馨提示:预览仅显示最后一次自定义名字]\n\n自定义名称预览:_
|
windows.wndstartgame.custom_name_desc=输入你需要的自定义名字,最多可以输入20字符\n\n自定义名字规则激活后图标会显示为卷轴标志,此时进入游戏后方可生效。\n\n自定义名字将完全独立\n\n[温馨提示:预览仅显示最后一次自定义名字]\n\n最后一次编辑的自定义名称预览:_
|
||||||
windows.wndstartgame.custom_name_set=接受
|
windows.wndstartgame.custom_name_set=接受
|
||||||
windows.wndstartgame.custom_name_clear=清空
|
windows.wndstartgame.custom_name_clear=清空
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,39 @@
|
||||||
|
#MLPD
|
||||||
|
|
||||||
|
windows.wndsettings$extendtab.quickslots=Quickslots Setting
|
||||||
|
windows.wndsettings$extendtab.wxts=Tips: Adjust the shortcut bar after entering the game
|
||||||
|
|
||||||
|
|
||||||
|
windows.wndsettings$extendtab.title=Extend Setting
|
||||||
|
windows.wndsettings$extendtab.dark_ui=Classic Interface
|
||||||
|
windows.wndsettings$extendtab.pc_ui=Experimental Function (Application PC interface)
|
||||||
|
|
||||||
|
windows.pagewindows$pagewindowstab.title=Left Quickslot Setting
|
||||||
|
windows.pagewindows$pagewindowstab.page_ui=Display Quickslot
|
||||||
|
|
||||||
|
windows.bosssettingwindows.title = Extends Boss
|
||||||
|
windows.bosssettingwindows.boss_1 = Kill Slime King
|
||||||
|
windows.bosssettingwindows.boss_2 = Kill Dimand Mimic King
|
||||||
|
windows.bosssettingwindows.boss_3 = Kill IceSnow MagicGirl
|
||||||
|
windows.bosssettingwindows.boss_4 = Kill Dwarf Master
|
||||||
|
windows.bosssettingwindows.boss_5 = Kill Yog-Zot
|
||||||
|
|
||||||
|
windows.bosssettingwindows.dm300=DM-300
|
||||||
|
windows.bosssettingwindows.ice=IceGirl
|
||||||
|
|
||||||
|
windows.textchallenges.seed_custom_title = Seed
|
||||||
|
windows.textchallenges.hint = No Input is Random seed
|
||||||
|
windows.textchallenges.delete_seed_input = Clear
|
||||||
|
|
||||||
|
windows.wndstartgame.title=Choose Your Hero
|
||||||
|
windows.wndstartgame.start=Start Game
|
||||||
|
|
||||||
|
windows.wndinfomob.dsinfo = dodge:
|
||||||
|
windows.wndinfomob.maxinfo = lootcelimit:
|
||||||
|
windows.wndinfomob.getexp = lastdmg:
|
||||||
windows.wndinfomob.getspeed = speed:
|
windows.wndinfomob.getspeed = speed:
|
||||||
|
windows.wndinfomob.itm = lootce:
|
||||||
|
windows.wndinfomob.shield= drRoll:
|
||||||
|
|
||||||
windows.wndreddragon.gnollshied_title=Defeat the Elder Gnoll Refining Medicine
|
windows.wndreddragon.gnollshied_title=Defeat the Elder Gnoll Refining Medicine
|
||||||
windows.wndreddragon.skullgnoll_title=Defeat the Elder Jackal
|
windows.wndreddragon.skullgnoll_title=Defeat the Elder Jackal
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 508 KiB |
|
@ -301,7 +301,6 @@ public class Assets {
|
||||||
public static final String HUNTRESS = "sprites/huntress.png";
|
public static final String HUNTRESS = "sprites/huntress.png";
|
||||||
public static final String COMINGSOON = "sprites/slimekingch.png";
|
public static final String COMINGSOON = "sprites/slimekingch.png";
|
||||||
public static final String AVATARS = "sprites/avatars.png";
|
public static final String AVATARS = "sprites/avatars.png";
|
||||||
public static final String PET = "sprites/pet.png";
|
|
||||||
public static final String AMULET = "sprites/amulet.png";
|
public static final String AMULET = "sprites/amulet.png";
|
||||||
public static final String JAMULET = "sprites/jamulet.png";
|
public static final String JAMULET = "sprites/jamulet.png";
|
||||||
public static final String COLDRAT = "sprites/coldrat.png";
|
public static final String COLDRAT = "sprites/coldrat.png";
|
||||||
|
|
|
@ -57,9 +57,9 @@ public class Challenges {
|
||||||
|
|
||||||
public static final int PRO = 16384;
|
public static final int PRO = 16384;
|
||||||
|
|
||||||
public static final int BUG = 32768;
|
// public static final int BUG = 32768;
|
||||||
|
|
||||||
public static final int MAX_VALUE = 65536;
|
public static final int MAX_VALUE = 32768;
|
||||||
|
|
||||||
public static final String[] NAME_IDS = {
|
public static final String[] NAME_IDS = {
|
||||||
"no_food",
|
"no_food",
|
||||||
|
@ -77,12 +77,11 @@ public class Challenges {
|
||||||
"stronger_bosses",
|
"stronger_bosses",
|
||||||
"dhxd",
|
"dhxd",
|
||||||
"pro",
|
"pro",
|
||||||
"bug",
|
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final int[] MASKS = {
|
public static final int[] MASKS = {
|
||||||
NO_FOOD, NO_ARMOR, NO_HEALING, NO_HERBALISM, SWARM_INTELLIGENCE, DARKNESS, NO_SCROLLS
|
NO_FOOD, NO_ARMOR, NO_HEALING, NO_HERBALISM, SWARM_INTELLIGENCE, DARKNESS, NO_SCROLLS
|
||||||
, AQUAPHOBIA, CHAMPION_ENEMIES,RLPT,SBSG,EXSG,STRONGER_BOSSES,DHXD,PRO,BUG,
|
, AQUAPHOBIA, CHAMPION_ENEMIES,RLPT,SBSG,EXSG,STRONGER_BOSSES,DHXD,PRO,
|
||||||
};
|
};
|
||||||
public String name;
|
public String name;
|
||||||
|
|
||||||
|
|
|
@ -22,12 +22,10 @@
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.actors.hero;
|
package com.shatteredpixel.shatteredpixeldungeon.actors.hero;
|
||||||
|
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.AQUAPHOBIA;
|
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.AQUAPHOBIA;
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.BUG;
|
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.DHXD;
|
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.DHXD;
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.PRO;
|
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.PRO;
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Dungeon.hero;
|
import static com.shatteredpixel.shatteredpixeldungeon.Dungeon.hero;
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.SPDSettings.HelpSettings;
|
import static com.shatteredpixel.shatteredpixeldungeon.SPDSettings.HelpSettings;
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Statistics.bugsyncfixed;
|
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Statistics.lanterfireactive;
|
import static com.shatteredpixel.shatteredpixeldungeon.Statistics.lanterfireactive;
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.levels.Level.set;
|
import static com.shatteredpixel.shatteredpixeldungeon.levels.Level.set;
|
||||||
|
|
||||||
|
@ -137,7 +135,6 @@ import com.shatteredpixel.shatteredpixeldungeon.items.lightblack.OilLantern;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.Potion;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfExperience;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfExperience;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHealing;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHealing;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfLightningShiledX;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.elixirs.ElixirOfMight;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.elixirs.ElixirOfMight;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic.PotionOfDivineInspiration;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.exotic.PotionOfDivineInspiration;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfAccuracy;
|
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfAccuracy;
|
||||||
|
@ -930,11 +927,11 @@ public class Hero extends Char {
|
||||||
//TODO 获取三个挑战的枚举后,则超过或等于3挑战以激活挑战,在英雄移动的时候
|
//TODO 获取三个挑战的枚举后,则超过或等于3挑战以激活挑战,在英雄移动的时候
|
||||||
//
|
//
|
||||||
|
|
||||||
//todo 移动时修复了BUG
|
// //todo 移动时修复了BUG
|
||||||
if(Dungeon.isChallenged(BUG) && !bugsyncfixed){
|
// if(Dungeon.isChallenged(BUG) && !bugsyncfixed){
|
||||||
new PotionOfLightningShiledX().quantity(3).identify().collect();
|
// new PotionOfLightningShiledX().quantity(3).identify().collect();
|
||||||
bugsyncfixed = true;
|
// bugsyncfixed = true;
|
||||||
}
|
// }
|
||||||
|
|
||||||
if(chCount >= 3 && !lanterfireactive && !Dungeon.isChallenged(PRO) || Dungeon.isChallenged(DHXD) && !lanterfireactive){
|
if(chCount >= 3 && !lanterfireactive && !Dungeon.isChallenged(PRO) || Dungeon.isChallenged(DHXD) && !lanterfireactive){
|
||||||
//TODO 灯火前行
|
//TODO 灯火前行
|
||||||
|
|
|
@ -21,8 +21,6 @@
|
||||||
|
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.actors.hero;
|
package com.shatteredpixel.shatteredpixeldungeon.actors.hero;
|
||||||
|
|
||||||
import static com.shatteredpixel.shatteredpixeldungeon.Challenges.BUG;
|
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Challenges;
|
import com.shatteredpixel.shatteredpixeldungeon.Challenges;
|
||||||
|
@ -50,12 +48,13 @@ import com.shatteredpixel.shatteredpixeldungeon.custom.testmode.MobPlacer;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Ankh;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Ankh;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.BrokenSeal;
|
import com.shatteredpixel.shatteredpixeldungeon.items.BrokenSeal;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.items.KingsCrown;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.items.TengusMask;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Waterskin;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Waterskin;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.ClothArmor;
|
import com.shatteredpixel.shatteredpixeldungeon.items.armor.ClothArmor;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.ChaliceOfBlood;
|
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.ChaliceOfBlood;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.CloakOfShadows;
|
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.CloakOfShadows;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.DriedRose;
|
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.DriedRose;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.GoldIron;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.MasterThievesArmband;
|
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.MasterThievesArmband;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.TalismanOfForesight;
|
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.TalismanOfForesight;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.bags.BookBag;
|
import com.shatteredpixel.shatteredpixeldungeon.items.bags.BookBag;
|
||||||
|
@ -120,7 +119,6 @@ import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.IceFishSword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.LockSword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.LockSword;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.RedBloodMoon;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.RedBloodMoon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Sai;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.SkyShield;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.SkyShield;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.WarHammer;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.WarHammer;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.WornShortsword;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.WornShortsword;
|
||||||
|
@ -138,9 +136,9 @@ public enum HeroClass {
|
||||||
WARRIOR( HeroSubClass.BERSERKER, HeroSubClass.GLADIATOR ),
|
WARRIOR( HeroSubClass.BERSERKER, HeroSubClass.GLADIATOR ),
|
||||||
MAGE( HeroSubClass.BATTLEMAGE, HeroSubClass.WARLOCK ),
|
MAGE( HeroSubClass.BATTLEMAGE, HeroSubClass.WARLOCK ),
|
||||||
ROGUE( HeroSubClass.ASSASSIN, HeroSubClass.FREERUNNER ),
|
ROGUE( HeroSubClass.ASSASSIN, HeroSubClass.FREERUNNER ),
|
||||||
HUNTRESS( HeroSubClass.SNIPER, HeroSubClass.WARDEN ),
|
HUNTRESS( HeroSubClass.SNIPER, HeroSubClass.WARDEN );
|
||||||
|
|
||||||
COMINGSOON( HeroSubClass.SNIPER, HeroSubClass.WARDEN );
|
// COMINGSOON( HeroSubClass.SNIPER, HeroSubClass.WARDEN );
|
||||||
|
|
||||||
private HeroSubClass[] subClasses;
|
private HeroSubClass[] subClasses;
|
||||||
|
|
||||||
|
@ -183,8 +181,8 @@ public enum HeroClass {
|
||||||
// Buff.affect(hero, ChampionHero.Giant.class, ChampionHero.DURATION);
|
// Buff.affect(hero, ChampionHero.Giant.class, ChampionHero.DURATION);
|
||||||
// Buff.affect(hero, ChampionHero.Growing.class, ChampionHero.DURATION);
|
// Buff.affect(hero, ChampionHero.Growing.class, ChampionHero.DURATION);
|
||||||
new Gauntlet().quantity(1).identify().collect();
|
new Gauntlet().quantity(1).identify().collect();
|
||||||
new Sai().quantity(1).identify().collect();
|
new TengusMask().quantity(1).identify().collect();
|
||||||
new GoldIron().quantity(1).identify().collect();
|
new KingsCrown().quantity(1).identify().collect();
|
||||||
new ScrollOfIdentify().quantity(45).identify().collect();
|
new ScrollOfIdentify().quantity(45).identify().collect();
|
||||||
new ScrollOfTransmutation().quantity(45).identify().collect();
|
new ScrollOfTransmutation().quantity(45).identify().collect();
|
||||||
new BeaconOfReturning().quantity(11).identify().collect();
|
new BeaconOfReturning().quantity(11).identify().collect();
|
||||||
|
@ -265,9 +263,9 @@ public enum HeroClass {
|
||||||
i = new Food();
|
i = new Food();
|
||||||
|
|
||||||
//todo 不存在BUG挑战才给予
|
//todo 不存在BUG挑战才给予
|
||||||
if(!Dungeon.isChallenged(BUG)) {
|
// if(!Dungeon.isChallenged(BUG)) {
|
||||||
new PotionOfLightningShiledX().quantity(3).identify().collect();
|
// new PotionOfLightningShiledX().quantity(3).identify().collect();
|
||||||
}
|
// }
|
||||||
|
|
||||||
new HerbBag().quantity(1).identify().collect();
|
new HerbBag().quantity(1).identify().collect();
|
||||||
new PotionOfHealing().quantity(3).identify().collect();
|
new PotionOfHealing().quantity(3).identify().collect();
|
||||||
|
@ -433,8 +431,8 @@ public enum HeroClass {
|
||||||
return Assets.Sprites.ROGUE;
|
return Assets.Sprites.ROGUE;
|
||||||
case HUNTRESS:
|
case HUNTRESS:
|
||||||
return Assets.Sprites.HUNTRESS;
|
return Assets.Sprites.HUNTRESS;
|
||||||
case COMINGSOON:
|
// case COMINGSOON:
|
||||||
return Assets.Sprites.COMINGSOON;
|
// return Assets.Sprites.COMINGSOON;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -449,8 +447,8 @@ public enum HeroClass {
|
||||||
return Assets.Sprites.ROGUE;
|
return Assets.Sprites.ROGUE;
|
||||||
case HUNTRESS:
|
case HUNTRESS:
|
||||||
return Assets.Sprites.HUNTRESS;
|
return Assets.Sprites.HUNTRESS;
|
||||||
case COMINGSOON:
|
// case COMINGSOON:
|
||||||
return Assets.Sprites.COMINGSOON;
|
// return Assets.Sprites.COMINGSOON;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -514,8 +512,8 @@ public enum HeroClass {
|
||||||
return true;
|
return true;
|
||||||
case HUNTRESS:
|
case HUNTRESS:
|
||||||
return true;
|
return true;
|
||||||
case COMINGSOON:
|
// case COMINGSOON:
|
||||||
return false;
|
// return false;
|
||||||
//敬请期待
|
//敬请期待
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -530,8 +528,8 @@ public enum HeroClass {
|
||||||
return Messages.get(HeroClass.class, "rogue_unlock");
|
return Messages.get(HeroClass.class, "rogue_unlock");
|
||||||
case HUNTRESS:
|
case HUNTRESS:
|
||||||
return Messages.get(HeroClass.class, "huntress_unlock");
|
return Messages.get(HeroClass.class, "huntress_unlock");
|
||||||
case COMINGSOON:
|
// case COMINGSOON:
|
||||||
return Messages.get(HeroClass.class, "slime_unlock");
|
// return Messages.get(HeroClass.class, "slime_unlock");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -128,9 +128,9 @@ public class ElementalBlast extends ArmorAbility {
|
||||||
damageFactors.put(WandOfRegrowth.class, 0f);
|
damageFactors.put(WandOfRegrowth.class, 0f);
|
||||||
|
|
||||||
//TODO FIXED 将要修复的
|
//TODO FIXED 将要修复的
|
||||||
damageFactors.put(WandOfScale.class, 0f);
|
damageFactors.put(WandOfScale.class, 1f);
|
||||||
damageFactors.put(WandOfGodIce.class, 0f);
|
damageFactors.put(WandOfGodIce.class, 1f);
|
||||||
damageFactors.put(WandOfBlueFuck.class, 0f);
|
damageFactors.put(WandOfBlueFuck.class, 1f);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
|
@ -167,7 +167,7 @@ public class ElementalBlast extends ArmorAbility {
|
||||||
projectileProps = Ballistica.STOP_TARGET;
|
projectileProps = Ballistica.STOP_TARGET;
|
||||||
|
|
||||||
//*** Wand of Fireblast ***
|
//*** Wand of Fireblast ***
|
||||||
} else if (wandCls == WandOfFireblast.class){
|
} else if (wandCls == WandOfFireblast.class||wandCls == WandOfGodIce.class||wandCls == WandOfScale.class||wandCls == WandOfBlueFuck.class){
|
||||||
projectileProps = projectileProps | Ballistica.IGNORE_SOFT_SOLID;
|
projectileProps = projectileProps | Ballistica.IGNORE_SOFT_SOLID;
|
||||||
|
|
||||||
//*** Wand of Warding ***
|
//*** Wand of Warding ***
|
||||||
|
|
|
@ -53,6 +53,8 @@ import com.watabou.utils.Callback;
|
||||||
import com.watabou.utils.PathFinder;
|
import com.watabou.utils.PathFinder;
|
||||||
import com.watabou.utils.Random;
|
import com.watabou.utils.Random;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class SlimeKing extends Boss {
|
public class SlimeKing extends Boss {
|
||||||
|
|
||||||
private final String[] attackCurse = {"雕虫小技", "班门弄斧",
|
private final String[] attackCurse = {"雕虫小技", "班门弄斧",
|
||||||
|
@ -65,6 +67,36 @@ public class SlimeKing extends Boss {
|
||||||
private static final String partcold = "partcold";
|
private static final String partcold = "partcold";
|
||||||
private static final String chainsused = "chainsused";
|
private static final String chainsused = "chainsused";
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int defenseProc( Char enemy, int damage ) {
|
||||||
|
|
||||||
|
if (HP >= damage + 2) {
|
||||||
|
ArrayList<Integer> candidates = new ArrayList<>();
|
||||||
|
|
||||||
|
int[] neighbours = {pos + 1, pos - 1, pos + Dungeon.level.width(), pos - Dungeon.level.width()};
|
||||||
|
for (int n : neighbours) {
|
||||||
|
if (!Dungeon.level.solid[n] && Actor.findChar( n ) == null
|
||||||
|
&& (!properties().contains(Property.LARGE) || Dungeon.level.openSpace[n])) {
|
||||||
|
candidates.add( n );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (candidates.size() > 0 && HP < 60 && Random.Float() < 0.45f) {
|
||||||
|
CausticSlime mini = new CausticSlime();
|
||||||
|
mini.pos = this.pos;
|
||||||
|
mini.state = mini.HUNTING;
|
||||||
|
mini.HP /= 4;
|
||||||
|
mini.maxLvl = -5;
|
||||||
|
Dungeon.level.occupyCell(mini);
|
||||||
|
GameScene.add( mini , 0f );
|
||||||
|
Actor.addDelayed( new Pushing( mini, pos, mini.pos ), -1 );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.defenseProc(enemy, damage);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void storeInBundle(Bundle bundle) {
|
public void storeInBundle(Bundle bundle) {
|
||||||
super.storeInBundle(bundle);
|
super.storeInBundle(bundle);
|
||||||
|
@ -270,6 +302,7 @@ public class SlimeKing extends Boss {
|
||||||
// BossHealthBar.assignBoss(this);
|
// BossHealthBar.assignBoss(this);
|
||||||
Music.INSTANCE.play(Assets.BGM_BOSSA, true);
|
Music.INSTANCE.play(Assets.BGM_BOSSA, true);
|
||||||
yell( Messages.get(this, "notice") );
|
yell( Messages.get(this, "notice") );
|
||||||
|
chainsUsed = false;
|
||||||
//summon();
|
//summon();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ import java.util.ArrayList;
|
||||||
public class BackGoKey extends TestItem {
|
public class BackGoKey extends TestItem {
|
||||||
{
|
{
|
||||||
image = ItemSpriteSheet.DG20;
|
image = ItemSpriteSheet.DG20;
|
||||||
defaultAction = AC_INTER_TP;
|
// defaultAction = Dungeon.hero.buff(ShopLimitLock.class) != null? AC_INTER_TP : null ;
|
||||||
changeDefAct = true;
|
changeDefAct = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,13 +29,13 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.HalomethaneFire;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.HalomethaneFire;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Blindness;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Blindness;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Burning;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.HalomethaneBurning;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Haste;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Haste;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Stylus;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Stylus;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfLiquidFlameX;
|
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfLiquidFlameX;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfFlameCursed;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfFlameCursed;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Blazing;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.HaloBlazing;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||||
|
@ -131,7 +131,7 @@ public class WandOfBlueFuck extends DamageWand {
|
||||||
processSoulMark(ch, chargesPerCast());
|
processSoulMark(ch, chargesPerCast());
|
||||||
ch.damage(damageRoll(), this);
|
ch.damage(damageRoll(), this);
|
||||||
if (ch.isAlive()) {
|
if (ch.isAlive()) {
|
||||||
Buff.affect(ch, Burning.class).reignite(ch);
|
Buff.affect(ch, HalomethaneBurning.class).reignite(ch);
|
||||||
switch (chargesPerCast()) {
|
switch (chargesPerCast()) {
|
||||||
case 1:
|
case 1:
|
||||||
break; //no effects
|
break; //no effects
|
||||||
|
@ -149,7 +149,7 @@ public class WandOfBlueFuck extends DamageWand {
|
||||||
@Override
|
@Override
|
||||||
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
||||||
//acts like blazing enchantment
|
//acts like blazing enchantment
|
||||||
new Blazing().proc( staff, attacker, defender, damage);
|
new HaloBlazing().proc( staff, attacker, defender, damage);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -5,7 +5,6 @@ import com.shatteredpixel.shatteredpixeldungeon.Challenges;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Bleeding;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Chill;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Chill;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||||
|
@ -14,6 +13,7 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.RainbowParticle;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.RainbowParticle;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.ShadowParticle;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.ShadowParticle;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Lucky;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
||||||
|
@ -128,8 +128,7 @@ public class WandOfGodIce extends DamageWand {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
||||||
//cripples enemy
|
new Lucky().proc( staff, attacker, defender, damage);
|
||||||
Buff.affect(defender, Bleeding.class).set( 4+staff.buffedLvl());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -6,6 +6,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.Blob;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.StormCloud;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.StormCloud;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Bleeding;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Cripple;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Cripple;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
|
||||||
|
@ -14,7 +15,6 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfMysticalEnergy;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.exotic.ScrollOfMysticalEnergy;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.spells.AquaBlast;
|
import com.shatteredpixel.shatteredpixeldungeon.items.spells.AquaBlast;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.spells.MagicalInfusion;
|
import com.shatteredpixel.shatteredpixeldungeon.items.spells.MagicalInfusion;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Lucky;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.ConeAOE;
|
import com.shatteredpixel.shatteredpixeldungeon.mechanics.ConeAOE;
|
||||||
|
@ -90,7 +90,8 @@ public class WandOfScale extends DamageWand {
|
||||||
@Override
|
@Override
|
||||||
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
||||||
//acts like blazing enchantment
|
//acts like blazing enchantment
|
||||||
new Lucky().proc( staff, attacker, defender, damage);
|
|
||||||
|
Buff.affect(defender, Bleeding.class).set( 4+staff.buffedLvl());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -85,7 +85,7 @@ public class NewsScene extends PixelScene {
|
||||||
float top = 18;
|
float top = 18;
|
||||||
|
|
||||||
displayingNoArticles = !News.articlesAvailable();
|
displayingNoArticles = !News.articlesAvailable();
|
||||||
if (displayingNoArticles || Messages.lang() != Languages.ENGLISH) {
|
if (displayingNoArticles || Messages.lang() != Languages.CHINESE) {
|
||||||
|
|
||||||
Component newsInfo = new NewsInfo();
|
Component newsInfo = new NewsInfo();
|
||||||
newsInfo.setRect(left, 20, fullWidth, 0);
|
newsInfo.setRect(left, 20, fullWidth, 0);
|
||||||
|
@ -186,7 +186,7 @@ public class NewsScene extends PixelScene {
|
||||||
|
|
||||||
String message = "";
|
String message = "";
|
||||||
|
|
||||||
if (Messages.lang() != Languages.ENGLISH){
|
if (Messages.lang() != Languages.CHINESE){
|
||||||
message += Messages.get(this, "english_warn");
|
message += Messages.get(this, "english_warn");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -270,7 +270,7 @@ public class NewsScene extends PixelScene {
|
||||||
icon(News.parseArticleIcon(article));
|
icon(News.parseArticleIcon(article));
|
||||||
long lastRead = SPDSettings.newsLastRead();
|
long lastRead = SPDSettings.newsLastRead();
|
||||||
if (lastRead > 0 && article.date.getTime() > lastRead) {
|
if (lastRead > 0 && article.date.getTime() > lastRead) {
|
||||||
textColor(Window.SHPX_COLOR);
|
textColor(Window.TITLE_COLOR);
|
||||||
}
|
}
|
||||||
|
|
||||||
Calendar cal = Calendar.getInstance();
|
Calendar cal = Calendar.getInstance();
|
||||||
|
|
|
@ -155,8 +155,8 @@ public class ThanksScene extends PixelScene {
|
||||||
"Tianscar",
|
"Tianscar",
|
||||||
new TianscarSprite(),
|
new TianscarSprite(),
|
||||||
"Main Dev:Carbonized Pixel Dungeon",
|
"Main Dev:Carbonized Pixel Dungeon",
|
||||||
"加入碳化总群",
|
"",
|
||||||
"https://jq.qq.com/?_wv=1027&k=6jAlnlNL");
|
"");
|
||||||
if (landscape()){
|
if (landscape()){
|
||||||
evan.setRect((Camera.main.width - colWidth)/2f-10, reddragon.bottom() + 8, colWidth+20, 0);
|
evan.setRect((Camera.main.width - colWidth)/2f-10, reddragon.bottom() + 8, colWidth+20, 0);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -363,8 +363,8 @@ public enum Icons {
|
||||||
return get( ROGUE );
|
return get( ROGUE );
|
||||||
case HUNTRESS:
|
case HUNTRESS:
|
||||||
return get( HUNTRESS );
|
return get( HUNTRESS );
|
||||||
case COMINGSOON:
|
// case COMINGSOON:
|
||||||
return get( HUNTRESS );
|
// return get( HUNTRESS );
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,6 +35,7 @@ import java.util.ArrayList;
|
||||||
public class vM0_6_7_X_Changes {
|
public class vM0_6_7_X_Changes {
|
||||||
|
|
||||||
public static void addAllChanges(ArrayList<ChangeInfo> changeInfos) {
|
public static void addAllChanges(ArrayList<ChangeInfo> changeInfos) {
|
||||||
|
add_v0_6_17_Changes(changeInfos);
|
||||||
add_v0_6_16_Changes(changeInfos);
|
add_v0_6_16_Changes(changeInfos);
|
||||||
add_v0_6_15_Changes(changeInfos);
|
add_v0_6_15_Changes(changeInfos);
|
||||||
add_v0_6_14_Changes(changeInfos);
|
add_v0_6_14_Changes(changeInfos);
|
||||||
|
@ -54,6 +55,30 @@ public class vM0_6_7_X_Changes {
|
||||||
add_v0_6_0_Changes(changeInfos);
|
add_v0_6_0_Changes(changeInfos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void add_v0_6_17_Changes( ArrayList<ChangeInfo> changeInfos ) {
|
||||||
|
ChangeInfo changes = new ChangeInfo("v0.6.0.0-Beta21-p2.875", true, "");
|
||||||
|
changes.hardlight(Window.TITLE_COLOR);
|
||||||
|
changeInfos.add(changes);
|
||||||
|
|
||||||
|
changes = new ChangeInfo("调整", false, null);
|
||||||
|
changes.hardlight(Window.GREEN_COLOR);
|
||||||
|
changeInfos.add(changes);
|
||||||
|
|
||||||
|
changes.addButton(new ChangeButton(new SlimeKingSprite(), ("史莱姆王"),
|
||||||
|
("追加三阶段,在近战攻击情况下生成蚀化史莱姆,但生成的蚀化史莱姆血量将/4" )));
|
||||||
|
|
||||||
|
changes = new ChangeInfo("改动", false, null);
|
||||||
|
changes.hardlight(Window.CYELLOW);
|
||||||
|
changeInfos.add(changes);
|
||||||
|
|
||||||
|
changes.addButton(new ChangeButton(new Image("sprites/spinner.png", 144, 0, 16, 16), (Messages.get(ChangesScene.class, "bugfixes")),
|
||||||
|
Messages.get(vM0_6_7_X_Changes.class, "bug_06X35")));
|
||||||
|
|
||||||
|
changes.addButton(new ChangeButton(Icons.get(Icons.NEWS), ("小道消息"),
|
||||||
|
("OM9已经在Discord宣传此版本,但英文翻译目前没有,因此国际化需要招人。当然,我们会在P3正式开始英化工作")));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public static void add_v0_6_16_Changes( ArrayList<ChangeInfo> changeInfos ) {
|
public static void add_v0_6_16_Changes( ArrayList<ChangeInfo> changeInfos ) {
|
||||||
ChangeInfo changes = new ChangeInfo("v0.6.0.0-Beta21-p2.85", true, "");
|
ChangeInfo changes = new ChangeInfo("v0.6.0.0-Beta21-p2.85", true, "");
|
||||||
changes.hardlight(Window.TITLE_COLOR);
|
changes.hardlight(Window.TITLE_COLOR);
|
||||||
|
|
|
@ -95,7 +95,7 @@ public class WndChallenges extends Window {
|
||||||
final int warning_mode =9;
|
final int warning_mode =9;
|
||||||
final int custom_mode = 13;
|
final int custom_mode = 13;
|
||||||
final int Test_Debug = 14;
|
final int Test_Debug = 14;
|
||||||
final int fixed_mode = 15;
|
|
||||||
boolean isCustom = false;
|
boolean isCustom = false;
|
||||||
float pos = 0;
|
float pos = 0;
|
||||||
|
|
||||||
|
@ -103,7 +103,7 @@ public class WndChallenges extends Window {
|
||||||
|
|
||||||
final String challenge = Challenges.NAME_IDS[i];
|
final String challenge = Challenges.NAME_IDS[i];
|
||||||
|
|
||||||
if(i==normal_mode || i==hard_mode || i==warning_mode|| i==custom_mode || i==fixed_mode || i==Test_Debug){
|
if(i==normal_mode || i==hard_mode || i==warning_mode|| i==custom_mode || i==Test_Debug){
|
||||||
RenderedTextBlock block = PixelScene.renderTextBlock(10);
|
RenderedTextBlock block = PixelScene.renderTextBlock(10);
|
||||||
switch (i){
|
switch (i){
|
||||||
case normal_mode:
|
case normal_mode:
|
||||||
|
@ -126,10 +126,6 @@ public class WndChallenges extends Window {
|
||||||
block.text(Messages.get(Challenges.class, "test"));
|
block.text(Messages.get(Challenges.class, "test"));
|
||||||
block.hardlight(0xFFFF00);
|
block.hardlight(0xFFFF00);
|
||||||
break;
|
break;
|
||||||
case fixed_mode:
|
|
||||||
block.text(Messages.get(Challenges.class, "fixed"));
|
|
||||||
block.hardlight(Window.CBLACK);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
block.setPos((WIDTH - block.width()) / 2,
|
block.setPos((WIDTH - block.width()) / 2,
|
||||||
pos + GAP *4);
|
pos + GAP *4);
|
||||||
|
|
|
@ -38,8 +38,6 @@ public class WndInfoMob extends WndTitledMessage {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private static class MobTitle extends Component {
|
private static class MobTitle extends Component {
|
||||||
|
|
||||||
private static final int GAP = 2;
|
private static final int GAP = 2;
|
||||||
|
|
|
@ -37,7 +37,6 @@ import com.shatteredpixel.shatteredpixeldungeon.messages.Messages;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.InterlevelScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.InterlevelScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.IntroScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.IntroScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.PixelScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.TitleScene;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.ActionIndicator;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.ActionIndicator;
|
||||||
|
@ -47,7 +46,6 @@ import com.shatteredpixel.shatteredpixeldungeon.ui.RedButton;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.RenderedTextBlock;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.StyledButton;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.StyledButton;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
import com.shatteredpixel.shatteredpixeldungeon.ui.Window;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.DungeonSeed;
|
|
||||||
import com.watabou.noosa.ColorBlock;
|
import com.watabou.noosa.ColorBlock;
|
||||||
import com.watabou.noosa.Game;
|
import com.watabou.noosa.Game;
|
||||||
import com.watabou.noosa.Image;
|
import com.watabou.noosa.Image;
|
||||||
|
@ -59,22 +57,6 @@ import java.util.ArrayList;
|
||||||
|
|
||||||
public class WndStartGame extends Window {
|
public class WndStartGame extends Window {
|
||||||
|
|
||||||
public static void showKeyInput(){
|
|
||||||
Game.runOnRenderThread(() -> ShatteredPixelDungeon.scene().add(new WndTextInput(Messages.get(WndTextInput.class,"enter_key"), Messages.get(WndGame.class,
|
|
||||||
"dialog_user"), SPDSettings.customSeed(), 10, false, Messages.get(WndTextInput.class,"yes"),
|
|
||||||
Messages.get(WndTextInput.class,"no")){
|
|
||||||
@Override
|
|
||||||
public void onSelect(boolean positive, String text) {
|
|
||||||
text = DungeonSeed.formatText(text);
|
|
||||||
if(positive) {
|
|
||||||
SPDSettings.customSeed(text);
|
|
||||||
ShatteredPixelDungeon.switchScene(TitleScene.class);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private static final int WIDTH = 120;
|
private static final int WIDTH = 120;
|
||||||
private static final int HEIGHT = 160;
|
private static final int HEIGHT = 160;
|
||||||
|
|
||||||
|
@ -95,26 +77,45 @@ public class WndStartGame extends Window {
|
||||||
spacers = new ArrayList<>();
|
spacers = new ArrayList<>();
|
||||||
if (DeviceCompat.isDebug() || Badges.isUnlocked(Badges.Badge.VICTORY)){
|
if (DeviceCompat.isDebug() || Badges.isUnlocked(Badges.Badge.VICTORY)){
|
||||||
|
|
||||||
StyledButton chkSaver = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
// StyledButton chkSaver = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
||||||
"mode"), 5){
|
// "mode"), 5){
|
||||||
|
// @Override
|
||||||
|
// protected void onClick() {
|
||||||
|
// super.onClick();
|
||||||
|
// ShatteredPixelDungeon.scene().addToFront(new WndDLC(SPDSettings.dlc(), true) {
|
||||||
|
// public void onBackPressed() {
|
||||||
|
// super.onBackPressed();
|
||||||
|
// icon(new ItemSprite(SPDSettings.dlc() > 0 ? ItemSpriteSheet.DG26 :
|
||||||
|
// ItemSpriteSheet.DG24));
|
||||||
|
// }
|
||||||
|
// } );
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// };
|
||||||
|
// chkSaver.active = false;
|
||||||
|
// chkSaver.alpha(0.5f);
|
||||||
|
// chkSaver.icon(new ItemSprite(ItemSpriteSheet.DG26, null));
|
||||||
|
// add( chkSaver );
|
||||||
|
// buttons.add(chkSaver);
|
||||||
|
|
||||||
|
StyledButton hardButton = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
||||||
|
"hard"), 5){
|
||||||
@Override
|
@Override
|
||||||
protected void onClick() {
|
protected void onClick() {
|
||||||
super.onClick();
|
ShatteredPixelDungeon.scene().addToFront(new WndChallenges(SPDSettings.challenges(), true) {
|
||||||
ShatteredPixelDungeon.scene().addToFront(new WndDLC(SPDSettings.dlc(), true) {
|
|
||||||
public void onBackPressed() {
|
public void onBackPressed() {
|
||||||
super.onBackPressed();
|
super.onBackPressed();
|
||||||
icon(new ItemSprite(SPDSettings.dlc() > 0 ? ItemSpriteSheet.DG26 :
|
icon(Icons.get(SPDSettings.challenges() > 0 ? Icons.CHALLENGE_ON : Icons.CHALLENGE_OFF));
|
||||||
ItemSpriteSheet.DG24));
|
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
chkSaver.active = false;
|
hardButton.leftJustify = true;
|
||||||
chkSaver.alpha(0.5f);
|
hardButton.active = false;
|
||||||
chkSaver.icon(new ItemSprite(ItemSpriteSheet.DG26, null));
|
hardButton.icon(new ItemSprite(ItemSpriteSheet.ARTIFACT_HOURGLASS, null));
|
||||||
add( chkSaver );
|
hardButton.alpha(0f);
|
||||||
buttons.add(chkSaver);
|
add(hardButton);
|
||||||
|
buttons.add(hardButton);
|
||||||
|
|
||||||
StyledButton nameButton = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
StyledButton nameButton = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
||||||
"seedtitle"), 5){
|
"seedtitle"), 5){
|
||||||
|
@ -122,7 +123,8 @@ public class WndStartGame extends Window {
|
||||||
public void onClick() {
|
public void onClick() {
|
||||||
if(Badges.isUnlocked(Badges.Badge.BOSS_SLAIN_1)){
|
if(Badges.isUnlocked(Badges.Badge.BOSS_SLAIN_1)){
|
||||||
Game.runOnRenderThread(() -> ShatteredPixelDungeon.scene().add(new WndTextInput(Messages.get(WndStartGame.class,"custom_name"),
|
Game.runOnRenderThread(() -> ShatteredPixelDungeon.scene().add(new WndTextInput(Messages.get(WndStartGame.class,"custom_name"),
|
||||||
Messages.get(WndStartGame.class, "custom_name_desc")+SPDSettings.heroName(),null, 20,
|
Messages.get(WndStartGame.class, "custom_name_desc")+SPDSettings.heroName(),
|
||||||
|
SPDSettings.heroName(), 20,
|
||||||
false, Messages.get(WndStartGame.class,"custom_name_set"),
|
false, Messages.get(WndStartGame.class,"custom_name_set"),
|
||||||
Messages.get(WndStartGame.class,"custom_name_clear")){
|
Messages.get(WndStartGame.class,"custom_name_clear")){
|
||||||
@Override
|
@Override
|
||||||
|
@ -152,25 +154,6 @@ public class WndStartGame extends Window {
|
||||||
buttons.add(nameButton);
|
buttons.add(nameButton);
|
||||||
add(nameButton);
|
add(nameButton);
|
||||||
|
|
||||||
StyledButton hardButton = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
|
||||||
"hard"), 5){
|
|
||||||
@Override
|
|
||||||
protected void onClick() {
|
|
||||||
ShatteredPixelDungeon.scene().addToFront(new WndChallenges(SPDSettings.challenges(), true) {
|
|
||||||
public void onBackPressed() {
|
|
||||||
super.onBackPressed();
|
|
||||||
icon(Icons.get(SPDSettings.challenges() > 0 ? Icons.CHALLENGE_ON : Icons.CHALLENGE_OFF));
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
}
|
|
||||||
};
|
|
||||||
hardButton.leftJustify = true;
|
|
||||||
hardButton.active = false;
|
|
||||||
hardButton.icon(new ItemSprite(ItemSpriteSheet.ARTIFACT_HOURGLASS, null));
|
|
||||||
hardButton.alpha(0.5f);
|
|
||||||
add(hardButton);
|
|
||||||
buttons.add(hardButton);
|
|
||||||
|
|
||||||
StyledButton csbutton = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
StyledButton csbutton = new StyledButton(Chrome.Type.RED_BUTTON, Messages.get(WndStartGame.class,
|
||||||
"news"), 5){
|
"news"), 5){
|
||||||
@Override
|
@Override
|
||||||
|
@ -186,7 +169,7 @@ public class WndStartGame extends Window {
|
||||||
csbutton.leftJustify = true;
|
csbutton.leftJustify = true;
|
||||||
csbutton.active = false;
|
csbutton.active = false;
|
||||||
csbutton.icon(new ItemSprite(ItemSpriteSheet.ARTIFACT_SPELLBOOK, null));
|
csbutton.icon(new ItemSprite(ItemSpriteSheet.ARTIFACT_SPELLBOOK, null));
|
||||||
csbutton.alpha(0.5f);
|
csbutton.alpha(0f);
|
||||||
add(csbutton);
|
add(csbutton);
|
||||||
buttons.add(csbutton);
|
buttons.add(csbutton);
|
||||||
}
|
}
|
||||||
|
@ -222,6 +205,7 @@ public class WndStartGame extends Window {
|
||||||
|
|
||||||
this.width = width;
|
this.width = width;
|
||||||
this.height = top+bg.marginBottom()-y-1;
|
this.height = top+bg.marginBottom()-y-1;
|
||||||
|
// this.height = top+bg.marginBottom()-y-1;
|
||||||
bg.size(this.width, this.height);
|
bg.size(this.width, this.height);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -413,7 +397,7 @@ public class WndStartGame extends Window {
|
||||||
private IconButton heroMisc;
|
private IconButton heroMisc;
|
||||||
private IconButton heroSubclass;
|
private IconButton heroSubclass;
|
||||||
private IconButton Telnetsc;
|
private IconButton Telnetsc;
|
||||||
|
private IconButton infoButton;
|
||||||
private RenderedTextBlock name;
|
private RenderedTextBlock name;
|
||||||
|
|
||||||
private static final int BTN_SIZE = 20;
|
private static final int BTN_SIZE = 20;
|
||||||
|
@ -501,6 +485,21 @@ public class WndStartGame extends Window {
|
||||||
name = PixelScene.renderTextBlock(12);
|
name = PixelScene.renderTextBlock(12);
|
||||||
add(name);
|
add(name);
|
||||||
|
|
||||||
|
infoButton = new IconButton(Icons.get(Icons.INFO)){
|
||||||
|
@Override
|
||||||
|
protected void onClick() {
|
||||||
|
super.onClick();
|
||||||
|
ShatteredPixelDungeon.scene().addToFront(new WndHeroInfo(GamesInProgress.selectedClass));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String hoverText() {
|
||||||
|
return Messages.titleCase(Messages.get(WndKeyBindings.class, "hero_info"));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
infoButton.setSize(21, 21);
|
||||||
|
add(infoButton);
|
||||||
|
|
||||||
visible = false;
|
visible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -508,16 +507,19 @@ public class WndStartGame extends Window {
|
||||||
protected void layout() {
|
protected void layout() {
|
||||||
super.layout();
|
super.layout();
|
||||||
|
|
||||||
avatar.x = x-10;
|
avatar.x = x-12;
|
||||||
avatar.y = y + (height - avatar.height() - name.height() - 4)/2f;
|
avatar.y = y + (height - avatar.height() - name.height() - 4)/2f;
|
||||||
PixelScene.align(avatar);
|
PixelScene.align(avatar);
|
||||||
|
|
||||||
name.setPos(
|
name.setPos(
|
||||||
x-10 + (avatar.width() - name.width())/2f,
|
x-2 + (avatar.width() - name.width())/2f,
|
||||||
avatar.y + avatar.height() + 3
|
avatar.y + avatar.height() + 3
|
||||||
);
|
);
|
||||||
PixelScene.align(name);
|
PixelScene.align(name);
|
||||||
|
|
||||||
|
infoButton.setPos(-4,
|
||||||
|
name.y-15 + name.height());
|
||||||
|
|
||||||
heroItem.setPos(0 + (name.width()/60f),
|
heroItem.setPos(0 + (name.width()/60f),
|
||||||
name.y + name.height() + 3);
|
name.y + name.height() + 3);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user