Skip to content
This repository has been archived by the owner on Jul 15, 2020. It is now read-only.

Commit

Permalink
ported over 0.6.5c changes
Browse files Browse the repository at this point in the history
  • Loading branch information
00-Evan committed May 19, 2018
1 parent a388c2d commit bc9a7cd
Show file tree
Hide file tree
Showing 52 changed files with 358 additions and 318 deletions.
4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ allprojects {
apply plugin: "eclipse"
apply plugin: "idea"

version = '0.6.5b'
version = '0.6.5c'
ext {
versionCode = 262
versionCode = 264
appName = 'shattered-pixel-dungeon'
appTitle = 'Shattered Pixel Dungeon'
appId = 'com.shatteredpixel.shatteredpixeldungeon'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -371,7 +371,7 @@ public static void switchLevel( final Level level, int pos ) {

Actor respawner = level.respawner();
if (respawner != null) {
Actor.add( level.respawner() );
Actor.addDelayed( respawner, level.respawnTime() );
}

hero.pos = pos;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -874,7 +874,6 @@ private boolean actAttack( HeroAction.Attack action ) {

if (enemy.isAlive() && canAttack( enemy ) && !isCharmedBy( enemy )) {

spend( attackDelay() );
sprite.attack( enemy.pos );

return false;
Expand Down Expand Up @@ -1440,6 +1439,7 @@ public void onAttackComplete() {
}

Invisibility.dispel();
spend( attackDelay() );

curAction = null;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import com.shatteredpixel.shatteredpixeldungeon.Statistics;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Burning;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Vertigo;
import com.shatteredpixel.shatteredpixeldungeon.items.food.MysteryMeat;
import com.shatteredpixel.shatteredpixeldungeon.levels.RegularLevel;
import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.Room;
Expand Down Expand Up @@ -129,6 +130,7 @@ protected boolean getFurther( int target ) {

{
immunities.add( Burning.class );
immunities.add( Vertigo.class );
}

private class Hunting extends Mob.Hunting{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,7 @@ public static void spawn( CityLevel level ) {
} while (
npc.pos == -1 ||
level.heaps.get( npc.pos ) != null ||
level.traps.get( npc.pos) != null ||
level.findMob( npc.pos ) != null ||
//The imp doesn't move, so he cannot obstruct a passageway
!(level.passable[npc.pos + PathFinder.CIRCLE4[0]] && level.passable[npc.pos + PathFinder.CIRCLE4[2]]) ||
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,6 @@ private static ArrayList<Item> generateRareDrop(){
return items;
}

//caps at a 50% bonus
private static float dropProgression( Char target, int tries ){
return tries * (float)Math.pow(1.2f, getBonus(target, Wealth.class) -1 );
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ public void charge( Char owner, float chargeScaleFactor ){
protected void processSoulMark(Char target, int chargesUsed){
if (target != Dungeon.hero &&
Dungeon.hero.subClass == HeroSubClass.WARLOCK &&
Random.Float() < .09f + (level()*chargesUsed*0.06f)){
Random.Float() > Math.pow(0.9f, (level()*chargesUsed)+1)){
SoulMark.prolong(target, SoulMark.class, SoulMark.DURATION + level());
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,20 +65,21 @@ public int max(int lvl){

@Override
protected void onZap(Ballistica beam) {
Char ch = Actor.findChar(beam.collisionPos);
if (ch != null){
processSoulMark(ch, chargesPerCast());
affectTarget(ch);
}
affectMap(beam);

if (Dungeon.level.viewDistance < 6 ){
if (Dungeon.isChallenged(Challenges.DARKNESS)){
Buff.prolong( curUser, Light.class, 2f + level());
} else {
Buff.prolong( curUser, Light.class, 10f+level()*5);
}
}

Char ch = Actor.findChar(beam.collisionPos);
if (ch != null){
processSoulMark(ch, chargesPerCast());
affectTarget(ch);
}
}

private void affectTarget(Char ch){
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public class Scimitar extends MeleeWeapon {
@Override
public int max(int lvl) {
return 4*(tier+1) + //16 base, down from 20
lvl*(tier+1); //+1 per level, down from +2
lvl*(tier+1); //scaling unchanged
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ protected float durabilityPerUse(){
float usage = MAX_DURABILITY/10f;

if (Dungeon.hero.heroClass == HeroClass.HUNTRESS) usage /= 1.5f;
else if (holster) usage /= MagicalHolster.HOLSTER_DURABILITY_FACTOR;
if (holster) usage /= MagicalHolster.HOLSTER_DURABILITY_FACTOR;

usage /= RingOfSharpshooting.durabilityMultiplier( Dungeon.hero );

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,12 @@ public int proc(Char attacker, Char defender, int damage) {
defender.damage(Random.NormalIntRange(8, 12), this);

CharSprite s = defender.sprite;
ArrayList<Lightning.Arc> arcs = new ArrayList<>();
arcs.add(new Lightning.Arc(new PointF(s.x, s.y + s.height/2), new PointF(s.x + s.width, s.y + s.height/2)));
arcs.add(new Lightning.Arc(new PointF(s.x + s.width/2, s.y), new PointF(s.x + s.width/2, s.y + s.height)));
defender.sprite.parent.add( new Lightning( arcs, null ) );
if (s != null && s.parent != null) {
ArrayList<Lightning.Arc> arcs = new ArrayList<>();
arcs.add(new Lightning.Arc(new PointF(s.x, s.y + s.height / 2), new PointF(s.x + s.width, s.y + s.height / 2)));
arcs.add(new Lightning.Arc(new PointF(s.x + s.width / 2, s.y), new PointF(s.x + s.width / 2, s.y + s.height)));
s.parent.add(new Lightning(arcs, null));
}

return super.proc(attacker, defender, damage);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -489,18 +489,22 @@ protected boolean act() {
}
}
}
if (Statistics.amuletObtained){
spend(TIME_TO_RESPAWN/2f);
} else if (Dungeon.level.feeling == Feeling.DARK){
spend(2*TIME_TO_RESPAWN/3f);
} else {
spend(TIME_TO_RESPAWN);
}
spend(respawnTime());
return true;
}
};
}

public float respawnTime(){
if (Statistics.amuletObtained){
return TIME_TO_RESPAWN/2f;
} else if (Dungeon.level.feeling == Feeling.DARK){
return 2*TIME_TO_RESPAWN/3f;
} else {
return TIME_TO_RESPAWN;
}
}

public int randomRespawnCell() {
int cell;
do {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -273,10 +273,15 @@ public int randomRespawnCell() {
@Override
public int randomDestination() {

int count = 0;
int cell = -1;

while (true) {

if (++count > 30) {
return -1;
}

Room room = Random.element( rooms );
if (room == null) {
continue;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,12 @@ public enum Languages {
KOREAN("한국어", "ko", Status.UNREVIEWED, new String[]{"Flameblast12"}, new String[]{"Korean2017", "WondarRabb1t", "ddojin0115", "eeeei", "hancyel", "linterpreteur", "lsiebnie" }),
SPANISH("español", "es", Status.UNREVIEWED, new String[]{"Kiroto", "Kohru", "grayscales"}, new String[]{"Alesxanderk", "CorvosUtopy", "Dewstend", "Dyrran", "Fervoreking", "Illyatwo2", "JPCHZ", "airman12", "alfongad", "benzarr410", "ctrijueque", "dhg121", "javifs", "jonismack1", "tres.14159"}),
POLISH("polski", "pl", Status.UNREVIEWED, new String[]{"Deksippos", "kuadziw", "szymex73"}, new String[]{"Chasseur", "Darden", "MJedi", "MrKukurykpl", "Peperos", "Scharnvirk", "Shmilly", "dusakus", "michaub", "ozziezombie", "szczoteczka22"}),
PORTUGUESE("português", "pt", Status.UNREVIEWED, new String[]{"TDF2001", "matheus208"}, new String[]{"Bigode935", "Chacal.Ex", "ChainedFreaK", "JST", "MadHorus", "Tio P", "ancientorange", "danypr23", "denis.gnl", "ismael.henriques12", "owenreilly", "rafazago", "try31"}),
ITALIAN("italiano", "it", Status.UNREVIEWED, new String[]{"bizzolino", "funnydwarf"}, new String[]{"4est", "DaniMare", "Danzl", "andrearubbino00", "nessunluogo", "righi.a", "umby000"}),
ESPERANTO("esperanto", "eo", Status.UNREVIEWED, new String[]{"Verdulo"}, new String[]{"Raizin"}),

GERMAN("deutsch", "de", Status.INCOMPLETE, new String[]{"Dallukas", "KrystalCroft", "Wuzzy", "Zap0", "bernhardreiter", "davedude" }, new String[]{"DarkPixel", "ErichME", "LenzB", "Sarius", "Sorpl3x", "ThunfischGott", "Topicranger", "oragothen"}),
FRENCH("français", "fr", Status.INCOMPLETE, new String[]{"Emether", "canc42", "kultissim", "minikrob"}, new String[]{"Alsydis", "Basttee", "Dekadisk", "Draal", "Neopolitan", "SpeagleZNT", "antoine9298", "go11um", "linterpreteur", "solthaar", "vavavoum"}),
PORTUGUESE("português", "pt", Status.INCOMPLETE, new String[]{"TDF2001", "matheus208"}, new String[]{"ChainedFreaK", "JST", "MadHorus", "Tio_P_", "ancientorange", "danypr23", "ismael.henriques12", "owenreilly", "try31"}),
FINNISH("suomi", "fi", Status.INCOMPLETE, new String[]{"TenguTheKnight"}, null ),
TURKISH("türkçe", "tr", Status.INCOMPLETE, new String[]{"LokiofMillenium", "emrebnk"}, new String[]{"AcuriousPotato", "alpekin98", "denizakalin", "melezorus34"}),
HUNGARIAN("magyar", "hu", Status.INCOMPLETE, new String[]{"dorheim"}, new String[]{"Navetelen", "clarovani", "dhialub", "nanometer", "nardomaa"}),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,7 @@ actors.mobs.goo.pumpup=Goo is pumping itself up!
actors.mobs.goo.enraged=enraged
actors.mobs.goo.gluuurp=GLUUUURP!
actors.mobs.goo.rankings_desc=Absorbed by the Goo
actors.mobs.goo.desc=Little is known about The Goo. It's quite possible that it is not even a creature, but rather a conglomerate of vile substances from the sewers that somehow gained basic intelligence. Regardless, dark magic is certainly what has allowed Goo to exist.\n\nIts gelatinous nature has let it absorb lots of dark energy, you feel a chill just from being near. If goo is able to attack with this energy you won't live for long.
actors.mobs.goo.desc=Little is known about The Goo. It's quite possible that it is not even a creature, but rather a conglomerate of vile substances from the sewers that somehow gained basic intelligence. Regardless, dark magic is certainly what has allowed Goo to exist.\n\nIts gelatinous nature has let it absorb lots of dark energy, you feel a chill just from being near. If Goo is able to attack with this energy you won't live for long.

actors.mobs.greatcrab.name=great crab
actors.mobs.greatcrab.noticed=The crab notices the attack and blocks with its massive claw.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ actors.buffs.fireimbue.name=Imbuït amb el Foc
actors.buffs.fireimbue.desc=Estàs imbuït amb el poder del foc!\n\nTots els atacs físics tindran una probabilitat de cremar als enemics. A més a més, ara ets immune als efectes del foc.\n\nTorns de foc imbuït restants: %s.

actors.buffs.frost.name=Congelat
actors.buffs.frost.freezes=L'enemic "%s" es congela!
actors.buffs.frost.freezes=L'ítem "%s" es congela!
actors.buffs.frost.desc=No confondre-ho amb congelar-se completament, aquest tipus més benigne de congelació atrapa a l'objectiu en gel.\n\nLa congelació actua similar a la paràlisi, fent que l'objectiu no pugui actuar. A diferència de la paràlisi, la congelació es cancel·la immediatament si es danya a l'objectiu, ja que el gel es destruirà.\n\nTorns de congelació restants: %s.

actors.buffs.fury.name=Furiós
Expand Down
Loading

0 comments on commit bc9a7cd

Please sign in to comment.