Compare commits

...

15 Commits

Author SHA1 Message Date
OMGeeky
315e34185a Only add the loot once to the killedMonsterBags
without this, the loot might be added multiple times to the UI when showing what has been dropped, allowing the player to get more items than they should be allowed to
2024-08-25 13:23:25 +02:00
Nut.andor
585852ecb1 items_misc_2 2024-08-23 00:32:40 +02:00
Nut.andor
d87e584601 Teleport WX 2024-08-17 19:04:30 +02:00
Nut.andor
bfeab1abfa Merge branch 'pulls/1829009049/72' into AT_Source_Next_Release 2024-08-17 12:15:45 +02:00
Nut.andor
7c30577374 Reduce the Item use cost penalty like the move and attack cost penalt… 2024-08-17 12:13:19 +02:00
Nut.andor
e164e50f93 Pull Request #72: Reduce the Item use cost penalty like the move and attack cost penalt… 2024-08-15 20:20:38 +02:00
Nut.andor
84fa8e5547 debug buttons 2024-07-21 18:53:50 +02:00
Nut.andor
c9b4da0823 better error message 2024-07-20 01:23:08 +02:00
Nut.andor
4c55c5c2a7 better error message 2024-07-20 00:37:42 +02:00
Nut.andor
ced33a4cda fixes that can't be done by ATCS 2024-07-19 23:48:39 +02:00
Nut.andor
50606e8424 Merge branch 'pulls/1829009049/69' into AT_Source_Next_Release 2024-07-19 23:47:24 +02:00
Nut.andor
845ea0926e debug buttons 2024-07-19 00:13:12 +02:00
Nut.andor
d60c6b3aa8 remove duplicates 2024-07-14 22:46:34 +02:00
Nut.andor
570d9da321 Pull Request #69: remove duplicates 2024-06-22 15:19:50 +02:00
OMGeeky
99f4ab5e6b remove duplicates 2024-06-22 15:13:30 +02:00
10 changed files with 22 additions and 196 deletions

View File

@@ -313,6 +313,13 @@ public final class DebugInterface {
}
})
,new DebugButton("wx", new OnClickListener() {
@Override
public void onClick(View arg0) {
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "wexlow_village", "north", 0, 0);
}
})
,new DebugButton("fey", new OnClickListener() {
@Override
public void onClick(View arg0) {
@@ -345,14 +352,14 @@ public final class DebugInterface {
,new DebugButton("#1", new OnClickListener() {
@Override
public void onClick(View arg0) {
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "waterway11_east", "west", 0, 0);
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "swamp3", "north", 0, 0);
}
})
,new DebugButton("#2", new OnClickListener() {
@Override
public void onClick(View arg0) {
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "laerothtomb1", "north", 0, 0);
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "beekeeper1", "south", 0, 0);
}
})
@@ -360,7 +367,7 @@ public final class DebugInterface {
,new DebugButton("#3", new OnClickListener() {
@Override
public void onClick(View arg0) {
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "mountainlake8", "north", 0, 0);
controllerContext.movementController.placePlayerAsyncAt(MapObject.MapObjectType.newmap, "guynmart", "west2", 0, 0);
}
})

View File

