diff --git a/AndorsTrail/res/drawable/map_indoor_1.png b/AndorsTrail/res/drawable/map_indoor_1.png index f453d44a8..770ba92a4 100644 Binary files a/AndorsTrail/res/drawable/map_indoor_1.png and b/AndorsTrail/res/drawable/map_indoor_1.png differ diff --git a/AndorsTrail/res/raw/actorconditions_v070.json b/AndorsTrail/res/raw/actorconditions_v070.json index 0003b6d7e..064afb81d 100644 --- a/AndorsTrail/res/raw/actorconditions_v070.json +++ b/AndorsTrail/res/raw/actorconditions_v070.json @@ -2,7 +2,7 @@ { "id":"slime", "iconID":"actorconditions_1:56", - "name":"Corrosive Slime", + "name":"Corrosive slime", "category":"physical", "isStacking":1, "roundEffect":{ @@ -21,7 +21,7 @@ "iconID":"actorconditions_1:44", "name":"Heightened senses", "category":"physical", - "isPositive":1, + "isPositive":1, "abilityEffect":{ "increaseAttackChance":5, "increaseAttackDamage":{ diff --git a/AndorsTrail/res/raw/conversationlist_blackwater_harlenn.json b/AndorsTrail/res/raw/conversationlist_blackwater_harlenn.json index 3344bd1b6..6d4f3e4d1 100644 --- a/AndorsTrail/res/raw/conversationlist_blackwater_harlenn.json +++ b/AndorsTrail/res/raw/conversationlist_blackwater_harlenn.json @@ -179,7 +179,7 @@ }, { "id":"harlenn_6", - "message":"Most of the time, we spend in the settlement or up here on the mountain.", + "message":"We spend most of our time in the settlement up here on the mountain.", "replies":[ { "text":"N", @@ -1139,4 +1139,4 @@ } ] } -] \ No newline at end of file +] diff --git a/AndorsTrail/res/raw/conversationlist_buceth.json b/AndorsTrail/res/raw/conversationlist_buceth.json index a99eef648..4b541ce55 100644 --- a/AndorsTrail/res/raw/conversationlist_buceth.json +++ b/AndorsTrail/res/raw/conversationlist_buceth.json @@ -373,7 +373,7 @@ }, { "id":"buceth_17", - "message":"A while later, the men return. They explain that some of the methods that are used in the village have now been prohibited across the whole land.", + "message":"A while later, the men return. They explain that some of the ways things are done in the village have now been prohibited across the whole land.", "replies":[ { "text":"N", @@ -383,7 +383,7 @@ }, { "id":"buceth_18", - "message":"Without going into specifics, let's say that these are methods that have been used for past generations in your village.", + "message":"Without going into specifics, let's say that these are ways that have been used for past generations in your village.", "replies":[ { "text":"N", @@ -393,7 +393,7 @@ }, { "id":"buceth_19", - "message":"Changing the way things are done without these methods will require quite an effort. A lot of people in the village are upset because of this news from the men.", + "message":"Changing the way things are done will require quite an effort for people to adjust. A lot of people in the village are upset because of this news from the men.", "replies":[ { "text":"N", @@ -403,7 +403,7 @@ }, { "id":"buceth_20", - "message":"Now, tell me. Would you in secret continue using the old methods your past generations have used, or would you instead convert to the way that the men are advocating?", + "message":"Now, tell me. Would you in secret continue using the old ways your past generations have used, or would you instead convert to the ways that the men are advocating?", "replies":[ { "text":"I would continue using the old ways in secret.", @@ -414,7 +414,7 @@ "nextPhraseID":"buceth_21_2" }, { - "text":"I would only use the methods that are allowed.", + "text":"I would only use the ways that are allowed.", "nextPhraseID":"buceth_22" }, { diff --git a/AndorsTrail/res/raw/conversationlist_foamingflask_guards.json b/AndorsTrail/res/raw/conversationlist_foamingflask_guards.json index f9f1ed040..19cc51da9 100644 --- a/AndorsTrail/res/raw/conversationlist_foamingflask_guards.json +++ b/AndorsTrail/res/raw/conversationlist_foamingflask_guards.json @@ -24,7 +24,7 @@ "message":"We will stand tall. Feygard, city of peace!", "replies":[ { - "text":"I should better leave", + "text":"I had better be going", "nextPhraseID":"X" }, { diff --git a/AndorsTrail/res/raw/conversationlist_kaori.json b/AndorsTrail/res/raw/conversationlist_kaori.json index a3a9c984c..41349dcd3 100644 --- a/AndorsTrail/res/raw/conversationlist_kaori.json +++ b/AndorsTrail/res/raw/conversationlist_kaori.json @@ -71,7 +71,7 @@ }, { "id":"kaori_3", - "message":"He did? I guess you are not all that bad as I first thought.", + "message":"He did? I guess you are not as bad as I first thought.", "replies":[ { "text":"N", @@ -147,7 +147,7 @@ }, { "id":"kaori_11", - "message":"Up until recently, we have been using special potions made of ground bones as healing. These potions are very potent healing potions, and were used for several purposes.", + "message":"Up until recently, we have been using special potions made of ground bones for healing. These were very potent healing potions, and were used for several purposes.", "replies":[ { "text":"N", @@ -178,7 +178,7 @@ "nextPhraseID":"kaori_15" }, { - "text":"I already have some of those potions with me that you can have", + "text":"I already have some of those potions with me that you can have.", "nextPhraseID":"kaori_20", "requires":[ { diff --git a/AndorsTrail/res/raw/conversationlist_mikhail.json b/AndorsTrail/res/raw/conversationlist_mikhail.json index 4c9cca20a..1359ac8fe 100644 --- a/AndorsTrail/res/raw/conversationlist_mikhail.json +++ b/AndorsTrail/res/raw/conversationlist_mikhail.json @@ -321,7 +321,7 @@ "replies":[ { "text":"N", - "nextPhraseID":"mikhail_rats_start3" + "nextPhraseID":"mikhail_rats_start2a" } ] }, diff --git a/AndorsTrail/res/raw/conversationlist_mikhail_foodpoison.json b/AndorsTrail/res/raw/conversationlist_mikhail_foodpoison.json new file mode 100644 index 000000000..abef22acb --- /dev/null +++ b/AndorsTrail/res/raw/conversationlist_mikhail_foodpoison.json @@ -0,0 +1,32 @@ +[ + { + "id":"mikhail_rats_start2a", + "message":"Another way to regain your strength is to eat some food. You can buy some for yourself from Mara at the town hall. But watch out - I hear that raw meat can sometimes give you food poisoning.", + "replies":[ + { + "text":"N", + "nextPhraseID":"mikhail_rats_start2b" + } + ] + }, + { + "id":"mikhail_rats_start2b", + "message":"If that happens, perhaps the town priest can do something to help you. Otherwise, just rest until you feel better.", + "replies":[ + { + "text":"N", + "nextPhraseID":"mikhail_rats_start2c" + } + ] + }, + { + "id":"mikhail_rats_start2c", + "message":"Me, I can't really afford the meat, so I just stick to my bread!", + "replies":[ + { + "text":"N", + "nextPhraseID":"mikhail_rats_start3" + } + ] + } +] \ No newline at end of file diff --git a/AndorsTrail/res/raw/conversationlist_toszylae.json b/AndorsTrail/res/raw/conversationlist_toszylae.json index ae933ddbc..e616f913e 100644 --- a/AndorsTrail/res/raw/conversationlist_toszylae.json +++ b/AndorsTrail/res/raw/conversationlist_toszylae.json @@ -154,7 +154,7 @@ }, { "id":"sign_toszylae_1", - "message":"(Among the remains of the lich 'Toszylae' that you defeated, you find a strange looking helmet.)", + "message":"(On the shrine that was behind the lich 'Toszylae' that you defeated, you find a strange looking helmet.)", "rewards":[ { "rewardType":"questProgress", @@ -170,6 +170,6 @@ }, { "id":"sign_toszylae_2", - "message":"(You see the remains of the lich 'Toszylae' that you defeated.)" + "message":"(You see an empty shrine where you found the strange looking helmet.)" } ] \ No newline at end of file diff --git a/AndorsTrail/res/raw/conversationlist_toszylae_fix.json b/AndorsTrail/res/raw/conversationlist_toszylae_fix.json new file mode 100644 index 000000000..4849487f5 --- /dev/null +++ b/AndorsTrail/res/raw/conversationlist_toszylae_fix.json @@ -0,0 +1,36 @@ +[ + { + "id":"trigger_toszylae_1", + "replies":[ + { + "nextPhraseID":"X", + "requires":[ + { + "requireType":"killedMonster", + "requireID":"toszylae", + "value":1, + "negate":true + } + ] + }, + { + "nextPhraseID":"X", + "requires":[ + { + "requireType":"questProgress", + "requireID":"darkprotector", + "value":10 + } + ] + }, + { + "text":"N", + "nextPhraseID":"trigger_toszylae_2" + } + ] + }, + { + "id":"trigger_toszylae_2", + "message":"(You notice a strange helmet on the shrine. It looks like it might be valuable. Perhaps you should take it.)" + } +] \ No newline at end of file diff --git a/AndorsTrail/res/raw/conversationlist_ulirfendor.json b/AndorsTrail/res/raw/conversationlist_ulirfendor.json index 50749c237..41d790c5b 100644 --- a/AndorsTrail/res/raw/conversationlist_ulirfendor.json +++ b/AndorsTrail/res/raw/conversationlist_ulirfendor.json @@ -819,7 +819,7 @@ }, { "id":"ulirfendor_infected_14", - "message":"The ritual proceeds with the carrier being eaten alive by the rotworms and their eggs. Also, the process can have .. shall we say .. unusual effects on the carrier.", + "message":"The ritual proceeds with the carrier being eaten from the inside by the rotworms and their eggs, in effect, giving birth to the creatures within. Also, the process can have .. shall we say .. unusual effects on the carrier before that.", "replies":[ { "text":"N", @@ -833,7 +833,7 @@ "replies":[ { "text":"N", - "nextPhraseID":"ulirfendor_infected_16" + "nextPhraseID":"ulirfendor_infected_17" } ], "rewards":[ diff --git a/AndorsTrail/res/raw/itemlist_v070.json b/AndorsTrail/res/raw/itemlist_v070.json index 49c35d7e3..0b7eed2d4 100644 --- a/AndorsTrail/res/raw/itemlist_v070.json +++ b/AndorsTrail/res/raw/itemlist_v070.json @@ -1712,6 +1712,7 @@ "id":"gem_fire", "iconID":"items_misc_5:26", "name":"Gem of warmth", + "displaytype":"extraordinary", "hasManualPrice":1, "baseMarketCost":25, "category":"gem" diff --git a/AndorsTrail/res/raw/monsterlist_v070_lodar5cave.json b/AndorsTrail/res/raw/monsterlist_v070_lodar5cave.json index 43e6495ce..2fd9403c9 100644 --- a/AndorsTrail/res/raw/monsterlist_v070_lodar5cave.json +++ b/AndorsTrail/res/raw/monsterlist_v070_lodar5cave.json @@ -1,7 +1,7 @@ [ { "id":"caveburr1", - "name":"Young posionous cave burrower", + "name":"Young poisonous cave burrower", "iconID":"monsters_rltiles2:161", "maxHP":57, "moveCost":5, diff --git a/AndorsTrail/res/raw/questlist_v0611_2.json b/AndorsTrail/res/raw/questlist_v0611_2.json index 9f10b10bf..783b7cf7d 100644 --- a/AndorsTrail/res/raw/questlist_v0611_2.json +++ b/AndorsTrail/res/raw/questlist_v0611_2.json @@ -186,7 +186,7 @@ }, { "id":"sisterfight", - "name":"A difference in opinion", + "name":"A difference of opinion", "showInLog":1, "stages":[ { @@ -203,7 +203,7 @@ }, { "progress":30, - "logText":"One matter that the sisters disagree on currently is the color of a certain potion that the town potion-maker Hjaldar used to make. Elwyl says that the potion of accuracy focus that Hjaldar used to make was a blue potion, but Elwel insists that the potion had a green substance." + "logText":"One matter that the sisters disagree on currently is the color of a certain potion that the town potion-maker Hjaldar used to make. Elwyl says that the potion of accuracy focus that Hjaldar used to make was a blue potion, but Elwel insists that the potion was a green substance." }, { "progress":31, diff --git a/AndorsTrail/res/values/authors.xml b/AndorsTrail/res/values/authors.xml index b736163ba..c3748aeee 100644 --- a/AndorsTrail/res/values/authors.xml +++ b/AndorsTrail/res/values/authors.xml @@ -19,6 +19,7 @@ Additional programming by Lucas Delvallet<br /> Additional programming by Florian Doublet<br /> Additional programming by M.H. Alkotob<br /> + Additional programming by Olivier Dragon<br /> Additional graphics by Karvis<br /> Russian translation by Dreamer..., e.solodookhin, shell.andor, konstmih, istasman, Aleksey Kabanov, Alexander Zubok, Paul Sulemenkov and dromoz<br /> Italian translation by k6blue, liogiu, Joker and Andrea Luciano Damico<br /> @@ -39,6 +40,7 @@ Additional ideas by Nicholas Franks (Taledus)<br /> Additional content and ideas by Tom Jobes<br /> Additional content and ideas by Stan "Meirerion"<br /> + Additional content by Richard Jackson (rijackson741)<br /> <br /> <a href="http://telles0808.deviantart.com/art/RPG-Maker-VX-RTP-Tileset-159218223">Map tilesets graphics by telles0808</a><br /> <a href="http://ails.deviantart.com/art/420-Pixel-Art-Icons-for-RPG-129892453">Item tilesets graphics by Ails</a><br /> diff --git a/AndorsTrail/res/values/loadresources.xml b/AndorsTrail/res/values/loadresources.xml index 50d26abad..6997fbdd2 100644 --- a/AndorsTrail/res/values/loadresources.xml +++ b/AndorsTrail/res/values/loadresources.xml @@ -243,8 +243,9 @@ @raw/conversationlist_pathway_fallhaven @raw/conversationlist_halvor_surprise @raw/conversationlist_stoutford - + + @raw/conversationlist_toszylae_fix + @raw/monsterlist_crossglen_animals diff --git a/AndorsTrail/res/xml/waytobrimhavencave3a.tmx b/AndorsTrail/res/xml/waytobrimhavencave3a.tmx index 15d2ebd00..2a7eff344 100644 --- a/AndorsTrail/res/xml/waytobrimhavencave3a.tmx +++ b/AndorsTrail/res/xml/waytobrimhavencave3a.tmx @@ -1,238 +1,285 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - eJy1VMENgzAMRDwZoCt1z6yQMEJKF6BRu0A7RoOaE9bJJoG2j5OF4S44ti/0XRcKLoQpIyr5QJygYOHeMmYR7xlJyXviRNIaC/eV8RTxNHzAeU+cRJqT4LYAejKX6JxWLSdqajlH48VSg6/UFA099BTcVGoIG/+GmoPyDj31xtxs3XcwNJe+XY25se7bV2p4GHOz1ffaneydo3/paXe4F9oe/1ILcAf2pQVO0XYib/HY39jr0CvNC9kTx371tvOwAjnsrtybWYlR6MHbpB5y2F2eaY7Sr/Ct1Ptm/o5wtRnQetkCjYfnNwwJ0eI= + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eJy1VMENgzAMRDwZoCt1z6yQMEJKF6BRu0A7RoOaE9bJJoG2j5OF4S44ti/0XRcKLoQpIyr5QJygYOHeMmYR7xlJyXviRNIaC/eV8RTxNHzAeU+cRJqT4LYAejKX6JxWLSdqajlH48VSg6/UFA099BTcVGoIG/+GmoPyDj31xtxs3XcwNJe+XY25se7bV2p4GHOz1ffaneydo3/paXe4F9oe/1ILcAf2pQVO0XYib/HY39jr0CvNC9kTx371tvOwAjnsrtybWYlR6MHbpB5y2F2eaY7Sr/Ct1Ptm/o5wtRnQetkCjYfnNwwJ0eI= + - - eJy9VEsKwjAQDdGFdVFaC0LF83hP6Q28gngI3Xahpe5cqDvzkCGTdCZUQR+U5jNvZvJmEmP+g9tiuLayn/tZM07vxp37qkr2D9RKDHDB2UzffAmt27/kIQfoBJ+wPeQ+JuZb929s+OeYuLiPwphnEfrsI7uYpwHnmJXGZOXwTK2iDyDldrT+PAAf75fhHCCd5wm9OaA9P3PDxlgnf1qP1NbXHLlI52vZPnBynLPTemd9bOjU27Q+MSju1fHuheeS5lJeqfy0/dReJugi1SWexzzKVesx1EWKRTnVNrxjiDemXxvFhvfP2L7XfH/L/wdIP97fks6Adqdi+/hd0t4+6a1E76J28EF3Nbbjfchjoe+03KXepbo07A7+qlYv6M5MzA== + + + eJy9VEsKwjAQDdGFdVFaC0LF83hPyQ28gngI3XYhpe5cWHfmIUMm6Uypgj4ozWfezOTNJMb8B/fVcG1jP/ezZZzOj1v/VZXsH6iVGOCCs5u/+RIav9/nMQdoBZ+wPeUhJuZ7/3c2/nPMfNy+MOZZxD67xC7lacA5FqUxWTk8U6PoA0i5nW04D8DHx3U8B0jn5YjeHNCen9mxMdbJn9YjtQ01Ry7S+Rq2D1w85+q1PtgQGzp1dlyfFBT35nmPInBJcymvsfy0/bG9TNBFqks6T3mUq9ZjqIsUi3KqbXzHEG9KvzrFhvfP1L7XfH/L/wdIP97fks6AdqdS+/Rd0t4+6a1E76J28EF3NbXjfchjoe+03KXepbo4dgd/VasXRN1M3A== + - - eJxjYKAdOCyGXYxZmDQ9MHEQNmNB1X8Jh3pkPbjk8OklRQ8+ewiZBwPIfiLHbejmESOOD1zG46fFTKSbh81PC4kwB90NsHAixk+XccQVCDwXgJgFokGAmPDGZidM33cBVJoYQE684APkxMsoIA5gS0u4ACxeCZVNpJqHDNDLUErNQ3crPrej2z2Y0x0AeNEqEQ== + + + eJxjYBgF+MBLvoF2wSgYBaNgFIwCcgAAk10A+A== + - - eJzbKMbAsHEEYxCA0bgAueZQ6i5qmIPNb+ToJVWOHD+RG97INC7zCJlLTLzjMg+XWkJ+phQQG86EzMBnFqnupCRdoruX0jRPab6h1Dx84TLQ5hGKN/S4IEY9sYCW8YSOAdid9N4= + + + eJxjYKAdOCyGXYxZmDQ9MHEQNmNB1X8Jh3pkPbjk8OklRQ8+ewiZBwPIfiLHbejmESOOD1zG46fFTKSbh81PC4kwB90NsHAixk+XccQVCDwXgJgFokGAmPDGZidM33cBVJoYQE684APkxMsoIA5gS0u4ACxeCZVNpJqHDNDLUErNQ3crPrej2z2Y0x0AeNEqEQ== + + + + + eJzbKMbAsHEEYxCA0bgAueZQ6i5qmIPNb+ToJVWOHD+RG97INC7zCJlLTLzjMg+XWkJ+phQQG86EzMBnFqnupCRdoruX0jRPab6h1Dx84TLQ5hGKN/S4IEY9sYCW8YSOAdid9N4= + - + - + + + + + + - + - + - + - + - + - + - + - + - + - + - \ No newline at end of file + + + + + + + + diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/activity/fragment/HeroinfoActivity_Inventory.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/activity/fragment/HeroinfoActivity_Inventory.java index d47d8040c..498e6279f 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/activity/fragment/HeroinfoActivity_Inventory.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/activity/fragment/HeroinfoActivity_Inventory.java @@ -318,7 +318,7 @@ public final class HeroinfoActivity_Inventory extends Fragment { private ItemType getSelectedItemType(AdapterContextMenuInfo info) { - return inventoryListAdapter.getItem(info.position).itemType; + return getSelectedItemType(info.position); } @Override public boolean onContextItemSelected(MenuItem item) { diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/CombatController.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/CombatController.java index 0ece356f8..ac3674114 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/CombatController.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/CombatController.java @@ -55,10 +55,9 @@ public final class CombatController implements VisualEffectCompletedCallback { public void exitCombat(boolean pickupLootBags) { setCombatSelection(null, null); world.model.uiSelections.isInCombat = false; - combatTurnListeners.onCombatEnded(); world.model.uiSelections.selectedPosition = null; world.model.uiSelections.selectedMonster = null; - controllers.gameRoundController.resetRoundTimers(); + endOfCombatRound(); if (pickupLootBags && totalExpThisFight > 0) { controllers.itemController.lootMonsterBags(killedMonsterBags, totalExpThisFight); } else { @@ -557,6 +556,14 @@ public final class CombatController implements VisualEffectCompletedCallback { } } + public void endOfCombatRound() { + combatTurnListeners.onCombatEnded(); + world.model.worldData.tickWorldTime(); + controllers.gameRoundController.resetRoundTimers(); + controllers.actorStatsController.applyConditionsToPlayer(world.model.player, false); + controllers.actorStatsController.applyConditionsToMonsters(world.model.currentMap, true); + } + public void monsterSteppedOnPlayer(Monster m) { setCombatSelection(m); enterCombat(BeginTurnAs.monsters); diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/model/actor/Player.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/model/actor/Player.java index 333da45d8..fb7443649 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/model/actor/Player.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/model/actor/Player.java @@ -171,10 +171,8 @@ public final class Player extends Actor { return v; } private static final int EXP_base = 55; - private static final int EXP_D = 400; - private static final int EXP_powbase = 2; private static int getRequiredExperienceForNextLevel(int currentLevel) { - return (int) (EXP_base * Math.pow(currentLevel, EXP_powbase + currentLevel/EXP_D)); + return (int) (EXP_base * currentLevel * currentLevel); } public boolean canLevelup() { diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/SkillListAdapter.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/SkillListAdapter.java index 0412f7ca3..930420511 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/SkillListAdapter.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/view/SkillListAdapter.java @@ -197,6 +197,10 @@ public final class SkillListAdapter extends ArrayAdapter { && item2.canLevelUpSkillTo(player, player.getSkillLevel(item2.id) +1)) return 1; else { // Then compare by number of requirements (complexity) + if(item1.levelupRequirements == null) + return -1; + if(item2.levelupRequirements == null) + return 1; if(item1.levelupRequirements.length< item2.levelupRequirements.length) return -1; else if(item1.levelupRequirements.length > item2.levelupRequirements.length)