@@ -250,7 +250,8 @@ public final class CombatController implements VisualEffectCompletedCallback {
if (!loot.hasItemsOrGold()) {
world.model.currentMaps.map.removeGroundLoot(loot);
} else if (world.model.uiSelections.isInCombat) {
killedMonsterBags.add(loot);
if(!killedMonsterBags.contains(loot))
killedMonsterBags.add(loot);
}
combatActionListeners.onPlayerKilledMonster(killedMonster);

View File

@@ -8,6 +8,7 @@ import org.xmlpull.v1.XmlPullParserException;
import android.content.res.Resources;
import android.content.res.XmlResourceParser;
import com.gpl.rpg.AndorsTrail.AndorsTrailApplication;
import com.gpl.rpg.AndorsTrail.model.map.MapCollection;
import com.gpl.rpg.AndorsTrail.model.map.WorldMapSegment;
import com.gpl.rpg.AndorsTrail.model.map.WorldMapSegment.NamedWorldMapArea;
@@ -24,11 +25,13 @@ public final class WorldMapParser {
}
private static void read(XmlResourceParser xrp, final MapCollection maps, final TranslationLoader translationLoader) {
String s = "";
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) L.log("WorldMapParser:");
try {
int eventType;
while ((eventType = xrp.next()) != XmlResourceParser.END_DOCUMENT) {
if (eventType == XmlResourceParser.START_TAG) {
String s = xrp.getName();
s = xrp.getName();
if (s.equals("segment")) {
WorldMapSegment segment = parseSegment(xrp, maps, translationLoader);
maps.worldMapSegments.put(segment.name, segment);
@@ -37,7 +40,7 @@ public final class WorldMapParser {
}
xrp.close();
} catch (Exception e) {
L.log("Error reading worldmap: " + e.toString());
L.log("Error reading worldmap: " + s + " " + e.toString());
}
}
@@ -46,11 +49,13 @@ public final class WorldMapParser {
final WorldMapSegment segment = new WorldMapSegment(segmentName);
final ArrayList<Pair<String, String>> mapsInNamedAreas = new ArrayList<Pair<String,String>>();
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) L.log("segment: " + segmentName);
XmlResourceParserUtils.readCurrentTagUntilEnd(xrp, new XmlResourceParserUtils.TagHandler() {
@Override
public void handleTag(XmlResourceParser xrp, String tagName) throws XmlPullParserException, IOException {
if (tagName.equals("map")) {
String mapName = xrp.getAttributeValue(null, "id");
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) L.log(" map: " + mapName);
if (maps.findPredefinedMap(mapName) == null) return;
Coord mapPosition = new Coord(
xrp.getAttributeIntValue(null, "x", -1),
@@ -65,6 +70,7 @@ public final class WorldMapParser {
String id = xrp.getAttributeValue(null, "id");
String name = translationLoader.translateWorldmapLocation(xrp.getAttributeValue(null, "name"));
String type = xrp.getAttributeValue(null, "type");
if (AndorsTrailApplication.DEVELOPMENT_VALIDATEDATA) L.log(" namedarea: id=" + id + " name=" + name + " type=" + type);
segment.namedAreas.put(id, new NamedWorldMapArea(id, name, type));
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

@@ -3468,106 +3468,6 @@
}
]
},
{
"id":"captive_girl_selector",
"replies":[
{
"text":"N",
"nextPhraseID":"captive_girl_10",
"requires":[
{
"requireType":"questProgress",
"requireID":"wicked_witch",
"value":90,
"negate":true
},
{
"requireType":"questProgress",
"requireID":"wicked_witch",
"value":95,
"negate":true
},
{
"requireType":"questProgress",
"requireID":"wicked_witch",
"value":96,
"negate":true
}
]
},
{
"text":"N",
"nextPhraseID":"captive_girl_50",
"requires":[
{
"requireType":"questLatestProgress",
"requireID":"wicked_witch",
"value":90
}
]
},
{
"text":"N",
"nextPhraseID":"captive_girl_75",
"requires":[
{
"requireType":"questProgress",
"requireID":"wicked_witch",
"value":95
}
]
},
{
"text":"N",
"nextPhraseID":"captive_girl_31"
}
]
},
{
"id":"captive_girl_65",
"message":"Ah, YES. I remember her saying that an \"undead\" friend of her's east of here taught her how to make them.",
"replies":[
{
"text":"OK. Stay here. I will be back with more of them.",
"nextPhraseID":"X"
}
],
"rewards":[
{
"rewardType":"questProgress",
"rewardID":"wicked_witch",
"value":90
}
]
},
{
"id":"wicked_witch_reveal_girl_selector",
"replies":[
{
"text":"N",
"nextPhraseID":"wicked_witch_reveal_girl_spawn",
"requires":[
{
"requireType":"timerElapsed",
"requireID":"wicked_witch_despawn_timer",
"value":72
},
{
"requireType":"questProgress",
"requireID":"wicked_witch",
"value":96,
"negate":true
},
{
"requireType":"questProgress",
"requireID":"wicked_witch",
"value":95,
"negate":true
}
]
}
]
},
{
"id":"fix_stn_skeletons_10",
"message":"What a beautiful view from here.",

View File

@@ -11819,7 +11819,8 @@
"message":"No, unfortunately not. Maybe try my colleague in Fallhaven?",
"replies":[
{
"text":"Sigh - well, thanks."
"text":"Sigh - well, thanks.",
"nextPhraseID":"X"
}
]
}

View File

@@ -925,31 +925,5 @@
}
}
]
},
{
"id":"ratdom_618_loot1",
"items":[
{
"itemID":"gold",
"chance":"100",
"quantity":{
"min":200,
"max":400
}
}
]
},
{
"id":"ratdom_618_loot2",
"items":[
{
"itemID":"ratdom_parchment",
"chance":"100",
"quantity":{
"min":1,
"max":1
}
}
]
}
]

View File

@@ -749,27 +749,6 @@
}
]
},
{
"id":"gapfillerhole_drop",
"items":[
{
"itemID":"gold",
"chance":"100",
"quantity":{
"min":10,
"max":100
}
},
{
"itemID":"gem1",
"chance":"100",
"quantity":{
"min":1,
"max":2
}
}
]
},
{
"id":"lava_queen_dl",
"items":[

View File

@@ -34,32 +34,6 @@
}
}
},
{
"id": "shadow_slayer",
"iconID": "items_weapons:60",
"name": "Shadow of the slayer",
"category": "lsword",
"displaytype": "extraordinary",
"hasManualPrice": 1,
"baseMarketCost": 0,
"equipEffect": {
"increaseMaxAP": 2,
"increaseAttackCost": 7,
"increaseAttackChance": 25,
"increaseCriticalSkill": 10,
"setCriticalMultiplier": 2,
"increaseAttackDamage": {
"min": 5,
"max": 9
}
},
"killEffect": {
"increaseCurrentHP": {
"min": 1,
"max": 1
}
}
},
{
"id":"choatic_potion",
"iconID":"items_consumables:62",

View File

@@ -7,14 +7,6 @@
"hasManualPrice": 1,
"baseMarketCost": 6
},
{
"id": "bat_wing",
"iconID": "items_misc:46",
"name": "Bat wing",
"category": "animal",
"hasManualPrice": 1,
"baseMarketCost": 2
},
{
"id": "feather",
"iconID": "items_misc:16",
@@ -39,14 +31,6 @@
"hasManualPrice": 1,
"baseMarketCost": 1
},
{
"id": "gem6",
"iconID": "items_misc:4",
"name": "Shimmering gem",
"category": "gem",
"hasManualPrice": 1,
"baseMarketCost": 26
},
{
"id": "gem8",
"iconID": "actorconditions_1:50",