Merge pull request #2265 from jjayers99/master

Adventure mode revamp, Phase 1
This commit is contained in:
Anthony Calosa
2023-01-27 19:47:51 +08:00
committed by GitHub
110 changed files with 9069 additions and 460 deletions

View File

@@ -792,6 +792,11 @@ public class AiCostDecision extends CostDecisionMakerBase {
return PaymentDecision.number(0);
}
@Override
public PaymentDecision visit(CostPayShards cost) {
return PaymentDecision.number(0);
}
@Override
public PaymentDecision visit(CostUnattach cost) {
final Card cardToUnattach = cost.findCardToUnattach(source, player, ability);

View File

@@ -42,7 +42,7 @@ public class DeckHints {
}
private boolean valid = false;
private List<Pair<Type, String>> filters = null;
public List<Pair<Type, String>> filters = null;
/**
* Construct a DeckHints from the SVar string.

View File

@@ -27,6 +27,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
import forge.game.card.*;
import org.apache.commons.lang3.tuple.Pair;
import com.google.common.base.Predicate;
@@ -45,16 +46,6 @@ import forge.card.CardRarity;
import forge.card.CardStateName;
import forge.card.CardType.Supertype;
import forge.game.ability.AbilityKey;
import forge.game.card.Card;
import forge.game.card.CardCollection;
import forge.game.card.CardCollectionView;
import forge.game.card.CardDamageHistory;
import forge.game.card.CardLists;
import forge.game.card.CardPredicates;
import forge.game.card.CardUtil;
import forge.game.card.CardView;
import forge.game.card.CardZoneTable;
import forge.game.card.CounterType;
import forge.game.combat.Combat;
import forge.game.event.Event;
import forge.game.event.GameEventDayTimeChanged;
@@ -305,6 +296,9 @@ public class Game {
pl.setMaxHandSize(psc.getStartingHand());
pl.setStartingHandSize(psc.getStartingHand());
if (psc.getManaShards() > 0) {
pl.setCounters(CounterEnumType.MANASHARDS, psc.getManaShards(), true);
}
int teamNum = psc.getTeamNumber();
if (teamNum == -1) {
// RegisteredPlayer doesn't have an assigned team, set it to 1 higher than the highest found team number

View File

@@ -390,6 +390,7 @@ public enum CounterEnumType {
POISON("POISN"),
TICKET("TICKET"),
MANASHARDS("MANASHARDS"), //Adventure-specific mechanic
// Keyword Counters
/*

View File

@@ -324,6 +324,11 @@ public class Cost implements Serializable {
final String[] splitStr = abCostParse(parse, 1);
return new CostPayEnergy(splitStr[0]);
}
if (parse.startsWith("PayShards<")) { //Adventure specific energy-esque tokens
// Payshards<ShardCost>
final String[] splitStr = abCostParse(parse, 1);
return new CostPayShards(splitStr[0]);
}
if (parse.startsWith("GainLife<")) {
// PayLife<LifeCost>

View File

@@ -0,0 +1,99 @@
/*
* Forge: Play Magic: the Gathering.
* Copyright (C) 2011 Forge Team
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package forge.game.cost;
import com.google.common.base.Strings;
import forge.game.card.Card;
import forge.game.card.CounterEnumType;
import forge.game.player.Player;
import forge.game.spellability.SpellAbility;
public class CostPayShards extends CostPart {
/**
* Serializables need a version ID.
*/
private static final long serialVersionUID = 1L;
int paidAmount = 0;
/**
* Instantiates a new cost pay shards.
*
* @param amount
* the amount
*/
public CostPayShards(final String amount) {
this.setAmount(amount);
}
@Override
public int paymentOrder() { return 7; }
@Override
public Integer getMaxAmountX(final SpellAbility ability, final Player payer, final boolean effect) {
return payer.getCounters(CounterEnumType.MANASHARDS);
}
/*
* (non-Javadoc)
*
* @see forge.card.cost.CostPart#toString()
*/
@Override
public final String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("Pay ");
sb.append(Strings.repeat("{M}", Integer.parseInt(getAmount())));
return sb.toString();
}
/*
* (non-Javadoc)
*
* @see forge.card.cost.CostPart#refund(forge.Card)
*/
@Override
public final void refund(final Card source) {
// Really should be activating player
source.getController().loseShards(this.paidAmount * -1);
}
/*
* (non-Javadoc)
*
* @see
* forge.card.cost.CostPart#canPay(forge.card.spellability.SpellAbility,
* forge.Card, forge.Player, forge.card.cost.Cost)
*/
@Override
public final boolean canPay(final SpellAbility ability, final Player payer, final boolean effect) {
return payer.getCounters(CounterEnumType.MANASHARDS) >= this.getAbilityAmount(ability);
}
@Override
public boolean payAsDecided(Player ai, PaymentDecision decision, SpellAbility ability, final boolean effect) {
paidAmount = decision.c;
return ai.payShards(paidAmount, null);
}
public <T> T accept(ICostVisitor<T> visitor) {
return visitor.visit(this);
}
}

View File

@@ -34,6 +34,7 @@ public interface ICostVisitor<T> {
T visit(CostUntap cost);
T visit(CostUnattach cost);
T visit(CostTapType cost);
T visit(CostPayShards cost);
class Base<T> implements ICostVisitor<T> {
@@ -196,6 +197,11 @@ public interface ICostVisitor<T> {
public T visit(CostTapType cost) {
return null;
}
@Override
public T visit(CostPayShards cost) {
return null;
}
}
}

View File

@@ -661,6 +661,28 @@ public class Player extends GameEntity implements Comparable<Player> {
return canPayEnergy(energyPayment) && loseEnergy(energyPayment) > -1;
}
public final boolean canPayShards(final int shardPayment) {
int cnt = getCounters(CounterEnumType.MANASHARDS);
return cnt >= shardPayment;
}
public final int loseShards(int lostShards) {
int cnt = getCounters(CounterEnumType.MANASHARDS);
if (lostShards > cnt) {
return -1;
}
cnt -= lostShards;
this.setCounters(CounterEnumType.MANASHARDS, cnt, true);
return cnt;
}
public final boolean payShards(final int shardPayment, final Card source) {
if (shardPayment <= 0)
return true;
return canPayShards(shardPayment) && loseShards(shardPayment) > -1;
}
// This function handles damage after replacement and prevention effects are applied
@Override
public final int addDamageAfterPrevention(final int amount, final Card source, final boolean isCombat, GameEntityCounterTable counterTable) {

View File

@@ -26,6 +26,7 @@ public class RegisteredPlayer {
private int startingLife = 20;
private int startingHand = 7;
private int manaShards = 0;
private Iterable<IPaperCard> cardsOnBattlefield = null;
private Iterable<IPaperCard> extraCardsOnBattlefield = null;
private Iterable<? extends IPaperCard> schemes = null;
@@ -58,6 +59,14 @@ public class RegisteredPlayer {
this.startingLife = startingLife;
}
public final int getManaShards() {
return manaShards;
}
public final void setManaShards(int manaShards) {
this.manaShards = manaShards;
}
public final void setCardsOnBattlefield(Iterable<IPaperCard> cardsOnTable) {
this.cardsOnBattlefield = cardsOnTable;
}

View File

@@ -1466,6 +1466,7 @@ public class FSkin {
addEncodingSymbol("TK", FSkinProp.IMG_TICKET);
addEncodingSymbol("EXPERIENCE", FSkinProp.IMG_EXPERIENCE);
addEncodingSymbol("A-", FSkinProp.IMG_ALCHEMY);
addEncodingSymbol("M", FSkinProp.ICO_MANASHARD);
// Set look and feel after skin loaded
FView.SINGLETON_INSTANCE.setSplashProgessBarMessage("Setting look and feel...");

View File

@@ -2,27 +2,33 @@ package forge.adventure.character;
import com.badlogic.gdx.utils.Array;
import forge.Forge;
import forge.adventure.data.ShopData;
import forge.adventure.scene.RewardScene;
import forge.adventure.stage.MapStage;
import forge.adventure.util.Reward;
/**
* Map actor that will open the Shop on collision
*/
public class ShopActor extends MapActor{
private final MapStage stage;
private final boolean unlimited;
private ShopData shopData;
Array<Reward> rewardData;
public ShopActor(MapStage stage, int id, Array<Reward> rewardData, boolean unlimited)
float shopPriceModifier = 1.0f;
float townPriceModifier = 1.0f;
public ShopActor(MapStage stage, int id, Array<Reward> rewardData, ShopData data)
{
super(id);
this.stage = stage;
this.shopData = data;
this.rewardData = rewardData;
this.unlimited = unlimited;
this.shopPriceModifier = stage.getChanges().getShopPriceModifier(id) ;
this.townPriceModifier = stage.getChanges().getTownPriceModifier();
}
public float getPriceModifier() { return (shopPriceModifier > 0? shopPriceModifier:1.0f) * (townPriceModifier> 0? townPriceModifier:1.0f); }
public MapStage getMapStage()
{
return stage;
@@ -39,6 +45,28 @@ public class ShopActor extends MapActor{
public boolean isUnlimited() {
return unlimited;
return shopData.unlimited;
}
@Override
public String getName() {
return shopData.name;
}
public String getDescription() {
return shopData.description;
}
public int getRestockPrice() {
return shopData.restockPrice;
}
public boolean canRestock() {
return getRestockPrice() > 0;
}
public ShopData getShopData() { return shopData; }
public void setRewardData(Array<Reward> data) { rewardData = data; }
public Array<Reward> getRewardData() { return rewardData;}
}

View File

@@ -10,7 +10,7 @@ import com.badlogic.gdx.utils.ObjectMap;
public class DifficultyData {
public String name="";
public int startingLife=10;
public int startingMana=100;
public int startingShards=1;
public int staringMoney=10;
public float enemyLifeFactor=1;
public boolean startingDifficulty;
@@ -18,6 +18,7 @@ public class DifficultyData {
public float sellFactor=0.2f;
public float goldLoss=0.2f;
public float lifeLoss=0.2f;
public float shardSellRatio = 0.8f;
public float rewardMaxFactor=1f;
public String[] startItems=new String[0];

View File

@@ -19,6 +19,7 @@ public class EffectData implements Serializable {
public float moveSpeed = 1.0f; //Change of movement speed. Map only.
public float goldModifier = -1.0f; //Modifier for shop discounts.
public int cardRewardBonus = 0; //Bonus "DeckCard" drops. Max 3.
public int extraManaShards = 0; //Mana Shard tokens available to spend in battle
//Opponent field.
public EffectData opponent; //Effects to be applied to the opponent's side.
@@ -31,6 +32,7 @@ public class EffectData implements Serializable {
startBattleWithCard=effect.startBattleWithCard;
colorView=effect.colorView;
opponent = (effect.opponent == null) ? null : new EffectData(effect.opponent);
extraManaShards = effect.extraManaShards;
}
public Array<IPaperCard> startBattleWithCards() {

View File

@@ -27,7 +27,7 @@ public class ItemData {
public boolean usableOnWorldMap;
public boolean usableInPoi;
public String commandOnUse;
public int manaNeeded;
public int shardsNeeded;
public ItemData()
@@ -46,7 +46,7 @@ public class ItemData {
usableInPoi = cpy.usableInPoi;
usableOnWorldMap = cpy.usableOnWorldMap;
commandOnUse = cpy.commandOnUse;
manaNeeded = cpy.manaNeeded;
shardsNeeded = cpy.shardsNeeded;
}
public Sprite sprite()
@@ -90,8 +90,8 @@ public class ItemData {
result += "Slot: " + this.equipmentSlot + "\n";
if(effect != null)
result += effect.getDescription();
if(manaNeeded != 0)
result += manaNeeded+" [+Mana]";
if(shardsNeeded != 0)
result += shardsNeeded+" [+Shards]";
return result;
}

View File

@@ -14,6 +14,7 @@ import forge.model.FModel;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
/**
@@ -42,6 +43,10 @@ public class RewardData {
public String colorType;
public String cardText;
public boolean matchAllSubTypes;
public boolean matchAllColors;
public RewardData[] cardUnion;
public String[] deckNeeds;
public RewardData[] rotation;
public RewardData() { }
@@ -64,6 +69,10 @@ public class RewardData {
colorType =rewardData.colorType;
cardText =rewardData.cardText;
matchAllSubTypes =rewardData.matchAllSubTypes;
matchAllColors =rewardData.matchAllColors;
cardUnion =rewardData.cardUnion==null?null:rewardData.cardUnion.clone();
rotation =rewardData.rotation==null?null:rewardData.rotation.clone();
deckNeeds =rewardData.deckNeeds==null?null:rewardData.deckNeeds.clone();
}
private static Iterable<PaperCard> allCards;
@@ -119,6 +128,19 @@ public class RewardData {
int addedCount = (maxCount > 0 ? WorldSave.getCurrentSave().getWorld().getRandom().nextInt(maxCount) : 0);
switch(type) {
case "Union":
HashSet<PaperCard> pool = new HashSet<>();
for (RewardData r : cardUnion) {
pool.addAll(CardUtil.getPredicateResult(allCards, r));
}
ArrayList<PaperCard> finalPool = new ArrayList(pool);
if (finalPool.size() > 0){
for (int i = 0; i < count; i++) {
ret.add(new Reward(finalPool.get(WorldSave.getCurrentSave().getWorld().getRandom().nextInt(finalPool.size()))));
}
}
break;
case "card":
case "randomCard":
if( cardName != null && !cardName.isEmpty() ) {
@@ -156,8 +178,9 @@ public class RewardData {
case "life":
ret.add(new Reward(Reward.Type.Life, count + addedCount));
break;
case "mana":
ret.add(new Reward(Reward.Type.Mana, count + addedCount));
case "mana": //backwards compatibility for reward data
case "shards":
ret.add(new Reward(Reward.Type.Shards, count + addedCount));
break;
}
}

View File

@@ -10,10 +10,13 @@ import com.badlogic.gdx.utils.Array;
public class ShopData {
public String name;
public String description;
public int restockPrice;
public String spriteAtlas;
public String sprite;
public boolean unlimited;
public Array<RewardData> rewards;
public String overlaySprite = "";

View File

@@ -50,8 +50,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
private int gold = 0;
private int maxLife= 20;
private int life = 20;
private int maxMana= 100;
private int mana = 100;
private int shards = 0;
private EffectData blessing; //Blessing to apply for next battle.
private final PlayerStatistic statistic = new PlayerStatistic();
private final Map<String, Byte> questFlags = new HashMap<>();
@@ -67,7 +66,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
// Signals
final SignalList onLifeTotalChangeList = new SignalList();
final SignalList onManaTotalChangeList = new SignalList();
final SignalList onShardsChangeList = new SignalList();
final SignalList onGoldChangeList = new SignalList();
final SignalList onPlayerChangeList = new SignalList();
final SignalList onEquipmentChange = new SignalList();
@@ -93,8 +92,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
gold = 0;
maxLife = 20;
life = 20;
maxMana = 10;
mana = 10;
shards = 0;
clearDecks();
inventoryItems.clear();
equippedItems.clear();
@@ -129,6 +127,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
this.difficultyData.spawnRank = difficultyData.spawnRank;
this.difficultyData.enemyLifeFactor = difficultyData.enemyLifeFactor;
this.difficultyData.sellFactor = difficultyData.sellFactor;
this.difficultyData.shardSellRatio = difficultyData.shardSellRatio;
gold = difficultyData.staringMoney;
name = n;
@@ -139,12 +138,12 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
setColorIdentity(DeckProxy.getColorIdentity(deck));
life = maxLife = difficultyData.startingLife;
mana = maxMana = difficultyData.startingMana;
shards = difficultyData.startingShards;
inventoryItems.addAll(difficultyData.startItems);
onGoldChangeList.emit();
onLifeTotalChangeList.emit();
onManaTotalChangeList.emit();
onShardsChangeList.emit();
}
public void setSelectedDeckSlot(int slot) {
@@ -156,8 +155,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
}
public void updateDifficulty(DifficultyData diff) {
maxLife = diff.startingLife;
maxMana = diff.startingMana;
this.difficultyData.startingMana = diff.startingMana;
this.difficultyData.startingShards = diff.startingShards;
this.difficultyData.startingLife = diff.startingLife;
this.difficultyData.staringMoney = diff.staringMoney;
this.difficultyData.startingDifficulty = diff.startingDifficulty;
@@ -165,6 +163,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
this.difficultyData.spawnRank = diff.spawnRank;
this.difficultyData.enemyLifeFactor = diff.enemyLifeFactor;
this.difficultyData.sellFactor = diff.sellFactor;
this.difficultyData.shardSellRatio = diff.shardSellRatio;
fullHeal();
}
@@ -180,8 +179,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
public int getGold() { return gold; }
public int getLife() { return life; }
public int getMaxLife() { return maxLife; }
public int getMana() { return mana; }
public int getMaxMana() { return maxMana; }
public int getShards() { return shards; }
public @Null EffectData getBlessing() { return blessing; }
public Collection<String> getEquippedItems() { return equippedItems.values(); }
@@ -228,6 +226,10 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
if(this.difficultyData.sellFactor==0)
this.difficultyData.sellFactor=0.2f;
this.difficultyData.shardSellRatio=data.readFloat("sellFactor");
if(this.difficultyData.shardSellRatio==0)
this.difficultyData.shardSellRatio=0.8f;
name = data.readString("name");
heroRace = data.readInt("heroRace");
avatarIndex = data.readInt("avatarIndex");
@@ -240,8 +242,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
gold = data.readInt("gold");
maxLife = data.readInt("maxLife");
life = data.readInt("life");
maxMana = data.containsKey("maxMana")?data.readInt("maxMana"):100;
mana = data.containsKey("mana")?data.readInt("mana"):100;
shards = data.containsKey("shards")?data.readInt("shards"):0;
worldPosX = data.readFloat("worldPosX");
worldPosY = data.readFloat("worldPosY");
@@ -310,7 +311,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
announceCustom = data.containsKey("announceCustom") ? data.readBool("announceCustom") : false;
onLifeTotalChangeList.emit();
onManaTotalChangeList.emit();
onShardsChangeList.emit();
onGoldChangeList.emit();
onBlessing.emit();
}
@@ -326,6 +327,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
data.store("difficultyName",this.difficultyData.name);
data.store("enemyLifeFactor",this.difficultyData.enemyLifeFactor);
data.store("sellFactor",this.difficultyData.sellFactor);
data.store("shardSellRatio", this.difficultyData.shardSellRatio);
data.store("name",name);
data.store("heroRace",heroRace);
@@ -343,8 +345,7 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
data.store("gold",gold);
data.store("life",life);
data.store("maxLife",maxLife);
data.store("mana",mana);
data.store("maxMana",maxMana);
data.store("shards",shards);
data.store("deckName",deck.getName());
data.storeObject("inventory",inventoryItems.toArray(String.class));
@@ -418,8 +419,8 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
case Life:
addMaxLife(reward.getCount());
break;
case Mana:
addMaxMana(reward.getCount());
case Shards:
addShards(reward.getCount());
break;
}
}
@@ -428,8 +429,8 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
gold+=goldCount;
onGoldChangeList.emit();
}
public void onManaChange(Runnable o) {
onManaTotalChangeList.add(o);
public void onShardsChange(Runnable o) {
onShardsChangeList.add(o);
o.run();
}
@@ -466,29 +467,23 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
return false;
}
public void potionOfFalseLife() {
public boolean potionOfFalseLife() {
if (gold >= falseLifeCost() && life == maxLife) {
life = maxLife + 2;
gold -= falseLifeCost();
onLifeTotalChangeList.emit();
onGoldChangeList.emit();
return true;
} else {
System.out.println("Can't afford cost of false life " + falseLifeCost());
System.out.println("Only has this much gold " + gold);
}
return false;
}
public int falseLifeCost() {
return 200 + (int)(50 * getStatistic().winLossRatio());
}
public void addMana(int addedValue) {
mana = Math.min(maxMana,Math.max(mana + addedValue, 0));
onManaTotalChangeList.emit();
}
public void addManaPercent(float percent) {
mana = Math.min(mana + (int)(maxMana*percent), maxMana);
onManaTotalChangeList.emit();
int ret = 200 + (int)(50 * getStatistic().winLossRatio());
return ret < 0?250:ret;
}
public void heal(int amount) {
life = Math.min(life + amount, maxLife);
@@ -505,18 +500,13 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
onGoldChangeList.emit();
}
public void win() {
Current.player().addManaPercent(0.1f);
Current.player().addShards(1);
}
public void addMaxLife(int count) {
maxLife += count;
life += count;
onLifeTotalChangeList.emit();
}
public void addMaxMana(int count) {
maxMana += count;
mana += count;
onManaTotalChangeList.emit();
}
public void giveGold(int price) {
takeGold(-price);
}
@@ -524,6 +514,18 @@ public class AdventurePlayer implements Serializable, SaveFileContent {
gold -= price;
onGoldChangeList.emit();
}
public void addShards(int number) {
takeShards(-number);
}
public void takeShards(int number) {
shards -= number;
onShardsChangeList.emit();
}
public void setShards(int number) {
shards = number;
onShardsChangeList.emit();
}
public void addBlessing(EffectData bless){
blessing = bless;

View File

@@ -1,5 +1,6 @@
package forge.adventure.pointofintrest;
import forge.adventure.util.Current;
import forge.adventure.util.SaveFileContent;
import forge.adventure.util.SaveFileData;
@@ -14,6 +15,8 @@ public class PointOfInterestChanges implements SaveFileContent {
private final HashSet<Integer> deletedObjects=new HashSet<>();
private final HashMap<Integer, HashSet<Integer>> cardsBought = new HashMap<>();
private final java.util.Map<String, Byte> mapFlags = new HashMap<>();
private final java.util.Map<Integer, Long> shopSeeds = new HashMap<>();
private final java.util.Map<Integer, Float> shopModifiers = new HashMap<>();
public static class Map extends HashMap<String,PointOfInterestChanges> implements SaveFileContent {
@Override
@@ -52,8 +55,12 @@ public class PointOfInterestChanges implements SaveFileContent {
deletedObjects.addAll((HashSet<Integer>) data.readObject("deletedObjects"));
cardsBought.clear();
cardsBought.putAll((HashMap<Integer, HashSet<Integer>>) data.readObject("cardsBought"));
shopSeeds.clear();
shopSeeds.putAll((java.util.Map<Integer, Long>) data.readObject("shopSeeds"));
mapFlags.clear();
mapFlags.putAll((java.util.Map<String, Byte>) data.readObject("mapFlags"));
shopModifiers.clear();
shopModifiers.putAll((java.util.Map<Integer, Float>) data.readObject("shopModifiers"));
}
@Override
@@ -62,6 +69,8 @@ public class PointOfInterestChanges implements SaveFileContent {
data.storeObject("deletedObjects",deletedObjects);
data.storeObject("cardsBought",cardsBought);
data.storeObject("mapFlags", mapFlags);
data.storeObject("shopSeeds", shopSeeds);
data.storeObject("shopModifiers", shopModifiers);
return data;
}
@@ -85,4 +94,48 @@ public class PointOfInterestChanges implements SaveFileContent {
return cardsBought.get(objectID).contains(cardIndex);
}
public long getShopSeed(int objectID){
if (!shopSeeds.containsKey(objectID))
{
generateNewShopSeed(objectID);
}
return shopSeeds.get(objectID);
}
public void generateNewShopSeed(int objectID){
shopSeeds.put(objectID, Current.world().getRandom().nextLong());
cardsBought.put(objectID, new HashSet<>()); //Allows cards to appear in slots of previous purchases
}
public void setRotatingShopSeed(int objectID, long seed){
if (shopSeeds.containsKey(objectID) && shopSeeds.get(objectID) != seed) {
cardsBought.put(objectID, new HashSet<>()); //Allows cards to appear in slots of previous purchases
}
shopSeeds.put(objectID, seed);
}
public float getShopPriceModifier(int objectID){
if (!shopModifiers.containsKey(objectID))
{
return -1.0f;
}
return shopModifiers.get(objectID);
}
public void setShopModifier(int objectID, float mod){
if (objectID!= 0) shopModifiers.put(objectID, mod);
}
public float getTownPriceModifier(){
if (!shopModifiers.containsKey(0))
{
return -1.0f;
}
return shopModifiers.get(0);
}
public void setTownModifier(float mod){
shopModifiers.put(0, mod);
}
}

View File

@@ -22,6 +22,7 @@ import forge.deck.Deck;
import forge.deck.DeckProxy;
import forge.game.GameRules;
import forge.game.GameType;
import forge.game.card.CounterEnumType;
import forge.game.player.Player;
import forge.game.player.RegisteredPlayer;
import forge.gamemodes.match.HostedMatch;
@@ -87,6 +88,13 @@ public class DuelScene extends ForgeScene {
boolean winner = false;
try {
winner = humanPlayer == hostedMatch.getGame().getMatch().getWinner();
//Persists expended (or potentially gained) shards back to Adventure
//TODO: Progress towards applicable Adventure quests also needs to be reported here.
List<PlayerControllerHuman> humans = hostedMatch.getHumanControllers();
if (humans.size() == 1) {
Current.player().setShards(humans.get(0).getPlayer().getCounters(CounterEnumType.MANASHARDS));
}
} catch (Exception e) {
e.printStackTrace();
}
@@ -157,16 +165,19 @@ public class DuelScene extends ForgeScene {
//Apply various combat effects.
int lifeMod = 0;
int changeStartCards = 0;
int extraManaShards = 0;
Array<IPaperCard> startCards = new Array<>();
for (EffectData data : effects) {
lifeMod += data.lifeModifier;
changeStartCards += data.changeStartCards;
startCards.addAll(data.startBattleWithCards());
extraManaShards += data.extraManaShards;
}
player.addExtraCardsOnBattlefield(startCards);
player.setStartingLife(Math.max(1, lifeMod + player.getStartingLife()));
player.setStartingHand(player.getStartingHand() + changeStartCards);
player.setManaShards((player.getManaShards() + extraManaShards));
}
public void setDungeonEffect(EffectData E) {
@@ -197,6 +208,7 @@ public class DuelScene extends ForgeScene {
humanPlayer.setPlayer(playerObject);
humanPlayer.setTeamNumber(0);
humanPlayer.setStartingLife(advPlayer.getLife());
humanPlayer.setManaShards((advPlayer.getShards()));
Array<EffectData> playerEffects = new Array<>();
Array<EffectData> oppEffects = new Array<>();

View File

@@ -2,8 +2,10 @@ package forge.adventure.scene;
import com.badlogic.gdx.scenes.scene2d.ui.Image;
import com.github.tommyettinger.textra.TextraButton;
import com.github.tommyettinger.textra.TextraLabel;
import forge.Forge;
import forge.adventure.stage.GameHUD;
import forge.adventure.util.Controls;
import forge.adventure.util.Current;
/**
@@ -20,6 +22,7 @@ public class InnScene extends UIScene {
TextraButton tempHitPointCost, sell, leave;
Image healIcon, sellIcon, leaveIcon;
private TextraLabel playerGold,playerShards;
private InnScene() {
@@ -30,7 +33,8 @@ public class InnScene extends UIScene {
ui.onButtonPress("sell", InnScene.this::sell);
leave = ui.findActor("done");
sell = ui.findActor("sell");
playerGold = Controls.newAccountingLabel(ui.findActor("playerGold"), false);
playerShards = Controls.newAccountingLabel(ui.findActor("playerShards"),true);
leaveIcon = ui.findActor("leaveIcon");
healIcon = ui.findActor("healIcon");
@@ -45,7 +49,9 @@ public class InnScene extends UIScene {
}
public void potionOfFalseLife() {
Current.player().potionOfFalseLife();
if (Current.player().potionOfFalseLife()){
refreshStatus();
}
}
@Override
@@ -59,12 +65,16 @@ public class InnScene extends UIScene {
super.render();
}
int tempHealthCost = 0;
@Override
public void enter() {
super.enter();
int tempHealthCost = Current.player().falseLifeCost();
if (tempHealthCost < 0) // if computed negative set 250 as minimum
tempHealthCost = 250;
refreshStatus();
}
private void refreshStatus(){
tempHealthCost = Current.player().falseLifeCost();
boolean purchaseable = Current.player().getMaxLife() == Current.player().getLife() &&
tempHealthCost <= Current.player().getGold();
@@ -76,5 +86,4 @@ public class InnScene extends UIScene {
Forge.switchScene(ShopScene.instance());
}
}

View File

@@ -159,7 +159,7 @@ public class InventoryScene extends UIScene {
ItemData data = ItemData.getItem(itemLocation.get(selected));
if(data==null)return;
Current.player().addMana(-data.manaNeeded);
Current.player().addShards(-data.shardsNeeded);
done();
ConsoleCommandInterpreter.getInstance().command(data.commandOnUse);
}
@@ -192,12 +192,12 @@ public class InventoryScene extends UIScene {
boolean isInPoi = MapStage.getInstance().isInMap();
useButton.setDisabled(!(isInPoi&&data.usableInPoi||!isInPoi&&data.usableOnWorldMap));
if(data.manaNeeded==0)
if(data.shardsNeeded==0)
useButton.setText("Use");
else
useButton.setText("Use "+data.manaNeeded+"[+Mana]");
useButton.setText("Use "+data.shardsNeeded+"[+Shards]");
useButton.layout();
if(Current.player().getMana()<data.manaNeeded)
if(Current.player().getShards()<data.shardsNeeded)
useButton.setDisabled(true);
if(data.equipmentSlot==null|| data.equipmentSlot.equals(""))

View File

@@ -12,6 +12,8 @@ import com.github.tommyettinger.textra.TextraButton;
import com.github.tommyettinger.textra.TextraLabel;
import forge.Forge;
import forge.adventure.character.ShopActor;
import forge.adventure.data.RewardData;
import forge.adventure.data.ShopData;
import forge.adventure.player.AdventurePlayer;
import forge.adventure.pointofintrest.PointOfInterestChanges;
import forge.adventure.stage.GameHUD;
@@ -25,11 +27,14 @@ import forge.sound.SoundSystem;
* Displays the rewards of a fight or a treasure
*/
public class RewardScene extends UIScene {
private final TextraButton doneButton, detailButton;
private final TextraLabel goldLabel;
private TextraButton doneButton, detailButton, restockButton;
private TextraLabel shopNameLabel, playerGold, playerShards;
private ShopActor shopActor;
private static RewardScene object;
private PointOfInterestChanges changes;
public static RewardScene instance() {
if(object==null)
object=new RewardScene();
@@ -52,12 +57,16 @@ public class RewardScene extends UIScene {
super(Forge.isLandscapeMode() ? "ui/items.json" : "ui/items_portrait.json");
goldLabel=ui.findActor("gold");
playerGold = Controls.newAccountingLabel(ui.findActor("playerGold"), false);
playerShards = Controls.newAccountingLabel(ui.findActor("playerShards"),true);
shopNameLabel = ui.findActor("shopName");
ui.onButtonPress("done", () -> RewardScene.this.done());
ui.onButtonPress("detail",()->RewardScene.this.toggleToolTip());
ui.onButtonPress("restock",()-> RewardScene.this.restockShop());
detailButton = ui.findActor("detail");
detailButton.setVisible(false);
doneButton = ui.findActor("done");
restockButton = ui.findActor("restock");
}
@Override
@@ -221,11 +230,52 @@ public class RewardScene extends UIScene {
}
}
void updateRestockButton(){
if (!shopActor.canRestock())
return;
int price = shopActor.getRestockPrice();
restockButton.setText("Refresh\n " + price + "[+shards]");
restockButton.setDisabled(WorldSave.getCurrentSave().getPlayer().getShards() < price);
}
void restockShop(){
if (!shopActor.canRestock())
return;
int price = shopActor.getRestockPrice();
if(changes!=null)
changes.generateNewShopSeed(shopActor.getObjectId());
Current.player().takeShards(price);
Gdx.input.vibrate(5);
SoundSystem.instance.play(SoundEffectType.Shuffle, false);
updateBuyButtons();
if(changes==null)
return;
clearGenerated();
ShopData data = shopActor.getShopData();
Array<Reward> ret = new Array<>();
long shopSeed = changes.getShopSeed(shopActor.getObjectId());
WorldSave.getCurrentSave().getWorld().getRandom().setSeed(shopSeed);
for (RewardData rdata : new Array.ArrayIterator<>(data.rewards)) {
ret.addAll(rdata.generate(false));
}
shopActor.setRewardData(ret);
loadRewards(ret, RewardScene.Type.Shop,shopActor);
}
public void loadRewards(Array<Reward> newRewards, Type type, ShopActor shopActor) {
clearSelectable();
this.type = type;
doneClicked = false;
if (type==Type.Shop) {
this.shopActor = shopActor;
this.changes = shopActor.getMapStage().getChanges();
}
for (Actor actor : new Array.ArrayIterator<>(generated)) {
actor.remove();
if (actor instanceof RewardActor) {
@@ -234,15 +284,23 @@ public class RewardScene extends UIScene {
}
generated.clear();
Actor card = ui.findActor("cards");
if(type==Type.Shop) {
goldLabel.setText(Current.player().getGold()+"[+Gold]");
String shopName = shopActor.getDescription();
if (shopName != null && !shopName.isEmpty()) {
shopNameLabel.setVisible(true);
shopNameLabel.setText(shopName);
}
else
{
shopNameLabel.setVisible(false);
}
Actor background = ui.findActor("market_background");
if(background!=null)
background.setVisible(true);
} else {
goldLabel.setText("");
shopNameLabel.setVisible(false);
shopNameLabel.setText("");
Actor background = ui.findActor("market_background");
if(background!=null)
background.setVisible(false);
@@ -266,10 +324,24 @@ public class RewardScene extends UIScene {
switch (type) {
case Shop:
doneButton.setText(Forge.getLocalizer().getMessage("lblLeave"));
goldLabel.setText(Current.player().getGold()+"[+Gold]");
String shopName = shopActor.getDescription();
if ((shopName != null && !shopName.isEmpty())) {
shopNameLabel.setVisible(true);
shopNameLabel.setText(shopName);
}
if (shopActor.canRestock()) {
restockButton.setVisible(true);
}
else{
restockButton.setVisible(false);
restockButton.setDisabled(true);
}
break;
case Loot:
goldLabel.setText("");
shopNameLabel.setVisible(false);
shopNameLabel.setText("");
restockButton.setVisible(false);
doneButton.setText(Forge.getLocalizer().getMessage("lblDone"));
break;
}
@@ -334,7 +406,7 @@ public class RewardScene extends UIScene {
for (Reward reward : new Array.ArrayIterator<>(newRewards)) {
boolean skipCard = false;
if (type == Type.Shop) {
if (shopActor.getMapStage().getChanges().wasCardBought(shopActor.getObjectId(), i)) {
if (changes.wasCardBought(shopActor.getObjectId(), i)) {
skipCard = true;
}
}
@@ -354,7 +426,7 @@ public class RewardScene extends UIScene {
if (currentRow != ((i + 1) / numberOfColumns))
yOff += doneButton.getHeight();
BuyButton buyCardButton = new BuyButton(shopActor.getObjectId(), i, shopActor.isUnlimited()?null:shopActor.getMapStage().getChanges(), actor, doneButton);
BuyButton buyCardButton = new BuyButton(shopActor.getObjectId(), i, actor, doneButton, shopActor.getPriceModifier());
generated.add(buyCardButton);
if (!skipCard) {
stage.addActor(buyCardButton);
@@ -369,7 +441,10 @@ public class RewardScene extends UIScene {
}
i++;
}
updateBuyButtons();
if (type == Type.Shop) {
updateBuyButtons();
updateRestockButton();
}
}
@@ -380,11 +455,9 @@ public class RewardScene extends UIScene {
}
}
}
private class BuyButton extends TextraButton {
private final int objectID;
private final int index;
private final PointOfInterestChanges changes;
public RewardActor reward;
int price;
@@ -392,11 +465,10 @@ public class RewardScene extends UIScene {
setDisabled(WorldSave.getCurrentSave().getPlayer().getGold() < price);
}
public BuyButton(int id, int i, PointOfInterestChanges ch, RewardActor actor, TextraButton style) {
public BuyButton(int id, int i, RewardActor actor, TextraButton style, float shopModifier) {
super("", style.getStyle(),Controls.getTextraFont());
this.objectID = id;
this.index = i;
this.changes = ch;
reward = actor;
setHeight(style.getHeight());
setWidth(actor.getWidth());
@@ -404,13 +476,15 @@ public class RewardScene extends UIScene {
setY(actor.getY() - getHeight());
price = CardUtil.getRewardPrice(actor.getReward());
price *= Current.player().goldModifier();
price *= shopModifier;
setText(price+"[+Gold]");
addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
if (Current.player().getGold() >= price) {
if(changes!=null)
if(!shopActor.isUnlimited())
changes.buyCard(objectID, index);
Current.player().takeGold(price);
Current.player().addReward(reward.getReward());
@@ -418,7 +492,6 @@ public class RewardScene extends UIScene {
SoundSystem.instance.play(SoundEffectType.FlipCoin, false);
updateBuyButtons();
goldLabel.setText(AdventurePlayer.current().getGold()+"[+Gold]");
if(changes==null)
return;
setDisabled(true);

View File

@@ -0,0 +1,97 @@
package forge.adventure.scene;
import com.badlogic.gdx.scenes.scene2d.ui.Image;
import com.github.tommyettinger.textra.TextraButton;
import com.github.tommyettinger.textra.TextraLabel;
import forge.Forge;
import forge.adventure.stage.GameHUD;
import forge.adventure.util.Controls;
import forge.adventure.util.Current;
/**
* Scene for the Shard Trader in towns
*/
public class ShardTraderScene extends UIScene {
private static ShardTraderScene object;
public static final String spriteAtlas = "maps/tileset/buildings.atlas";
public static final String sprite = "ShardTrader";
public static ShardTraderScene instance() {
if(object==null)
object=new ShardTraderScene();
return object;
}
TextraButton buyShardsCost, sellShardsQuantity, leave;
Image leaveIcon;
private TextraLabel playerGold, playerShards;
int shardsToSell = 5;
int shardsToBuy = 5;
int shardPrice = Math.round(100 * Current.player().getDifficulty().shardSellRatio);
int shardCost = 100;
private ShardTraderScene() {
super(Forge.isLandscapeMode() ? "ui/shardtrader.json" : "ui/shardtrader_portrait.json");
buyShardsCost = ui.findActor("btnBuyShardsCost");
sellShardsQuantity = ui.findActor("btnSellShardsQuantity");
ui.onButtonPress("done", ShardTraderScene.this::done);
ui.onButtonPress("btnBuyShardsCost", ShardTraderScene.this::buyShards);
ui.onButtonPress("btnSellShardsQuantity", ShardTraderScene.this::sellShards);
leave = ui.findActor("done");
playerGold = Controls.newAccountingLabel(ui.findActor("playerGold"), false);
playerShards = Controls.newAccountingLabel(ui.findActor("playerShards"),true);
leaveIcon = ui.findActor("leaveIcon");
}
public void done() {
GameHUD.getInstance().getTouchpad().setVisible(false);
Forge.switchToLast();
}
public void buyShards() {
Current.player().addShards(shardsToBuy);
Current.player().takeGold(shardCost);
refreshStatus(-shardCost,shardsToBuy);
}
public void sellShards() {
Current.player().takeShards(shardsToSell);
Current.player().giveGold(shardPrice);
refreshStatus(shardPrice,-shardsToSell);
}
@Override
public void act(float delta) {
stage.act(delta);
}
@Override
public void render() {
super.render();
}
@Override
public void enter() {
super.enter();
refreshStatus(0,0);
}
private void refreshStatus(int goldAdded, int shardsAdded) {
int currentGold = Current.player().getGold();
int currentShards = Current.player().getShards();
shardPrice = Math.round(100 * Current.player().getDifficulty().shardSellRatio);
sellShardsQuantity.setDisabled(currentShards < shardsToSell);
buyShardsCost.setDisabled(currentGold < shardCost);
buyShardsCost.setText( "Buy " + shardsToBuy+ "[+Shards] for " + shardCost+"[+Gold]");
sellShardsQuantity.setText("Sell " +shardsToSell+"[+Shards] for " +shardPrice+"[+Gold]");
}
}

View File

@@ -12,10 +12,7 @@ import com.github.tommyettinger.textra.TextraLabel;
import forge.Forge;
import forge.StaticData;
import forge.adventure.data.RewardData;
import forge.adventure.util.Config;
import forge.adventure.util.Current;
import forge.adventure.util.Reward;
import forge.adventure.util.RewardActor;
import forge.adventure.util.*;
import forge.card.CardEdition;
import forge.card.ColorSet;
import forge.item.PaperCard;
@@ -38,8 +35,8 @@ public class SpellSmithScene extends UIScene {
}
private List<PaperCard> cardPool = new ArrayList<>();
private final TextraLabel goldLabel;
private final TextraButton pullButton;
private TextraLabel playerGold, playerShards, poolSize;
private final TextraButton pullUsingGold, pullUsingShards;
private final ScrollPane rewardDummy;
private RewardActor rewardActor;
SelectBox<CardEdition> editionList;
@@ -55,6 +52,7 @@ public class SpellSmithScene extends UIScene {
//Other
private final float basePrice = 125f;
private int currentPrice = 0;
private int currentShardPrice = 0;
private SpellSmithScene() { super(Forge.isLandscapeMode() ? "ui/spellsmith.json" : "ui/spellsmith_portrait.json");
@@ -68,7 +66,7 @@ public class SpellSmithScene extends UIScene {
.filter(input2 -> input2.getEdition().equals(input.getCode())).collect(Collectors.toList());
if(it.size()==0)
return false;
return(!Arrays.asList(Config.instance().getConfigData().restrictedEditions).contains(input.getCode()));
return (!Arrays.asList(Config.instance().getConfigData().restrictedEditions).contains(input.getCode()));
}).collect(Collectors.toList());
editionList = ui.findActor("BSelectPlane");
rewardDummy = ui.findActor("RewardDummy");
@@ -86,44 +84,47 @@ public class SpellSmithScene extends UIScene {
}
});
goldLabel = ui.findActor("gold");
pullButton = ui.findActor("pull");
pullButton.setDisabled(true);
goldLabel.setText("Gold: "+ Current.player().getGold());
for(String i : new String[]{"BBlack", "BBlue", "BGreen", "BRed", "BWhite", "BColorless"} ){
pullUsingGold = ui.findActor("pullUsingGold");
pullUsingGold.setDisabled(true);
pullUsingShards = ui.findActor("pullUsingShards");
pullUsingShards.setDisabled(true);
playerGold = Controls.newAccountingLabel(ui.findActor("playerGold"), false);
playerShards = Controls.newAccountingLabel(ui.findActor("playerShards"),true);
poolSize = ui.findActor("poolSize");
for (String i : new String[]{"BBlack", "BBlue", "BGreen", "BRed", "BWhite", "BColorless"}) {
TextraButton button = ui.findActor(i);
if(button != null){
if (button != null) {
colorButtons.put(i, button);
button.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y){
public void clicked(InputEvent event, float x, float y) {
selectColor(i);
filterResults();
}
});
}
}
for(String i : new String[]{"BCommon", "BUncommon", "BRare", "BMythic"} ){
for (String i : new String[]{"BCommon", "BUncommon", "BRare", "BMythic"}) {
TextraButton button = ui.findActor(i);
if(button != null) {
if (button != null) {
rarityButtons.put(i, button);
button.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
if(selectRarity(i)) button.setColor(Color.RED);
if (selectRarity(i)) button.setColor(Color.RED);
filterResults();
}
});
}
}
for(String i : new String[]{"B02", "B35", "B68", "B9X"} ){
for (String i : new String[]{"B02", "B35", "B68", "B9X"}) {
TextraButton button = ui.findActor(i);
if(button != null) {
if (button != null) {
costButtons.put(i, button);
button.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
if(selectCost(i)) button.setColor(Color.RED);
if (selectCost(i)) button.setColor(Color.RED);
filterResults();
}
});
@@ -131,7 +132,8 @@ public class SpellSmithScene extends UIScene {
}
ui.onButtonPress("done", () -> SpellSmithScene.this.done());
ui.onButtonPress("pull", () -> SpellSmithScene.this.pullCard());
ui.onButtonPress("pullUsingGold", () -> SpellSmithScene.this.pullCard(false));
ui.onButtonPress("pullUsingShards", () -> SpellSmithScene.this.pullCard(true));
ui.onButtonPress("BResetEdition", () -> {
editionList.setColor(Color.WHITE);
edition = "";
@@ -141,39 +143,57 @@ public class SpellSmithScene extends UIScene {
public boolean done() {
if(rewardActor != null) rewardActor.remove();
if (rewardActor != null) rewardActor.remove();
cardPool.clear(); //Get rid of cardPool, filtering is fast enough to justify keeping it cached.
Forge.switchToLast();
return true;
}
private boolean selectRarity(String what){
for(Map.Entry<String, TextraButton> B : rarityButtons.entrySet())
private boolean selectRarity(String what) {
for (Map.Entry<String, TextraButton> B : rarityButtons.entrySet())
B.getValue().setColor(Color.WHITE);
switch(what){
switch (what) {
case "BCommon":
if(rarity.equals("C")) { rarity = ""; return false; }
rarity = "C"; break;
if (rarity.equals("C")) {
rarity = "";
return false;
}
rarity = "C";
break;
case "BUncommon":
if(rarity.equals("U")) { rarity = ""; return false; }
rarity = "U"; break;
if (rarity.equals("U")) {
rarity = "";
return false;
}
rarity = "U";
break;
case "BRare":
if(rarity.equals("R")) { rarity = ""; return false; }
rarity = "R"; break;
if (rarity.equals("R")) {
rarity = "";
return false;
}
rarity = "R";
break;
case "BMythic":
if(rarity.equals("M")) { rarity = ""; return false; }
rarity = "M"; break;
if (rarity.equals("M")) {
rarity = "";
return false;
}
rarity = "M";
break;
default:
rarity = ""; break;
rarity = "";
break;
}
return true;
}
private void selectColor(String what){
private void selectColor(String what) {
TextraButton B = colorButtons.get(what);
switch(what){
switch (what) {
case "BColorless":
if(B.getColor().equals(Color.RED)) B.setColor(Color.WHITE); else {
if (B.getColor().equals(Color.RED)) B.setColor(Color.WHITE);
else {
for (Map.Entry<String, TextraButton> BT : colorButtons.entrySet())
BT.getValue().setColor(Color.WHITE);
B.setColor(Color.RED);
@@ -184,45 +204,71 @@ public class SpellSmithScene extends UIScene {
case "BGreen":
case "BRed":
case "BWhite":
if(B.getColor().equals(Color.RED)) B.setColor(Color.WHITE); else B.setColor(Color.RED);
if (B.getColor().equals(Color.RED)) B.setColor(Color.WHITE);
else B.setColor(Color.RED);
break;
}
}
private boolean selectCost(String what){
for(Map.Entry<String, TextraButton> B : costButtons.entrySet())
private boolean selectCost(String what) {
for (Map.Entry<String, TextraButton> B : costButtons.entrySet())
B.getValue().setColor(Color.WHITE);
switch(what){
switch (what) {
case "B02":
if(cost_low == 0 && cost_high == 2) { cost_low = -1; cost_high = 9999; return false; }
cost_low = 0; cost_high = 2; break;
if (cost_low == 0 && cost_high == 2) {
cost_low = -1;
cost_high = 9999;
return false;
}
cost_low = 0;
cost_high = 2;
break;
case "B35":
if(cost_low == 3 && cost_high == 5) { cost_low = -1; cost_high = 9999; return false; }
cost_low = 3; cost_high = 5; break;
if (cost_low == 3 && cost_high == 5) {
cost_low = -1;
cost_high = 9999;
return false;
}
cost_low = 3;
cost_high = 5;
break;
case "B68":
if(cost_low == 6 && cost_high == 8) { cost_low = -1; cost_high = 9999; return false; }
cost_low = 6; cost_high = 8; break;
if (cost_low == 6 && cost_high == 8) {
cost_low = -1;
cost_high = 9999;
return false;
}
cost_low = 6;
cost_high = 8;
break;
case "B9X":
if(cost_low == 9 && cost_high == 9999) { cost_low = -1; cost_high = 9999; return false; }
cost_low = 9; cost_high = 9999; break;
if (cost_low == 9 && cost_high == 9999) {
cost_low = -1;
cost_high = 9999;
return false;
}
cost_low = 9;
cost_high = 9999;
break;
default:
cost_low = -1; break;
cost_low = -1;
break;
}
return true;
}
@Override
public void enter(){
public void enter() {
edition = "";
cost_low = -1; cost_high = 9999;
cost_low = -1;
cost_high = 9999;
rarity = "";
currentPrice = (int)basePrice;
goldLabel.setText(Current.player().getGold()+"[+Gold]");
currentPrice = (int) basePrice;
for(Map.Entry<String, TextraButton> B : colorButtons.entrySet()) B.getValue().setColor(Color.WHITE);
for(Map.Entry<String, TextraButton> B : costButtons.entrySet()) B.getValue().setColor(Color.WHITE);
for(Map.Entry<String, TextraButton> B : rarityButtons.entrySet()) B.getValue().setColor(Color.WHITE);
for (Map.Entry<String, TextraButton> B : colorButtons.entrySet()) B.getValue().setColor(Color.WHITE);
for (Map.Entry<String, TextraButton> B : costButtons.entrySet()) B.getValue().setColor(Color.WHITE);
for (Map.Entry<String, TextraButton> B : rarityButtons.entrySet()) B.getValue().setColor(Color.WHITE);
editionList.setColor(Color.WHITE);
filterResults();
super.enter();
@@ -231,28 +277,27 @@ public class SpellSmithScene extends UIScene {
public void filterResults() {
Iterable<PaperCard> P = RewardData.getAllCards();
goldLabel.setText( Current.player().getGold()+"[+Gold]");
float totalCost = basePrice * Current.player().goldModifier();
final List<String> colorFilter = new ArrayList<>();
for(Map.Entry<String, TextraButton> B : colorButtons.entrySet())
switch (B.getKey()){
for (Map.Entry<String, TextraButton> B : colorButtons.entrySet())
switch (B.getKey()) {
case "BColorless":
if(B.getValue().getColor().equals(Color.RED)) colorFilter.add("Colorless");
if (B.getValue().getColor().equals(Color.RED)) colorFilter.add("Colorless");
continue;
case "BBlack":
if(B.getValue().getColor().equals(Color.RED)) colorFilter.add("Black");
if (B.getValue().getColor().equals(Color.RED)) colorFilter.add("Black");
break;
case "BBlue":
if(B.getValue().getColor().equals(Color.RED)) colorFilter.add("Blue");
if (B.getValue().getColor().equals(Color.RED)) colorFilter.add("Blue");
break;
case "BGreen":
if(B.getValue().getColor().equals(Color.RED)) colorFilter.add("Green");
if (B.getValue().getColor().equals(Color.RED)) colorFilter.add("Green");
break;
case "BRed":
if(B.getValue().getColor().equals(Color.RED)) colorFilter.add("Red");
if (B.getValue().getColor().equals(Color.RED)) colorFilter.add("Red");
break;
case "BWhite":
if(B.getValue().getColor().equals(Color.RED)) colorFilter.add("White");
if (B.getValue().getColor().equals(Color.RED)) colorFilter.add("White");
break;
}
P = StreamSupport.stream(P.spliterator(), false).filter(input -> {
@@ -260,43 +305,63 @@ public class SpellSmithScene extends UIScene {
if (input == null) return false;
final CardEdition cardEdition = FModel.getMagicDb().getEditions().get(edition);
if(cardEdition!=null&&cardEdition.getCardInSet(input.getName()).size()==0) return false;
if(colorFilter.size() > 0) if(input.getRules().getColor() != ColorSet.fromNames(colorFilter)) return false;
if(!rarity.isEmpty()) if (!input.getRarity().toString().equals(rarity)) return false;
if(cost_low > -1) {
if (cardEdition != null && cardEdition.getCardInSet(input.getName()).size() == 0) return false;
if (colorFilter.size() > 0)
if (input.getRules().getColor() != ColorSet.fromNames(colorFilter)) return false;
if (!rarity.isEmpty()) if (!input.getRarity().toString().equals(rarity)) return false;
if (cost_low > -1) {
if (!(input.getRules().getManaCost().getCMC() >= cost_low && input.getRules().getManaCost().getCMC() <= cost_high))
return false;
}
return true;
}).collect(Collectors.toList());
//Stream method is very fast, might not be necessary to precache anything.
if(!edition.isEmpty()) totalCost *= 4.0f; //Edition select cost multiplier. This is a huge factor, so it's most expensive.
if(colorFilter.size() > 0) totalCost *= Math.min(colorFilter.size() * 2.5f, 6.0f); //Color filter cost multiplier.
if(!rarity.isEmpty()){ //Rarity cost multiplier.
switch(rarity){
case "C": totalCost *= 1.5f; break;
case "U": totalCost *= 2.5f; break;
case "R": totalCost *= 4.0f; break;
case "M": totalCost *= 5.5f; break;
default: break;
if (!edition.isEmpty())
totalCost *= 4.0f; //Edition select cost multiplier. This is a huge factor, so it's most expensive.
if (colorFilter.size() > 0)
totalCost *= Math.min(colorFilter.size() * 2.5f, 6.0f); //Color filter cost multiplier.
if (!rarity.isEmpty()) { //Rarity cost multiplier.
switch (rarity) {
case "C":
totalCost *= 1.5f;
break;
case "U":
totalCost *= 2.5f;
break;
case "R":
totalCost *= 4.0f;
break;
case "M":
totalCost *= 5.5f;
break;
default:
break;
}
}
if(cost_low > -1) totalCost *= 2.5f; //And CMC cost multiplier.
if (cost_low > -1) totalCost *= 2.5f; //And CMC cost multiplier.
cardPool = StreamSupport.stream(P.spliterator(), false).collect(Collectors.toList());
pullButton.setText("Pull (" + cardPool.size() + ") " + totalCost + "G");
currentPrice = (int)totalCost;
pullButton.setDisabled(false);
if(!(cardPool.size() > 0) || Current.player().getGold() < totalCost)
pullButton.setDisabled(true);
poolSize.setText(((cardPool.size() > 0 ? "[LIME]" : "[RED]")) + cardPool.size() + " possible card" + (cardPool.size() != 1 ? "s" : ""));
currentPrice = (int) totalCost;
currentShardPrice = (int) (totalCost * 0.2f); //Intentionally rounding up via the cast to int
pullUsingGold.setText("Pull: " + currentPrice + "[+gold]");
pullUsingShards.setText("Pull: " + currentShardPrice + "[+shards]");
pullUsingGold.setDisabled(!(cardPool.size() > 0) || Current.player().getGold() < totalCost);
pullUsingShards.setDisabled(!(cardPool.size() > 0) || Current.player().getShards() < currentShardPrice);
}
public void pullCard() {
public void pullCard(boolean usingShards) {
PaperCard P = cardPool.get(MyRandom.getRandom().nextInt(cardPool.size())); //Don't use the standard RNG.
Reward R = new Reward(P);
Current.player().addReward(R);
Current.player().takeGold(currentPrice);
if(Current.player().getGold() < currentPrice) pullButton.setDisabled(true);
if(rewardActor != null) rewardActor.remove();
if (usingShards) {
Current.player().takeShards(currentShardPrice);
} else {
Current.player().takeGold(currentPrice);
}
if (Current.player().getGold() < currentPrice) pullUsingGold.setDisabled(true);
if (Current.player().getShards() < currentShardPrice) pullUsingShards.setDisabled(true);
if (rewardActor != null) rewardActor.remove();
rewardActor = new RewardActor(R, true);
rewardActor.flip(); //Make it flip so it draws visual attention, why not.
rewardActor.setBounds(rewardDummy.getX(), rewardDummy.getY(), rewardDummy.getWidth(), rewardDummy.getHeight());

View File

@@ -154,7 +154,7 @@ public static ConsoleCommandInterpreter getInstance()
Current.player().giveGold(amount);
return "Added "+amount+" gold";
});
registerCommand(new String[]{"give", "mana"}, s -> {
registerCommand(new String[]{"give", "shards"}, s -> {
if(s.length<1) return "Command needs 1 parameter: Amount.";
int amount;
try {
@@ -163,8 +163,8 @@ public static ConsoleCommandInterpreter getInstance()
catch (Exception e) {
return "Can not convert " + s[0] + " to number";
}
Current.player().addMaxMana(amount);
return "Added " + amount + " max mana";
Current.player().addShards(amount);
return "Added " + amount + " shards";
});
registerCommand(new String[]{"give", "life"}, s -> {
if(s.length<1) return "Command needs 1 parameter: Amount.";
@@ -279,26 +279,26 @@ public static ConsoleCommandInterpreter getInstance()
return "Player healed to " + Current.player().getLife() + "/" + Current.player().getMaxLife();
});
registerCommand(new String[]{"getMana", "amount"}, s -> {
registerCommand(new String[]{"getShards", "amount"}, s -> {
if(s.length<1) return "Command needs 1 parameter: Amount";
int value;
try { value = Integer.parseInt(s[0]); }
catch (Exception e) { return "Can not convert " + s[0] + " to integer"; }
Current.player().addMana(value);
return "Player healed to " + Current.player().getLife() + "/" + Current.player().getMaxLife();
});
registerCommand(new String[]{"getMana", "percent"}, s -> {
if(s.length<1) return "Command needs 1 parameter: Amount";
float value = 0;
try { value = Float.parseFloat(s[0]); }
catch (Exception e) { return "Can not convert " + s[0] + " to integer"; }
Current.player().addManaPercent(value);
return "Player healed to " + Current.player().getLife() + "/" + Current.player().getMaxLife();
});
registerCommand(new String[]{"getMana", "full"}, s -> {
Current.player().addManaPercent(1.0f);
return "Player healed to " + Current.player().getLife() + "/" + Current.player().getMaxLife();
Current.player().addShards(value);
return "Player now has " + Current.player().getShards() + " shards";
});
// registerCommand(new String[]{"getMana", "percent"}, s -> {
// if(s.length<1) return "Command needs 1 parameter: Amount";
// float value = 0;
// try { value = Float.parseFloat(s[0]); }
// catch (Exception e) { return "Can not convert " + s[0] + " to integer"; }
// Current.player().addManaPercent(value);
// return "Player healed to " + Current.player().getLife() + "/" + Current.player().getMaxLife();
// });
// registerCommand(new String[]{"getMana", "full"}, s -> {
// Current.player().addManaPercent(1.0f);
// return "Player healed to " + Current.player().getLife() + "/" + Current.player().getMaxLife();
// });
registerCommand(new String[]{"debug","map"}, s -> {
GameHUD.getInstance().setDebug(true);
return "Debug map ON";
@@ -356,7 +356,7 @@ public static ConsoleCommandInterpreter getInstance()
if(!MapStage.getInstance().isInMap())
return "Only supported for PoI";
MapStage.getInstance().deleteObject(id);
return "Femoved enemy "+s[0];
return "Removed enemy "+s[0];
});
}
}

View File

@@ -45,7 +45,7 @@ public class GameHUD extends Stage {
private final Image miniMapPlayer;
private final TextraLabel lifePoints;
private final TextraLabel money;
private final TextraLabel mana;
private final TextraLabel shards;
private final Image miniMap, gamehud, mapborder, avatarborder, blank;
private final InputEvent eventTouchDown;
private final InputEvent eventTouchUp;
@@ -120,12 +120,12 @@ public class GameHUD extends Stage {
ui.onButtonPress("deck", () -> openDeck());
ui.onButtonPress("exittoworldmap", () -> exitToWorldMap());
lifePoints = ui.findActor("lifePoints");
mana = ui.findActor("mana");
shards = ui.findActor("shards");
money = ui.findActor("money");
mana.setText("{Scale=80%}0/0");
shards.setText("{Scale=80%}0/0");
lifePoints.setText("{Scale=80%}20/20");
AdventurePlayer.current().onLifeChange(() -> lifePoints.setText("{Scale=80%}"+AdventurePlayer.current().getLife() + "/" + AdventurePlayer.current().getMaxLife()));
AdventurePlayer.current().onManaChange(() -> mana.setText("{Scale=80%}"+AdventurePlayer.current().getMana() + "/" + AdventurePlayer.current().getMaxMana()));
AdventurePlayer.current().onShardsChange(() -> shards.setText("{Scale=80%}"+AdventurePlayer.current().getShards()));
WorldSave.getCurrentSave().getPlayer().onGoldChange(() -> money.setText("{Scale=80%}"+String.valueOf(AdventurePlayer.current().getGold())));
addActor(ui);
@@ -219,7 +219,7 @@ public class GameHUD extends Stage {
&& !(Controls.actorContainsVector(openMapActor, touch)) //not inside openmap button
&& !(Controls.actorContainsVector(statsActor, touch)) //not inside stats button
&& !(Controls.actorContainsVector(inventoryActor, touch)) //not inside inventory button
&& !(Controls.actorContainsVector(exitToWorldMapActor, touch)) //not inside deck button
&& !(Controls.actorContainsVector(exitToWorldMapActor, touch)) //not inside exit button
&& (Controls.actorContainsVector(ui, touch)) //inside display bounds
&& pointer < 1) { //not more than 1 pointer
touchpad.setBounds(touch.x - TOUCHPAD_SCALE / 2, touch.y - TOUCHPAD_SCALE / 2, TOUCHPAD_SCALE, TOUCHPAD_SCALE);
@@ -349,7 +349,7 @@ public class GameHUD extends Stage {
setVisibility(miniMapPlayer, visible);
setVisibility(gamehud, visible);
setVisibility(lifePoints, visible);
setVisibility(mana, visible);
setVisibility(shards, visible);
setVisibility(money, visible);
setVisibility(blank, visible);
setVisibility(exitToWorldMapActor, GameScene.instance().isInDungeonOrCave());

View File

@@ -46,6 +46,7 @@ import forge.sound.SoundEffectType;
import forge.sound.SoundSystem;
import java.util.Map;
import java.util.Random;
/**
@@ -380,9 +381,9 @@ public class MapStage extends GameStage {
if (difficultyData.spawnRank == 0 && !spawnEasy) return false;
return true;
}
private void loadObjects(MapLayer layer, String sourceMap) {
player.setMoveModifier(2);
Array<String> shopsAlreadyPresent = new Array<>();
for (MapObject obj : layer.getObjects()) {
MapProperties prop = obj.getProperties();
String type = prop.get("type", String.class);
@@ -392,6 +393,8 @@ public class MapStage extends GameStage {
continue;
boolean hidden = !obj.isVisible(); //Check if the object is invisible.
String rotatingShop = "";
switch (type) {
case "entry":
float x = Float.parseFloat(prop.get("x").toString());
@@ -475,6 +478,21 @@ public class MapStage extends GameStage {
case "spellsmith":
addMapActor(obj, new OnCollide(() -> Forge.switchScene(SpellSmithScene.instance())));
break;
case "shardtrader":
MapActor shardTraderActor = new OnCollide(() -> Forge.switchScene(ShardTraderScene.instance()));
addMapActor(obj, shardTraderActor);
if (prop.containsKey("hasSign") && Boolean.parseBoolean(prop.get("hasSign").toString()) && prop.containsKey("signYOffset") && prop.containsKey("signXOffset")) {
try {
TextureSprite sprite = new TextureSprite(Config.instance().getAtlas(ShardTraderScene.spriteAtlas).createSprite(ShardTraderScene.sprite));
sprite.setX(shardTraderActor.getX() + Float.parseFloat(prop.get("signXOffset").toString()));
sprite.setY(shardTraderActor.getY() + Float.parseFloat(prop.get("signYOffset").toString()));
addMapActor(sprite);
} catch (Exception e) {
System.err.print("Can not create Texture for Shard Trader");
}
}
break;
case "arena":
addMapActor(obj, new OnCollide(() -> {
ArenaData arenaData = JSONStringLoader.parse(ArenaData.class, prop.get("arena").toString(), "");
@@ -496,10 +514,98 @@ public class MapStage extends GameStage {
addMapActor(obj, dialog);
}
break;
case "quest":
DialogActor dialog;
if (prop.containsKey("questtype")){
TiledMapTileMapObject tiledObj = (TiledMapTileMapObject) obj;
String questOrigin = prop.containsKey("questtype") ? prop.get("questtype").toString() : "";
String placeholderText = "[" +
" {" +
" \"name\":\"Quest Offer\"," +
" \"text\":\"Please, help us!\\n((QUEST DESCRIPTION))\"," +
" \"condition\":[]," +
" \"options\":[" +
" { \"name\":\"No, I'm not ready yet.\nMaybe next snapshot.\" }," +
" ]" +
" }" +
"]";
{
dialog = new DialogActor(this, id, placeholderText,tiledObj.getTextureRegion());
}
dialog.setVisible(false);
addMapActor(obj, dialog);
}
break;
case "Rotating":
String rotation = "";
if (prop.containsKey("rotation")) {
rotation = prop.get("rotation").toString();
}
Array<String> possibleShops = new Array<>(rotation.split(","));
if (possibleShops.size > 0){
long rotatingRandomSeed = WorldSave.getCurrentSave().getWorld().getRandom().nextLong() + java.time.LocalDate.now().toEpochDay();
Random rotatingShopRandom = new Random(rotatingRandomSeed);
rotatingShop = possibleShops.get(rotatingShopRandom.nextInt(possibleShops.size));
changes.setRotatingShopSeed(id, rotatingRandomSeed);
}
//Intentionally not breaking here.
//Flow continues into "shop" case with above data overriding base logic.
case "shop":
String shopList = prop.get("shopList").toString();
shopList = shopList.replaceAll("\\s", "");
Array<String> possibleShops = new Array<>(shopList.split(","));
int restockPrice = 0;
String shopList = "";
boolean isRotatingShop = !rotatingShop.isEmpty();
if (isRotatingShop){
shopList = rotatingShop;
restockPrice = 7;
}
else{
int rarity = WorldSave.getCurrentSave().getWorld().getRandom().nextInt(100);
if (rarity > 95 & prop.containsKey("mythicShopList")) {
shopList = prop.get("mythicShopList").toString();
restockPrice = 5;
}
if (shopList.isEmpty() && (rarity > 85 & prop.containsKey("rareShopList"))) {
shopList = prop.get("rareShopList").toString();
restockPrice = 4;
}
if (shopList.isEmpty() && (rarity > 55 & prop.containsKey("uncommonShopList"))) {
shopList = prop.get("uncommonShopList").toString();
restockPrice = 3;
}
if (shopList.isEmpty() && prop.containsKey("commonShopList")) {
shopList = prop.get("commonShopList").toString();
restockPrice = 2;
}
if (shopList.trim().isEmpty() && prop.containsKey("shopList")) {
shopList = prop.get("shopList").toString(); //removed but included to not break existing custom planes
restockPrice = 0; //Tied to restock button
}
shopList = shopList.replaceAll("\\s", "");
}
if (prop.containsKey("noRestock") && (boolean)prop.get("noRestock")){
restockPrice = 0;
}
possibleShops = new Array<>(shopList.split(","));
Array<String> filteredPossibleShops = possibleShops;
if (!isRotatingShop)
filteredPossibleShops.removeAll(shopsAlreadyPresent, false);
if (filteredPossibleShops.notEmpty()){
possibleShops = filteredPossibleShops;
}
Array<ShopData> shops;
if (possibleShops.size == 0 || shopList.equals(""))
shops = WorldData.getShopList();
@@ -507,6 +613,7 @@ public class MapStage extends GameStage {
shops = new Array<>();
for (ShopData data : new Array.ArrayIterator<>(WorldData.getShopList())) {
if (possibleShops.contains(data.name, false)) {
data.restockPrice = restockPrice;
shops.add(data);
}
}
@@ -514,18 +621,27 @@ public class MapStage extends GameStage {
if (shops.size == 0) continue;
ShopData data = shops.get(WorldSave.getCurrentSave().getWorld().getRandom().nextInt(shops.size));
shopsAlreadyPresent.add(data.name);
Array<Reward> ret = new Array<>();
WorldSave.getCurrentSave().getWorld().getRandom().setSeed(changes.getShopSeed(id));
for (RewardData rdata : new Array.ArrayIterator<>(data.rewards)) {
ret.addAll(rdata.generate(false));
}
ShopActor actor = new ShopActor(this, id, ret, data.unlimited);
ShopActor actor = new ShopActor(this, id, ret, data);
addMapActor(obj, actor);
if (prop.containsKey("signYOffset") && prop.containsKey("signXOffset")) {
if (prop.containsKey("hasSign") && (boolean)prop.get("hasSign") && prop.containsKey("signYOffset") && prop.containsKey("signXOffset")) {
try {
TextureSprite sprite = new TextureSprite(Config.instance().getAtlas(data.spriteAtlas).createSprite(data.sprite));
sprite.setX(actor.getX() + Float.parseFloat(prop.get("signXOffset").toString()));
sprite.setY(actor.getY() + Float.parseFloat(prop.get("signYOffset").toString()));
addMapActor(sprite);
if (!(data.overlaySprite == null | data.overlaySprite.isEmpty())){
TextureSprite overlay = new TextureSprite(Config.instance().getAtlas(data.spriteAtlas).createSprite(data.overlaySprite));
overlay.setX(actor.getX() + Float.parseFloat(prop.get("signXOffset").toString()));
overlay.setY(actor.getY() + Float.parseFloat(prop.get("signYOffset").toString()));
addMapActor(overlay);
}
} catch (Exception e) {
System.err.print("Can not create Texture for " + data.sprite + " Obj:" + data);
}

View File

@@ -19,10 +19,7 @@ import forge.item.PaperCard;
import forge.model.FModel;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.*;
import java.util.regex.Pattern;
import static forge.adventure.data.RewardData.generateAllCards;
@@ -48,9 +45,11 @@ public class CardUtil {
private final List<Integer> manaCosts =new ArrayList<>();
private final Pattern text;
private final boolean matchAllSubTypes;
private final boolean matchAllColors;
private int colors;
private final ColorType colorType;
private final boolean shouldBeEqual;
private final List<String> deckNeeds=new ArrayList<>();
@Override
public boolean apply(final PaperCard card) {
@@ -63,6 +62,14 @@ public class CardUtil {
if(this.text!=null&& !this.text.matcher(card.getRules().getOracleText()).find())
return !this.shouldBeEqual;
if(this.matchAllColors)
{
if(!card.getRules().getColor().hasAllColors(this.colors))
{
return !this.shouldBeEqual;
}
}
if(this.colors!= MagicColor.ALL_COLORS)
{
if(!card.getRules().getColor().hasNoColorsExcept(this.colors)||(this.colors != MagicColor.COLORLESS && card.getRules().getColor().isColorless()))
@@ -162,6 +169,28 @@ public class CardUtil {
return !this.shouldBeEqual;
}
if(!this.deckNeeds.isEmpty())
{
boolean found = false;
for(String need:this.deckNeeds)
{
//FormatExpected: X$Y, where X is DeckHints.Type and Y is a string descriptor
String[] parts = need.split("\\$");
if (parts.length != 2){
continue;
}
DeckHints.Type t = DeckHints.Type.valueOf(parts[0].toUpperCase());
DeckHints hints = card.getRules().getAiHints().getDeckHints();
if (hints != null && hints.contains(t, parts[1])){
found=true;
break;
}
}
if(!found)
return !this.shouldBeEqual;
}
return this.shouldBeEqual;
@@ -169,6 +198,7 @@ public class CardUtil {
public CardPredicate(final RewardData type, final boolean wantEqual) {
this.matchAllSubTypes=type.matchAllSubTypes;
this.matchAllColors=type.matchAllColors;
this.shouldBeEqual = wantEqual;
for(int i=0;type.manaCosts!=null&&i<type.manaCosts.length;i++)
manaCosts.add(type.manaCosts[i]);
@@ -227,34 +257,39 @@ public class CardUtil {
{
this.colorType=ColorType.Any;
}
if(type.deckNeeds!=null&&type.deckNeeds.length!=0){
deckNeeds.addAll(Arrays.asList(type.deckNeeds));
}
}
}
public static List<PaperCard> getPredicateResult(Iterable<PaperCard> cards,final RewardData data)
{
List<PaperCard> result = new ArrayList<>();
CardPredicate pre = new CardPredicate(data, true);
java.util.Map<String, String> tempMap = new HashMap<>();
for (final PaperCard item : cards)
{
if(pre.apply(item))
result.add(item);
}
return result;
}
public static List<PaperCard> generateCards(Iterable<PaperCard> cards,final RewardData data, final int count)
{
final List<PaperCard> result = new ArrayList<>();
for (int i=0;i<count;i++) {
CardPredicate pre=new CardPredicate(data, true);
PaperCard card = null;
int lowest = Integer.MAX_VALUE;
for (final PaperCard item : cards)
{
if(!pre.apply(item))
continue;
int next = WorldSave.getCurrentSave().getWorld().getRandom().nextInt();
if(next < lowest) {
lowest = next;
card = item;
List<PaperCard> pool = getPredicateResult(cards, data);
if (pool.size() > 0) {
for (int i = 0; i < count; i++) {
PaperCard candidate = pool.get(WorldSave.getCurrentSave().getWorld().getRandom().nextInt(pool.size()));
if (candidate != null) {
result.add(candidate);
}
}
if (card != null )
result.add(card);
}
return result;
}
public static int getCardPrice(PaperCard card)
@@ -286,7 +321,7 @@ public class CardUtil {
return reward.getItem().cost;
if(reward.getType()== Reward.Type.Life)
return reward.getCount()*500;
if(reward.getType()== Reward.Type.Mana)
if(reward.getType()== Reward.Type.Shards)
return reward.getCount()*500;
if(reward.getType()== Reward.Type.Gold)
return reward.getCount();
@@ -320,15 +355,13 @@ public class CardUtil {
case MagicColor.RED: targetName = "Mountain";break;
case MagicColor.GREEN: targetName = "Forest"; break;
}
if(jumpStartSheetsCandidates==null)
jumpStartSheetsCandidates=new ArrayList<>();
for(PrintSheet sheet : StaticData.instance().getPrintSheets())
{
jumpStartSheetsCandidates=new ArrayList<>();
for(PrintSheet sheet : StaticData.instance().getPrintSheets())
if(sheet.containsCardNamed(targetName,3) && sheet.getName().startsWith("JMP") && sheet.all().size() == 20)//dodge the rainbow jumpstart sheet and the sheet for every card
{
if(sheet.containsCardNamed(targetName,3) && sheet.getName().startsWith("JMP") && sheet.all().size() == 20)//dodge the rainbow jumpstart sheet and the sheet for every card
{
jumpStartSheetsCandidates.add(sheet);
}
jumpStartSheetsCandidates.add(sheet);
}
}
PrintSheet sheet=jumpStartSheetsCandidates.get(Current.world().getRandom().nextInt(jumpStartSheetsCandidates.size()));

View File

@@ -4,10 +4,13 @@ import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.TextureAtlas;
import com.badlogic.gdx.math.Interpolation;
import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.scenes.scene2d.Actor;
import com.badlogic.gdx.scenes.scene2d.InputEvent;
import com.badlogic.gdx.scenes.scene2d.actions.Actions;
import com.badlogic.gdx.scenes.scene2d.actions.SequenceAction;
import com.badlogic.gdx.scenes.scene2d.ui.*;
import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener;
import com.badlogic.gdx.scenes.scene2d.utils.ClickListener;
@@ -15,11 +18,13 @@ import com.badlogic.gdx.scenes.scene2d.utils.Drawable;
import com.badlogic.gdx.utils.Align;
import com.badlogic.gdx.utils.Array;
import com.badlogic.gdx.utils.Null;
import com.badlogic.gdx.utils.Timer;
import com.github.tommyettinger.textra.Font;
import com.github.tommyettinger.textra.TextraButton;
import com.github.tommyettinger.textra.TextraLabel;
import com.github.tommyettinger.textra.TypingLabel;
import forge.Forge;
import forge.adventure.player.AdventurePlayer;
import forge.card.ColorSet;
import java.util.function.Function;
@@ -404,4 +409,121 @@ public class Controls {
}
static public class AccountingLabel extends TextraLabel {
private TextraLabel label;
private final TextraLabel placeholder;
private String currencyIcon;
private boolean isShards;
private int currencyAmount;
private float animationDelay = 2f; //seconds to wait before replacing intermediate label
private final String NEGDECOR = "[RED]-";
private final String POSDECOR = "[GREEN]+";
private final Timer t = new Timer();
public AccountingLabel(TextraLabel target, boolean isShards) {
target.setVisible(false);
placeholder = target;
label = Controls.newTextraLabel(target.getName()+"Replacement");
currencyAmount = isShards?Current.player().getShards():Current.player().getGold();
this.isShards = isShards;
if (isShards){
currencyAmount = Current.player().getShards();
currencyIcon = "[+Shards]";
Current.player().onShardsChange(() -> update(AdventurePlayer.current().getShards(),true));
}
else {
currencyAmount = Current.player().getGold();
currencyIcon = "[+Gold]";
Current.player().onGoldChange(() -> update(AdventurePlayer.current().getGold(),true));
}
label.setText(getLabelText(currencyAmount));
setName(label.getName());
replaceLabel(label);
}
public void setAnimationDelay(float animationDelay) {
this.animationDelay = animationDelay;
}
public float getAnimationDelay() {
return animationDelay;
}
public void update(int newAmount){
update(newAmount, false);
}
public void update(int newAmount, boolean animate){
if (animate) {
TextraLabel temporaryLabel = getUpdateLabel(newAmount);
currencyAmount = newAmount;
replaceLabel(temporaryLabel);
t.schedule(new AccountingLabelUpdater(temporaryLabel), animationDelay);
}
else{
currencyAmount = newAmount;
drawFinalLabel(false);
}
}
private void drawFinalLabel(boolean fadeIn){
TextraLabel finalLabel = getDefaultLabel();
if (fadeIn) {
SequenceAction sequence = new SequenceAction();
sequence.addAction(Actions.alpha(0.5f));
sequence.addAction(Actions.alpha(1f, 2f, Interpolation.pow2Out));
finalLabel.addAction(sequence);
}
replaceLabel(finalLabel);
}
private TextraLabel getDefaultLabel(){
return Controls.newTextraLabel(getLabelText(currencyAmount));
}
private TextraLabel getUpdateLabel(int newAmount){
int delta = newAmount - currencyAmount;
String updateText = delta==0?"":(delta<0?NEGDECOR + delta *-1:POSDECOR + delta);
return Controls.newTextraLabel(getLabelText(currencyAmount, updateText));
}
private String getLabelText(int amount){
return getLabelText(amount, "");
}
private String getLabelText(int amount, String updateText){
return amount + " " + currencyIcon + updateText;
}
private void replaceLabel(TextraLabel newLabel) {
newLabel.setName(label.getName());
newLabel.style = placeholder.style;
newLabel.setBounds(placeholder.getX(), placeholder.getY(), label.getWidth(), placeholder.getHeight());
newLabel.setFont(label.getFont());
newLabel.style = placeholder.style;
newLabel.layout.setBaseColor(label.layout.getBaseColor());
newLabel.layout();
label.remove();
label = newLabel;
placeholder.getStage().addActor(label);
}
private class AccountingLabelUpdater extends Timer.Task{
@Override
public void run() {
if (label.equals(target)){
drawFinalLabel(true);
}
}
TextraLabel target;
AccountingLabelUpdater(TextraLabel replacement){
this.target = replacement;
}
}
}
public static TextraLabel newAccountingLabel(TextraLabel target, Boolean isShards) {
AccountingLabel label = new AccountingLabel(target, isShards);
return label;
}
}

View File

@@ -12,7 +12,7 @@ public class Reward {
Gold,
Item,
Life,
Mana
Shards
}
Type type;
PaperCard card;

View File

@@ -257,7 +257,7 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
break;
}
case Life:
case Mana:
case Shards:
case Gold: {
TextureAtlas atlas = Config.instance().getAtlas(ITEMS_ATLAS);
Sprite backSprite = atlas.createSprite("CardBack");

View File

@@ -230,6 +230,9 @@ public enum FSkinImage implements FImage {
QUEST_BIG_SWORD (FSkinProp.ICO_QUEST_BIG_SWORD, SourceFile.ICONS),
QUEST_BIG_BAG (FSkinProp.ICO_QUEST_BIG_BAG, SourceFile.ICONS),
//adventure
MANASHARD (FSkinProp.ICO_MANASHARD, SourceFile.ADVENTURE),
//menu icon
MENU_GALAXY (FSkinProp.ICO_MENU_GALAXY, SourceFile.ICONS),
MENU_STATS (FSkinProp.ICO_MENU_STATS, SourceFile.ICONS),
@@ -484,7 +487,9 @@ public enum FSkinImage implements FImage {
WATERMARKS(ForgeConstants.SPRITE_WATERMARK_FILE),
DRAFTRANKS(ForgeConstants.SPRITE_DRAFTRANKS_FILE),
CRACKS(ForgeConstants.SPRITE_CRACKS_FILE),
PLANAR_CONQUEST(ForgeConstants.SPRITE_PLANAR_CONQUEST_FILE);
PLANAR_CONQUEST(ForgeConstants.SPRITE_PLANAR_CONQUEST_FILE),
ADVENTURE(ForgeConstants.SPRITE_ADVENTURE_FILE);
private final String filename;

View File

@@ -76,6 +76,7 @@ public class TextRenderer {
Forge.getAssets().symbolLookup().put("AE", FSkinImage.AETHER_SHARD);
Forge.getAssets().symbolLookup().put("PW", FSkinImage.PW_BADGE_COMMON);
Forge.getAssets().symbolLookup().put("CR", FSkinImage.QUEST_COINSTACK);
Forge.getAssets().symbolLookup().put("M", FSkinImage.MANASHARD);
}
public static String startColor(Color color) {

View File

@@ -468,6 +468,7 @@ public class VPlayerPanel extends FContainer {
private int energyCounters = player.getCounters(CounterEnumType.ENERGY);
private int experienceCounters = player.getCounters(CounterEnumType.EXPERIENCE);
private int ticketCounters = player.getCounters(CounterEnumType.TICKET);
private int manaShards = player.getCounters(CounterEnumType.MANASHARDS);
private String lifeStr = String.valueOf(life);
private LifeLabel() {
@@ -496,6 +497,7 @@ public class VPlayerPanel extends FContainer {
energyCounters = player.getCounters(CounterEnumType.ENERGY);
experienceCounters = player.getCounters(CounterEnumType.EXPERIENCE);
manaShards = player.getCounters(CounterEnumType.MANASHARDS);
//when gui player loses life, vibrate device for a length of time based on amount of life lost
if (vibrateDuration > 0 && MatchController.instance.isLocalPlayer(player) &&
@@ -516,7 +518,7 @@ public class VPlayerPanel extends FContainer {
adjustHeight = 1;
float divider = Gdx.app.getGraphics().getHeight() > 900 ? 1.2f : 2f;
if(Forge.altPlayerLayout && !Forge.altZoneTabs && Forge.isLandscapeMode()) {
if (poisonCounters == 0 && energyCounters == 0 && experienceCounters == 0 && ticketCounters ==0) {
if (poisonCounters == 0 && energyCounters == 0 && experienceCounters == 0 && ticketCounters ==0 && manaShards == 0) {
g.fillRect(Color.DARK_GRAY, 0, 0, INFO2_FONT.getBounds(lifeStr).width+1, INFO2_FONT.getBounds(lifeStr).height+1);
g.drawText(lifeStr, INFO2_FONT, getInfoForeColor().getColor(), 0, 0, getWidth(), getHeight(), false, Align.left, false);
} else {
@@ -551,10 +553,16 @@ public class VPlayerPanel extends FContainer {
g.drawText(String.valueOf(ticketCounters), INFO_FONT, getInfoForeColor().getColor(), textStart, (halfHeight*mod)+2, textWidth, halfHeight, false, Align.left, false);
mod+=1;
}
if (manaShards > 0) {
g.fillRect(Color.DARK_GRAY, 0, (halfHeight*mod)+2, INFO_FONT.getBounds(String.valueOf(manaShards)).width+halfHeight+1, INFO_FONT.getBounds(String.valueOf(manaShards)).height+1);
g.drawImage(FSkinImage.AETHER_SHARD, 0, (halfHeight*mod)+2, halfHeight, halfHeight);
g.drawText(String.valueOf(manaShards), INFO_FONT, getInfoForeColor().getColor(), textStart, (halfHeight*mod)+2, textWidth, halfHeight, false, Align.left, false);
mod+=1;
}
adjustHeight = (mod > 2) && (avatar.getHeight() < halfHeight*mod)? mod : 1;
}
} else {
if (poisonCounters == 0 && energyCounters == 0) {
if (poisonCounters == 0 && energyCounters == 0 && manaShards == 0) {
g.drawText(lifeStr, Forge.altZoneTabs ? LIFE_FONT_ALT : LIFE_FONT, getInfoForeColor(), 0, 0, getWidth(), getHeight(), false, Align.center, true);
} else {
float halfHeight = getHeight() / 2;
@@ -565,10 +573,14 @@ public class VPlayerPanel extends FContainer {
if (poisonCounters > 0) { //prioritize showing poison counters over energy counters
g.drawImage(FSkinImage.POISON, 0, halfHeight, halfHeight, halfHeight);
g.drawText(String.valueOf(poisonCounters), INFO_FONT, getInfoForeColor(), textStart, halfHeight, textWidth, halfHeight, false, Align.center, true);
} else {
} else if (energyCounters > 0) { //prioritize showing energy counters over mana shards
g.drawImage(FSkinImage.ENERGY, 0, halfHeight, halfHeight, halfHeight);
g.drawText(String.valueOf(energyCounters), INFO_FONT, getInfoForeColor(), textStart, halfHeight, textWidth, halfHeight, false, Align.center, true);
}
else {
g.drawImage(FSkinImage.MANASHARD, 0, halfHeight, halfHeight, halfHeight);
g.drawText(String.valueOf(manaShards), INFO_FONT, getInfoForeColor(), textStart, halfHeight, textWidth, halfHeight, false, Align.center, true);
}
}
}
}

View File

@@ -58,14 +58,15 @@
{
"name": "Easy",
"startingLife": 16,
"startingMana": 32,
"startingShards": 5,
"staringMoney": 500,
"enemyLifeFactor": 0.8,
"spawnRank": 0,
"goldLoss": 0.02,
"lifeLoss": 0.1,
"rewardMaxFactor" : 1.5,
"sellFactor": 0.6,
"sellFactor": 0.6,
"shardSellRatio": 0.95,
"starterDecks": {
"W":"decks/starter/white_e.json",
"B":"decks/starter/black_e.json",
@@ -94,7 +95,7 @@
},{
"name": "Normal",
"startingLife": 12,
"startingMana": 25,
"startingShards": 2,
"staringMoney": 250,
"startingDifficulty": true,
"enemyLifeFactor": 1.0,
@@ -103,6 +104,7 @@
"goldLoss": 0.1,
"lifeLoss": 0.2,
"sellFactor": 0.5,
"shardSellRatio": 0.8,
"starterDecks": {
"W":"decks/starter/white_n.json",
"B":"decks/starter/black_n.json",
@@ -130,14 +132,15 @@
},{
"name": "Hard",
"startingLife": 8,
"startingMana": 10,
"startingShards": 0,
"staringMoney": 125,
"enemyLifeFactor": 1.5,
"rewardMaxFactor" : 0.5,
"spawnRank": 2,
"goldLoss": 0.3,
"lifeLoss": 0.3,
"sellFactor": 0.25,
"sellFactor": 0.25,
"shardSellRatio": 0.6,
"starterDecks": {
"W":"decks/starter/white_h.json",
"B":"decks/starter/black_h.json",
@@ -162,7 +165,7 @@
},{
"name": "Insane",
"startingLife": 7,
"startingMana": 10,
"startingShards": 0,
"staringMoney": 0,
"enemyLifeFactor": 2.5,
"rewardMaxFactor" : 0.0,
@@ -170,6 +173,7 @@
"goldLoss": 0.5,
"lifeLoss": 0.3,
"sellFactor": 0.05,
"shardSellRatio": 0.3,
"starterDecks": {
"W":"decks/starter/white_h.json",
"B":"decks/starter/black_h.json",

Binary file not shown.

After

Width:  |  Height:  |  Size: 556 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 654 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 502 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 689 KiB

View File

@@ -0,0 +1,8 @@
Name:Cursed Treasure
ManaCost:no cost
Types:Artifact
S:Mode$ Continuous | Description$ Provided by Cursed Treasure (Equipped Item - Right)
StackDescription$ Create a Treasure token. You lose 2 life. | SpellDescription$ Create a Treasure token. You lose 2 life.
A:AB$ Token | Cost$ PayShards<1> Sac<1/CARDNAME> | TokenScript$ c_a_treasure_sac | SubAbility$ DBLoseLife2 | SpellDescription$ Create a Treasure token.
SVar:DBLoseLife2:DB$ LoseLife | LifeAmount$ 2 | Defined$ You
Oracle: Provided by Cursed Treasure. Pay {M}, sacrifice Cursed Treasure: Create a Treasure token. You lose 2 life.

View File

@@ -0,0 +1,6 @@
Name:Farmer's Tools
ManaCost:no cost
Types:Artifact
S:Mode$ Continuous | Description$ Provided by Farmer's Tools (Equipped Item - Left)
A:AB$ ChangeZone | Cost$ PayShards<2> Sac<1/CARDNAME> | ExileOnMoved$ Battlefield | Optional$ True | Origin$ Hand | Destination$ Battlefield | ChangeType$ Land | DefinedPlayer$ Player | ChangeNum$ 1 | StackDescription$ Each player may put a land card from their hand onto the battlefield.
Oracle: Provided by Farmer's Tools. Pay {M}{M}, sacrifice Farmer's Tools: Starting with you, each player may place a land card from their hand onto the battlefield.

View File

@@ -0,0 +1,10 @@
Name:Hill Giant Club
ManaCost:no cost
Types:Artifact
S:Mode$ Continuous | Description$ Provided by Hill Giant Club (Equipped Item - Right)
A:AB$ Effect | Cost$ PayShards<2> Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature | ExileOnMoved$ Battlefield | StaticAbilities$ UnblockableLE2 | RememberObjects$ Targeted | StackDescription$ {c:Targeted} can't be blocked by creatures with power 2 or less this turn. | SpellDescription$ Targe creature can't be blocked by creatures with power 2 or less this turn.
SVar:UnblockableLE2:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | ValidBlocker$ Creature.powerLE2 | Description$ {c:Targeted} can't be blocked by creatures with power 2 or less this turn.
Oracle: Provided by Hill Giant Club. Pay {M}{M}, sacrifice Hill Giant Club: Target creature can't be blocked by creatures with power 2 or less this turn.

View File

@@ -0,0 +1,7 @@
Name:Piper's Charm
ManaCost:no cost
Types:Artifact
S:Mode$ Continuous | Description$ Provided by Piper's Charm (Equipped Item - Neck)
A:AB$ Effect | Cost$ PayShards<3> Sac<1/CARDNAME> | ValidTgts$ Creature | ExileOnMoved$ Battlefield | StaticAbilities$ MustBlock | RememberObjects$ Targeted | StackDescription$ {c:Targeted} blocks this turn if able. | SpellDescription$ Target creature blocks this turn if able.
SVar:MustBlock:Mode$ MustBlock | ValidCreature$ Card.IsRemembered | Description$ This creature blocks this turn if able.
Oracle: Provided by Piper's Charm. Pay {M}{M}{M}, sacrifice Piper's Charm: Target creature blocks this turn if able.

View File

@@ -0,0 +1,6 @@
Name:Sleep Wand
ManaCost:no cost
Types:Artifact
S:Mode$ Continuous | Description$ Provided by Sleep Wand (Equipped Item - Left)
A:AB$ PutCounter | Cost$ PayShards<2> Sac<1/CARDNAME> | ValidTgts$ Creature | ExileOnMoved$ Battlefield ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ Stun | CounterNum$ 1 | StackDescription$ Put a stun counter on target creature. (If a permanent with a stun counter would become untapped, remove one from it instead.)
Oracle: Provided by Sleep Wand. Pay {M}, sacrifice Sleep Wand: Put a stun counter on target creature.

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="53">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJztldEOgzAIRZuo0/GhOv1RO/Wj5CZrwpKu0K3dkw/nScMFLtDx7tz4JRMzKzTk3DHYY278767Qka4LloxaHoZ4FlbOb6D3elqqqys1oYd+B29+8c7S3014Aq+DN6i5jXhv9U6bKS2OnLsSmqXzu7CD+fbMk+kpDr6V1gw7hR2tuUeyRnk7/qEbu5G3xL2qqZsCOflXj2K9s/qf+x5Jgr4XXuX0o/lwE2u9vamen7FF4yE=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJy1lVkKwjAQhqctdMF76IO4HEA8j3oC8RBuB1ChJ+mDSMELeBsb7NA4TmbSYgOhaZb58s/fJgDusggBrsF/6jJ0cwrSfglz2xYTqxDGbY27iJ8zTmTGg+nbRrJmH42lwu0Sm47Z2rDdJzcf/DJKB1fLexvuKgU4xADr+ontScXYpN9rcB8aX/JY87cU8q7lf0Ti3wXuqdJ2tvTZsTEnz6R5nypsly7aP8sA5hnP5fq0nNP4Q9K/jxtf7Yp+G5+p7/Y4/QawuDz2PaOo7jb/Fsfw5VIvfbzlGDTPPoVq1Nh4PnMM7RyVuMhG348xv47jFjXb5w7r47yU9mHqLfhwLx3uYnPPvQGEo2CM
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJzT5mFg0AFieoE2bgh9EmjnKR7scqQCXW3K3EQICAPNF8Fix2Iy3EuuH2kFPiH5y1iHgcFEhzxz9GgQB5S4h572Z5FiJpZwGmh/UgtYazEw2GhRZsZgCQsjLPFESjwPBXAT6MdbePItrfz7FWjnNxqX2aSCHCDOReLTK665GBkYuBkx7aS1/QB3HhO+
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBj8IAtKf9ViYPimhRA/CMSHoOxsIM5Bw7lUsl9Qm4FBSBvhDmSwnJGBYQUQ8wAxFxRzM5JuxzVtBFtch4FBQgdTzSFMIQZOCu3FB47jcQ/M3yC8ksr2ogNc4UFPe46SaeYxKK2FVxV1gTzQMgUKLUQOiywG7GmfGKDHSZk7BgKQ69eBsBuWvshx801gmXNLG1VsIP1ODsDm3hN0dwXxYLCELwD5Hxp7
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="240" y="272"/>
<object id="41" template="../obj/shop.tx" x="129" y="82">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="304" y="114">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="352" y="162">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="177" y="81">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="240" y="129">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="368" y="226">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="137" y="162"/>
<object id="48" template="../obj/shop.tx" x="304" y="48">
<properties>
<property name="commonShopList" value="Forest"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="49" template="../obj/quest.tx" x="98" y="162">
<properties>
<property name="questtype" value="forest_town_generic"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="98" y="98"/>
<object id="51" template="../obj/shop.tx" x="272" y="98">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="208" y="50">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB"/>
<property name="rareShopList" value="Land4Green,Simic,Golgari,Gruul,Selesnya,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Elf,Wolf4Green,Druid,Squirrel,Sliver2Green,Wand,Equip,Multicolor"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="54">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJztldEOgzAIRZuo0/GhOv1RO/Wj5CZrwpKu0K3dkw/nScMFLtDx7tz4JRMzKzTk3DHYY278767Qka4LloxaHoZ4FlbOb6D3elqqqys1oYd+B29+8c7S3014Aq+DN6i5jXhv9U6bKS2OnLsSmqXzu7CD+fbMk+kpDr6V1gw7hR2tuUeyRnk7/qEbu5G3xL2qqZsCOflXj2K9s/qf+x5Jgr4XXuX0o/lwE2u9vamen7FF4yE=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJy1lVkKwjAQhqctdMF76IO4HEA8j3oC8RBuB1ChJ+mDSMELeBsb7NA4TmbSYgOhaZb58s/fJgDusggBrsF/6jJ0cwrSfglz2xYTqxDGbY27iJ8zTmTGg+nbRrJmH42lwu0Sm47Z2rDdJzcf/DJKB1fLexvuKgU4xADr+ontScXYpN9rcB8aX/JY87cU8q7lf0Ti3wXuqdJ2tvTZsTEnz6R5nypsly7aP8sA5hnP5fq0nNP4Q9K/jxtf7Yp+G5+p7/Y4/QawuDz2PaOo7jb/Fsfw5VIvfbzlGDTPPoVq1Nh4PnMM7RyVuMhG348xv47jFjXb5w7r47yU9mHqLfhwLx3uYnPPvQGEo2CM
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJzT5mFg0AFieoE2bgh9EmjnKR7scoMNCGszMIhoY4ovJsO9g82Pn5D8ZazDwGCiM3BuQQcD7R5i7c8ixUws6Wig/UktYK3FwGCjRZkZgzksSIlneoMsJEwsuAlMi7ewpEdkM4mxl1i1MPAVaOc3PPYSC15oUG4GDOQAcS4Sn15xzcXIwMDNiGknre0HAGN/FdI=
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBj8IAtKf9ViYPimhRA/CMSHoOxsIM5Bw7lUsl9Qm4FBSBvhDmSwnJGBYQUQ8wAxFxRzM5JuxzVtBFtch4FBQgdTzSFMIQZOCu3FB47jcQ/M3yC8ksr2ogNc4UFPe46SaeYxKK2FVxV1gTzQMgUKLUQOiywG7GmfGKDHSZk7BgKQ69eBsPsYYSU4wU1gmXNLG1WMHL+f0aDAETQAJwbaAXjAQKYtZAAAL4Yamw==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="240" y="272"/>
<object id="41" template="../obj/shop.tx" x="129" y="82">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="304" y="114">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="352" y="162">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="177" y="81">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="240" y="129">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="368" y="226">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="137" y="162"/>
<object id="48" template="../obj/shop.tx" x="304" y="48">
<properties>
<property name="commonShopList" value="Forest"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="49" template="../obj/quest.tx" x="98" y="162">
<properties>
<property name="questtype" value="forest_town_identity"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="98" y="98"/>
<object id="52" template="../obj/shop.tx" x="272" y="98">
<properties>
<property name="commonShopList" value="Green,Green,Enchantment4Green,Creature2Green,Instant4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="RGU,UWG,UGB,RWG,RGB,GWB,Land4Green,Creature6Green"/>
<property name="uncommonShopList" value="Simic,Golgari,Gruul,Selesnya,Simic,Golgari,Gruul,Selesnya,Land"/>
</properties>
</object>
<object id="53" template="../obj/RotatingShop.tx" x="208" y="50">
<properties>
<property name="rotation" value="Green1,Green2,Green3,Green4,Green5,Green6"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="55">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJztldEOgzAIRZuo0/GhOv1RO/Wj5CZrwpKu0K3dkw/nScMFLtDx7tz4JRMzKzTk3DHYY278767Qka4LloxaHoZ4FlbOb6D3elqqqys1oYd+B29+8c7S3014Aq+DN6i5jXhv9U6bKS2OnLsSmqXzu7CD+fbMk+kpDr6V1gw7hR2tuUeyRnk7/qEbu5G3xL2qqZsCOflXj2K9s/qf+x5Jgr4XXuX0o/lwE2u9vamen7FF4yE=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJy1lVkKwjAQhqctdMF76IO4HEA8j3oC8RBuB1ChJ+mDSMELeBsb7NA4TmbSYgOhaZb58s/fJgDusggBrsF/6jJ0cwrSfglz2xYTqxDGbY27iJ8zTmTGg+nbRrJmH42lwu0Sm47Z2rDdJzcf/DJKB1fLexvuKgU4xADr+ontScXYpN9rcB8aX/JY87cU8q7lf0Ti3wXuqdJ2tvTZsTEnz6R5nypsly7aP8sA5hnP5fq0nNP4Q9K/jxtf7Yp+G5+p7/Y4/QawuDz2PaOo7jb/Fsfw5VIvfbzlGDTPPoVqpGzqMZ7PHEM7RyUustH3Y8yv47hFzfa5w/o4L6V9mHoLPtxLh7vY3HNv0GRgvg==
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJzT5mFg0AFieoE2bgh9EmjnKR7scsiAkZn2biIEhLUZGES0oRwk9yzG4l5CAJsfBxJ80kawjXUYGEx0yDPnHxN13IMMKHEPPe3PIsFMbOE00P6kFrDWYmCw0aLMjEETFljKHVLimVLARIdy7yYw79/Sxi1PK/9+Bdr5DY+9AwFygDgXiU/LuP6PVAZwMTIwcDNi2knrtAYAUVAVYg==
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBj8IAtKf9ViYPimhRA/CMSHoOxsIM5Bw7lUsl9Qm4FBSBvhDmSwnJGBYQUQ8wAxFxRzM5JuxzVtBFtch4FBQgdTzSFMIQZOCu3FB47jcQ/M3yC8ksr2ogNc4UFPe46SaeYxKA1KttjSDy2APNAyBS3C6vAB5LDIYiDf7XqclLljIAC94okadsPSFyn6YGpvAsucW9rY5YYKwObeE3R3BfFgsIQvALDsG08=
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="240" y="272"/>
<object id="41" template="../obj/shop.tx" x="129" y="82">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="304" y="114">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="352" y="162">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="177" y="81">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="240" y="129">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="368" y="226">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="137" y="162"/>
<object id="48" template="../obj/shop.tx" x="304" y="48">
<properties>
<property name="commonShopList" value="Forest"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="51" template="../obj/quest.tx" x="98" y="162">
<properties>
<property name="questtype" value="forest_town_tribal"/>
</properties>
</object>
<object id="52" template="../obj/shardtrader.tx" x="98" y="98"/>
<object id="53" template="../obj/shop.tx" x="272" y="98">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
<object id="54" template="../obj/shop.tx" x="208" y="50">
<properties>
<property name="commonShopList" value="Elf,Wolf,Druid,Squirrel,Sliver2Green,Wolf4Green"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Green"/>
<property name="rareShopList" value="Simic,Golgari,Gruul,Selesnya,Creature6Green,Multicolor,Land4Green"/>
<property name="uncommonShopList" value="Creature2Green,Creature,Green"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="54">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJzbwM7AsIHG2JiVgeEKEHdyIjBI3IiVtvZeR7MTZu8FEuwFub2EDROb4DHjIlDODIt/SbELPbxg+DIB94DstkDCxNhXyobdLmIwyD34woKYtEAuvkqCvdjSArm4mED808KvpIQ3Nf1KSngPlL3Y8hu90hcsv1HLflOgOWtIKOMo9TvIPiF2TDsJlXHE+N0UrSxCxrj8CMtfpNgPwpZIbiClXIDlU1LjHVv4k6IPW9lAqrs3spOmD9lOAPPDPGo=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFQwHosw+MvWeB9pby0s78SWwMDJOx4AtI/tXHwSYHlBHwy1l2wmxagHPsCL/nciDYeRwQeULuJhfQyl/Y0ow+jvCEiaPTlAJYmF4gEKfoNKX2Z0PjLAcpHs9jiV90GhbX1AS0TrfIoIQXQdPTXmQwai9xAADlPiO/
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYKAfKORgYCgC4mIOOloKBPycDAwCQCzISV97KQWdWgwMXVoQtrEOA4OJDu3s2qjOwLBJHcJeCrRzGRDrDZLwQvY7NcMhl4s8uZEI9LXJ02cNTEc2BNIwTBydphUgFLfLuBkYDMn0L0z/YAUmUH8ZUOC/4QiusDMwXGWnv70DUR+CAAAD6BOP
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFpABxHQYGCR3amT9VnYFhmjqE3anFwNClRTu7SAXIfqd1OIwC6gJ5YDpSgKYlXHEHE0enR8EoGAXDCwAAl/AHJQ==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="256" y="271"/>
<object id="41" template="../obj/shop.tx" x="304" y="98">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="368" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="353" y="98">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="208" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="304" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="336" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="215" y="82"/>
<object id="48" template="../obj/shop.tx" x="176" y="192">
<properties>
<property name="commonShopList" value="Island"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="50" template="../obj/quest.tx" x="176" y="162">
<properties>
<property name="questtype" value="island_town_generic"/>
</properties>
</object>
<object id="51" template="../obj/shardtrader.tx" x="398" y="178"/>
<object id="52" template="../obj/shop.tx" x="168" y="82">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="256" y="66">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB"/>
<property name="rareShopList" value="Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Merfolk,Wizard,Bird4Blue,Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Wand,Equip,Multicolor"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,110 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="58">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJzbwM7AsIHG2JiVgeEKEHdyIjBI3IiVtvZeR7MTZu8FEuwFub2EDROb4DHjIlDODIt/SbELPbxg+DIB94DstkDCxNhXyobdLmIwyD34woKYtEAuvkqCvdjSArm4mED808KvpIQ3Nf1KSngPlL3Y8hu90hcsv1HLflOgOWtIKOMo9TvIPiF2TDsJlXHE+N0UrSxCxrj8CMtfpNgPwpZIbiClXIDlU1LjHVv4k6IPW9lAqrs3spOmD9lOAPPDPGo=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFQwHosw+MvWeB9pby0s78SWwMDJOx4AtI/tXHwSYHlBHwy1l2wmxagHPsCL/nciDYeRwQeULuJhfQyl/Y0ow+jvCEiaPTlAJYmF4gEKfoNKX2Z0PjLAcpHs9jiV90GhbX1AS0TrfIoIQXQdPTXmQwai9xAADlPiO/
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYKAfKORgYCgC4mIOOloKBPycDAwCQCzISV97KQWdWgwMXVoQtrEOA4OJDu3s2qjOwLBJHcJeCrRzGRDrDZLwQvY7NcMhl4s8uZEInmiQp88amI5s0NLwWTSzYOLoNLXBS6i9hOJ2GTdl9lCqfxTQH1xhZ2C4yk5/eweiPgQBAMi+FTE=
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFpABxHQYGCR3amT9VnYFhmjqE3anFwNClRTu7SAXIfqd1OIwC7OCEBnn65IHpSAGalnDFHUwcnR4Fo2AUDC8AAJuECBU=
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="256" y="271"/>
<object id="41" template="../obj/shop.tx" x="304" y="98">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="368" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="353" y="98">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="208" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="304" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="336" y="162">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="215" y="82"/>
<object id="48" template="../obj/shop.tx" x="176" y="192">
<properties>
<property name="commonShopList" value="Island"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="52" template="../obj/quest.tx" x="176" y="162">
<properties>
<property name="questtype" value="island_town_identity"/>
</properties>
</object>
<object id="53" template="../obj/shardtrader.tx" x="398" y="178"/>
<object id="54" template="../obj/shop.tx" x="256" y="66">
<properties>
<property name="commonShopList" value="Blue,Blue,Enchantment4Blue,Creature2Blue,Instant4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="RWU,RGU,UWG,RUB,UWB,UGB,Land4Blue,Creature6Blue"/>
<property name="uncommonShopList" value="Azorius,Izzet,Simic,Dimir,Azorius,Izzet,Simic,Dimir,Land"/>
</properties>
</object>
<object id="57" template="../obj/RotatingShop.tx" x="168" y="82">
<properties>
<property name="rotation" value="Blue1,Blue2,Blue3,Blue4,Blue5,Blue6"/>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-16"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="57">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJzbwM7AsIHG2JiVgeEKEHdyIjBI3IiVtvZeR7MTZu8FEuwFub2EDROb4DHjIlDODIt/SbELPbxg+DIB94DstkDCxNhXyobdLmIwyD34woKYtEAuvkqCvdjSArm4mED808KvpIQ3Nf1KSngPlL3Y8hu90hcsv1HLflOgOWtIKOMo9TvIPiF2TDsJlXHE+N0UrSxCxrj8CMtfpNgPwpZIbiClXIDlU1LjHVv4k6IPW9lAqrs3spOmD9lOAPPDPGo=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFQwHosw+MvWeB9pby0s78SWwMDJOx4AtI/tXHwSYHlBHwy1l2wmxagHPsCL/nciDYeRwQeULuJhfQyl/Y0ow+jvCEiaPTlAJYmF4gEKfoNKX2Z0PjLAcpHs9jiV90GhbX1AS0TrfIoIQXQdPTXmQwai9xAADlPiO/
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYKAfKORgYCgC4mIO+tn5n4mBgZ+TgUEAiAU56WcvzG5SwVR1BoZp6hB2pxYDQ5cWhG2sw8BgokM9t6GDjUA7N0HtXQq0cxkQ69E5vHABZL9TMxxyuciTG0qAkRm33D8y0iepwBqYjmxwpGGY/TBxdJpWgFDcLuOmzHxK9Y8C+oMr7AwMV4GYAU9+oQWgd30IAwDoJheh
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFpABxHQYGCR362NWpxcDQpUUfu4gByH6nZziMAsqBPDAdKUDTEq64g4mj06NgFIyC4QUAK4MFrA==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="256" y="271"/>
<object id="41" template="../obj/shop.tx" x="304" y="98">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="368" y="162">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="353" y="98">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="208" y="162">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="304" y="162">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="336" y="162">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="215" y="82"/>
<object id="48" template="../obj/shop.tx" x="176" y="192">
<properties>
<property name="commonShopList" value="Island"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="52" template="../obj/quest.tx" x="176" y="162">
<properties>
<property name="questtype" value="island_town_tribal"/>
</properties>
</object>
<object id="53" template="../obj/shardtrader.tx" x="398" y="178"/>
<object id="55" template="../obj/shop.tx" x="168" y="82">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
<object id="56" template="../obj/shop.tx" x="256" y="66">
<properties>
<property name="commonShopList" value="Merfolk,Wizard,Bird4Blue,Sliver2Blue,Rogue4Blue,Spirit4Blue,Pirate4Blue"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Blue"/>
<property name="rareShopList" value="Azorius,Izzet,Simic,Dimir,Creature6Blue,Multicolor,Land4Blue"/>
<property name="uncommonShopList" value="Creature2Blue,Creature,Blue"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.1" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="72">
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="81">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../../tileset/main.tsx"/>
<tileset firstgid="6321" source="../../tileset/buildings.tsx"/>
<tileset firstgid="10113" source="../../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztzjENADAIADDeBWOzgn8DM0FgR4/+rRNRAAAAAACMubl/8PP7VdfvAWT0x+U=
@@ -17,7 +17,7 @@
</layer>
<layer id="6" name="Ground2" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzNmF1OwkAQx/cdDETUBCIPWlrQRi+lR/DrAgo8GRMRjiGGCyCgRoJnchu7YRhnvwv0n0zS7m63v87uzG43KjIWc4u4NbnlQWHKE6cWcJtym+WEb8I5GiljwvbN7arE2HVO7Ka0ZBRjultmrJIT2ysv/ThDfAfchluyfcQHtUvUNSXzo11grAOsW1itfyjQz+lEMVB1uv4naTxNJXG1CT7xjt6hus+A4Hnk909p2Qt6/qLO2GV9taxlyceId6qEv2fO/blwyFU2fMkYQsYB8APlA/w9kBnqFFwL34p2NnxZCPI1DNqvg4/yJcVHCc9tGz48r11FMX5J2m5ifBdVxn6qbs/68o3dXqsUnB8ufIOMxtlEPv5rS9YyX8F57sMXgj1syMcjksSs0FmNsfOaHastH4z/SUZ7WFVu942PtmLPcsRj9tgxbk0YZHUwVwkfJvvacTH7uWjLR+XW++LfXIzX8D/lM754Lup82ORzrCWJob4kZ2W5fkBG37wjYsaVL9QwZjXWNnyyfUnAyxqgHPsR+lK2D5D17TO+qv0MjGuZL03WblO+D00/MlZd3HyC6y6xtkCGmQF7D+2/sU6IMtvc05esv2ItUPFR0v3P4XWQav9skF/Ed5ryBTtypkiNrOWS8UUE353jeU4i3zOm25Kez+c8J6szJmp8X8t2ZzkjcP1W/t/HyLK/IeoP+89VlZr63lUUH84521RW/rOROK+D696UaJfkvndHPpNcMrfvdmVvLtjiDfsPn2t2CCZsm5TIGRRHBHwG738BVormxQ==
eJzNmElOw0AQAOcEkRKUKCwfSHAC5gY3+Ah3lnBn+wAETogHwBsA8QFwAgjEK3gBOxcQbcWjdIbu2eyEtNSSl/G43Nu0JygIEYIGoDXQYZDphCdMtALaAm0PCV8EHNWEMWa7B90sCrE1JLpd7DJKn5ZLQowPiU6UunZsK3xToOf/pJMKH5Yyca/GxEczL8QB0sN87/39PP2cSSgG6p5p/ijJpxaTV4Pgk+9YDfVzVgieIzg/Tq6tKc/PzwmxMNd7re7IJ4h36kT9ngew56NHrXLhi32IGRvIDpQN1O/BzFhm0bG0rRznwpeFYL6qxfh+8FG2pPgoUWPbhU+Na1+hGO+YsYPw7wkk42ndPK4ffFd+r9UKjg8fvkZGfraRNPZrMmtZWsFxnoZP9oxxv/MOc34Y7PoNMfjjGIcufGruRxn1sLranjY/cN+i+vkZmp0XruGxFB8+XKukDeO+9qqQfSy68lG1da/QicWwD/9TafyL4zFibLgIi/9S0gB8wvgvJofWmetZrh+YEcdjOGr3PBaZM7580wZG7OtGDvrTkY5u5Nw4Xfi4vuQVfPPG+FrNba4P4OZO419dP4Pzmssbm7Xblu/GMA/HyuWNlFt0vDyjZ2hbsMuc5fpM4hXOtWedWX/lWqDjo8T0P6eug9T4FYv6Ir/Tlq8yxjMFemQjF8cXEHy7nvs5saTdY9opmvnS7OdktcdE+fes5LaXc4mOL0p/57h0nO9cmU+1n6881fXnvkLxqTXnPyUr+7mIbF/xutcixsW179qTz6aWPLhP29ObS7ZwwPZT9zUPCCZVBymyZlAcAbIZPv8FDvfvLg==
</data>
</layer>
<layer id="3" name="Walls" width="40" height="40">
@@ -30,20 +30,25 @@
</layer>
<layer id="5" name="Overlay" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1DkKgDAQBdDfuAupp8h59FTqlfRytk4vBsHAyOQ/SJFUswYgInpnisAcraOwxRrkw1rmtQtwiHUU+XA+/qfTfvROe2I1b5XubO1obylt0BkbneyQxz/6KadG39qPuXqsFxGVaQnAqmcL1pHcnZK+E1G5Ls9cDMw=
eJzt1EsKgCAUBdC7g4Y1q1lirrHf5lpB/xaT0DCKIOuF3QOCjny+jwAR0TWhASIjHYUs5sAd5tKtSgG1ko7CHfbH94wZMGXSUTxDqt/aFOjS9++l98QaSPS2n+38LJ7MkI9/9NGbeluz4WbdfMwXEf1THgCFXWUgHcleo87PRPRfKyQjEbs=
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="56" template="../../obj/shop.tx" x="208" y="162">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="47" template="../../obj/inn.tx" x="199" y="419"/>
<object id="53" template="../../obj/spellsmith.tx" x="327" y="228"/>
<object id="55" template="../../obj/shop.tx" x="479" y="453">
<properties>
<property name="shopList" value="Forest"/>
<property name="commonShopList" value="Forest"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
@@ -56,49 +61,81 @@
<object id="60" template="../../obj/entry_right.tx" x="254" y="623" width="16" height="85"/>
<object id="62" template="../../obj/shop.tx" x="361" y="370">
<properties>
<property name="shopList" value="GreenEquipment"/>
<property name="commonShopList" value="GreenEquipment"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="63" template="../../obj/shop.tx" x="216" y="290">
<properties>
<property name="shopList" value="GreenItems"/>
<property name="commonShopList" value="GreenItems"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="64" template="../../obj/shop.tx" x="466" y="417">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="65" template="../../obj/shop.tx" x="529" y="386">
<object id="65" template="../../obj/shop.tx" x="530" y="386">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="66" template="../../obj/shop.tx" x="449" y="305">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="67" template="../../obj/shop.tx" x="513" y="241">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="68" template="../../obj/shop.tx" x="448" y="130">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="69" template="../../obj/shop.tx" x="257" y="194">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="70" template="../../obj/shop.tx" x="97" y="417">
<properties>
<property name="shopList" value="Instant,Creature,Green,Gruul,Selesnya,Golgari,Simic,Elf "/>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="71" template="../../obj/arena.tx" x="359" y="290">
@@ -163,5 +200,47 @@
}</property>
</properties>
</object>
<object id="74" template="../../obj/quest.tx" class="quest" x="312" y="370">
<properties>
<property name="questtype" value="forest_capital"/>
</properties>
</object>
<object id="76" template="../../obj/shop.tx" x="96" y="209">
<properties>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="77" template="../../obj/shop.tx" x="96" y="304">
<properties>
<property name="commonShopList" value="Enchantment6Green,Creature6Green,Instant6Green,Elf,Wolf,Druid,Squirrel"/>
<property name="mythicShopList" value="Planeswalker4Green,WUBRG,RGU,UWG,UGB,RWG,RGB,GWB,Legend4Green"/>
<property name="rareShopList" value="Artifact4Green,Land4Green,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Green,Wand4Green"/>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Dinosaur4Green,Wolf4Green,Sliver4Green,Multicolor8Green"/>
</properties>
</object>
<object id="78" template="../../obj/RotatingShop.tx" x="462" y="369">
<properties>
<property name="rotation" value="Green1,Green2,Green3,Green4,Green5,Green6"/>
</properties>
</object>
<object id="79" template="../../obj/RotatingShop.tx" x="160" y="161">
<properties>
<property name="rotation" value="Green1,Green2,Green3,Green4,Green5,Green6"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="80" template="../../obj/RotatingShop.tx" x="160" y="370">
<properties>
<property name="rotation" value="Green1,Green2,Green3,Green4,Green5,Green6"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -1,23 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.1" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="64">
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="13" nextobjectid="72">
<editorsettings>
<export format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../../tileset/main.tsx"/>
<tileset firstgid="6321" source="../../tileset/buildings.tsx"/>
<tileset firstgid="10113" source="../../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztmEEOgjAQRbsAzmOiHse7cAQlKd5TTcSdbaRJGafDVFo6Jiz+poTw+n+npdPXSt0rpQ7NVA8z1tcydDU6VVPpAhy+T74/Uvh8Dh0Yj+Fz870h6+OXdRLiuxi9xvGn0WDUzfhvdWy+5wW1b6ZzoHgtxxD4vmPHfHNcHB4ub2z9OXbIbdlScGGcKWopB9tSL3N5RnFyGddmi2EsxcZlxPbBtRXad0t7R3kohS3EKCFXKmfJfNKyhRlL9M73cOPb+Epp18jmk+6fBncPSbL3oO4Pzo9/4JOWsZ+tNEaMTVLOVN+itIeUd6UZOWylGOfYXK/A/+d3/Y6cnFQvCqsLrN+Qy0vKM+gXrFt4f0rp5ehZS/Xv3H1D1zif/wyuy/OHtbXi8LoMx/fILCGHDvjDraW57GNqEvKFzhDOeuXu6bE97FB/d4lS8mH93TfVKOm8
eJzNmEtOwzAQhrPIoxdhyUMFjsMJYAE36BGgbdpTcRmgtGwqMkp+MRnG9jhxCpVGVVPF/vzPwx5viix7z7PspuzbR/NsU/wP2zZ2l/et/gMOrhPX57/wcY7a8TyGD+t9U+JjSJy4+F4a++qe7xs7NLYM6E92W/5el7Trsr8GHy9xHBzzg92lG7FZeKy8sfkH9qVgwjhP1Xg2yTk2l9bN96po13tRtvyfiRmHaKn5kjhpHC2XUnBaGX1xVjty/VSMoRw4Vq1NwWdhDGkzNR/iaEz9IL6zBHXGZ7LGWdl2eVt/qBalzGNtjtD+q713zupBakbfvmXh47mbutbsHFwxviWmddHnjdGQGJ67PQo5Rt+Hzi/cn8RE+/UYDa7KuNiAPo9Vn49+0zrx/7z80WFovaX5Hqow307EFM4/nA9nGxlrWNMQvprNt/a8X7MzxmvDMZu54wH7PMaL8Y/Ug7QLsfGYJc77qn3POp/MQZo7FOs181GITc4F/11G1HbScOuJRfrgPIs4GppPqyLeX5xJqxf0OVb9c32Mbq64tdYkMPEc4z0AzgNjmDQ+i4b73F2zkZupzyqIX8t6fX3QWD9qhnpmHVfjs65tiMWcHV2+nersHsPni7sp+eAv5J4rh333FvweIbVh/4JRvyoZQzk7NaPUifvLwnZKRtITGlpqnezjUaen5MT+MDf2ldp9w1Racs34+VTTS+at7JNTatn1QQvf/R36Dd9+qOU5cXY9xILMwou+DL2HL84kR+3Qx5pLId/H5KTk097V7gBjxrT4wDpWqvvvlHza/e435SQojA==
</data>
</layer>
<layer id="2" name="Ground" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzlWM1KA0EMHrGt0CL9wZM3xbvtU/gW4n0VFYpP4U1fwKpFqeIriHf1afTsDDY0DclusrvjKH4QxJ1k803+ZjvO/S1s953b6admIWN/4NzBIJ3/rV8cm/+Ajc00tlVwlcZtJXCcGxH9wbunwrr0PAV2PdmhUUYxg0d4tVvO3Xs5bOrkzut2WvXw5HqM43XU1L8zU/K09ndZXlItanlquWl4TYmNxh/lWYbja+ObmyWPwebd4Cubc7TYTAy+Pvz6J9KhNnSdg3VPGjuYvRd+/5fN5TrFdQXrAVIaqB8NVag97b6Cjzciki19HGytNSjV3oRXL+SXdz5banAN+dPoQ33hfsT9rqk/iz+rPq4vzg6v09jjmFI7KU9YH9dEq5gq60eLmHMJz2TsR5rVtBY1vcide9q+wnrAT9v/+IwK9YrPoqKzOMs5f2DejRrLsQZ+uP+xLrc36xkVADmQ8gzzBGYxzGX6d0jiQ/dombESuDzjeULnHhbp24LmtQpwnuk3cbuAH2cjxfTay00Fjtw3cR43Lo5YgFus336ZkmMdObQC5kBeHZb5HRALNJZSzOAcOk9wjwAcU+RTQui3W/R/2fP3p5DHb7xe7d1wL7jXzdc79usnjJx2F/zydLQ4Y/YTuBXdX856zj0QefLy2Fvwm82fUb2gU4SY98s4v9pvRopnz+0lEr+shnkX8/57pePcaqfed34BjJbWzg==
eJzVWEtOwzAQ9SI1iAr1cwMQC1ilnIJLIMS+IEBC3If+1KogroDYp1yCg2CLDJ1OZmwnTlN40ogm2Jnn+ctK/S8c95Q66e2ahYyrvlLX/d3pPxJs89wsDRF7uyawZXydbj5rbc6si+vSRKnzxL23CWSGw2cS/r5plOHXJF3wK/CYqU2fNmk/To3V3zb8DvTP30Ei/x4wsVgnaKynuf6FkZuWX+aIK5dLZcDlGPWVfV6V8N+Q4cnZs0x+a+QbayvMBfTdtvi9M/J8ecbzjLEl2Ah8GMKFq3mub8fkT5Zzk3hJezidUyPLmviNBF1jI5OK/Ch88RECly46S6RJsaZQP0dQKSBlcsIF8BeW2No89+jjYm/EL/fyG8dR/QXMXmV700Sv6wbk+9RROyAepFx32a4Kv5B9I7IuJgagt8IZQ8to6Lkov9C6CRii3umrAdLM4tJp48HGgo0Brf25SPuelAccwNZ41grRmaEzLXKuuBfFzNrYNmCLNuKEdWqhHmb5OWBdnaBxBhxXwkzIcchIjcVnDq1HUAfo3Ib5vaB3uP7h2ZBySxneVWoGtQuet/B8BPGGuWHfDpBe2M99s0q9mWh5Jl4lm/pAsG+BL8A1Z8fMCxzvuS72NSq+Ga2u3ocBdQD3NY6Xr8/Vgf2ANdSWUs2AVzDvN4khmg/qjKMY2Hl6ip7/yp2GBBe/x0P/fleowr3gRcf9jTvz/3tGHjprfq41oXhizmO5SfeXgGXX9Awib0Zeu2t+y/wdXWfX+FD2frlMfcL+rVpW3g23jy3df9eRH9u6/4YeHHtvQfENf1fcDQ==
</data>
</layer>
<layer id="8" name="Bridges" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1kkOgkAUhOG3cXYPW2fDbXC6FU4XxekAFkmTEMWYELVLUl/yNqz+hOY1ZiJSV53IrBv5rnhtgrYpcZ98xiowW7vZBL5rnl3QdHVzI+zbh2YHN8fQd40wi3F+F5gl4TnOpOg6Yc7qq6Ssj+meT7CftphdYU/pnv+9mHgHZFLCb6yBM9p055Sxb4C2IXFfUfKwA+os/7etqoV32v7ifsz/Hd/poaFf0jHCszHB/p6hYU7QISIi/+0OQfQkaQ==
</data>
</layer>
<layer id="6" name="Ground2" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1kEKgzAQheE5RDfq4W3PYXsKtbHozrbncBYBlWajjImU/4PZiCSPiUkUAQD8k7YQeRZ27wFLe76bTy7yzY+fB/GVmcjV1y1LneZXpZnuvh4nzOc0U+frdcJ8mMU+k46cr9Zxm8DYTp91nLtBvfZl2NCbUe+898Z7D/FY7y/+WdK6sNdW6Ed6lmvAegI2JkGoI2Y=
eJztlU0OQDAUhN9xcAXuhHPgFH5K2Pk5kYN4i25EF0SbtsyXvIUumjHTdogAAKZoI6Iuur8O/ECVX8zfCbI2zh/8/OI/riHRFtpW4Re+9EcaEGVy8sC2misFayrlVIb0vclEsKZezuCgf8AeJu96zfs2ir0Fr/UOvS8uMbIv0wNvZu68xfPee3MGXesq8G129OcJ+GEfnRkgTwD0cABSpCk/
</data>
</layer>
<layer id="3" name="Walls" width="40" height="40">
@@ -30,55 +35,88 @@
</layer>
<layer id="5" name="Overlay" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1jsOgzAMBmDfgBm4K/Qm0FPwFmy0PVFHPEQC0S60DjbR/0leUIitBCcQAVzHO9Z5F2CrSYnaVG5cKDR7LKT+/uW7eSZEr8R/HoC9gnuvdHE32Icd19S7GAzWB6uzzySf+Sqet/4yd8fPeqGcFu+9f2oaeV2mA2sz8533OHjvwXmk+wv/LLosnjeasB76JPcA+/kpi4hyF7dIuxoAGQufWSj0
eJxjYBgFo2DogBMaqPxOLQaGLi1MddjE0fWOgsELsMWfPJCvQGRcjwLyASXhOZB5jBS7h2OamanJwDBLc6BdMbQAKfXHKMAN8oF5rwCKC2lUBlASJ91AN/VAce9oO2AUIAFa5vV2oLkdWMzuBor1UMnOwdiupcRN/cBwmUBC2EwH1nkzhni9R0kaHK2rRgE9wWAsbwYSjIbHwANqxsFofGKCOn4GhnoobuAfaNeMglFAHQAAkqgpdw==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="41" template="../../obj/shop.tx" x="232" y="162">
<object id="41" template="../../obj/shop.tx" x="232" y="146">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="56" template="../../obj/shop.tx" x="103" y="226">
<object id="56" template="../../obj/shop.tx" x="106" y="210">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="57" template="../../obj/shop.tx" x="392" y="162">
<object id="57" template="../../obj/shop.tx" x="408" y="146">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="43" template="../../obj/shop.tx" x="152" y="451">
<object id="43" template="../../obj/shop.tx" x="152" y="435">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="47" template="../../obj/inn.tx" x="311" y="227"/>
<object id="49" template="../../obj/shop.tx" x="520" y="225">
<object id="49" template="../../obj/shop.tx" x="360" y="258">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="50" template="../../obj/shop.tx" x="536" y="354">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="51" template="../../obj/shop.tx" x="472" y="450">
<object id="51" template="../../obj/shop.tx" x="552" y="418">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="52" template="../../obj/shop.tx" x="88" y="354">
<object id="52" template="../../obj/shop.tx" x="56" y="306">
<properties>
<property name="shopList" value="Instant,Creature,Blue,Azorius,Dimir,Izzet,Simic,Merfolk "/>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="53" template="../../obj/spellsmith.tx" x="408" y="402"/>
<object id="55" template="../../obj/shop.tx" x="465" y="515">
<object id="55" template="../../obj/shop.tx" x="462" y="515">
<properties>
<property name="shopList" value="Island"/>
<property name="commonShopList" value="Island"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
@@ -141,15 +179,67 @@
</object>
<object id="62" template="../../obj/shop.tx" x="360" y="370">
<properties>
<property name="shopList" value="BlueItems"/>
<property name="commonShopList" value="BlueItems"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="63" template="../../obj/shop.tx" x="263" y="371">
<properties>
<property name="shopList" value="BlueEquipment"/>
<property name="commonShopList" value="BlueEquipment"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="65" template="../../obj/quest.tx" x="312" y="146">
<properties>
<property name="questtype" value="island_capital"/>
</properties>
</object>
<object id="66" template="../../obj/shop.tx" x="264" y="258">
<properties>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="67" template="../../obj/shop.tx" x="472" y="178">
<properties>
<property name="commonShopList" value="Enchantment6Blue,Creature6Blue,Instant6Blue,Merfolk,Wizard"/>
<property name="mythicShopList" value="Planeswalker4Blue,WUBRG,RWU,RGU,UWG,RUB,UWB,UGB,Legend4Blue"/>
<property name="rareShopList" value="Artifact4Blue,Land4Blue,Azorius,Izzet,Simic,Dimir,Vehicle2Blue,Wand4Blue"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Pirate4Blue,Spirit4Blue,Sliver2Blue,Rogue4Blue,Multicolor8Blue"/>
</properties>
</object>
<object id="68" template="../../obj/RotatingShop.tx" x="574" y="471">
<properties>
<property name="rotation" value="Blue1,Blue2,Blue3,Blue4,Blue5,Blue6"/>
<property name="signXOffset" type="float" value="-4"/>
</properties>
</object>
<object id="69" template="../../obj/RotatingShop.tx" x="50" y="472">
<properties>
<property name="rotation" value="Blue1,Blue2,Blue3,Blue4,Blue5,Blue6"/>
<property name="signXOffset" type="float" value="14"/>
<property name="signYOffset" type="float" value="14"/>
</properties>
</object>
<object id="70" template="../../obj/RotatingShop.tx" x="136" y="130">
<properties>
<property name="rotation" value="Blue1,Blue2,Blue3,Blue4,Blue5,Blue6"/>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-4"/>
</properties>
</object>
<object id="71" template="../../obj/shardtrader.tx" x="400.909" y="208.727">
<properties>
<property name="signYOffset" type="float" value="-4"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.1" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="64">
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="73">
<editorsettings>
<export format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../../tileset/main.tsx"/>
<tileset firstgid="6321" source="../../tileset/buildings.tsx"/>
<tileset firstgid="10113" source="../../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztmG0OwiAMhon/hufRGQ+ye0ydF/VjHkca10jIGF9CUfvjDckC6UMLZH3HRoiR9TPaKLUVcNi4Hkr3yvYBsc5SiJN8jTY+mLdVGqZ5t0J8kLOrpjk+3APO2SkdZXk+W9xefdsTsJl5WaoZ7mO19pe+PmSdKV++lBipsp09vcaUfCDX20LN53ozqPlc95Kaz+fOMx/zMR/zMR/zMV9ZPkq2b+CD3rGtmM/1j0/NBz1kzf/Qvv5GiMwYnUcM6MUOU8+NvoY+Lp3BEHWRfDon+gIujyNFGAe8B8hLiP+AvgCsRdZP82GcGE/p0rw9Fax7Dn8l9mz3mXjm8pCjLv/CV6pONekJ5zkFQw==
@@ -12,12 +12,12 @@
</layer>
<layer id="2" name="Ground" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzdmc1u00AQx4dYFFo1uTT2IalDEEgFDkiIFs4InqDwJnAnLULio6SJaPkQ515KX6ag8gK0nFCbcMiZHbwrj9ez67VlgsNIf62TXa9/+Y+9XU9XGgCv62ltCanY8AGe+VG7qemp0OUgHntNzHejAalYrwG88QDGop1InQpte7HOSJ/SS4btRT15jUtBxIBtV6gnubpBks0WI4Zp4KXHjIlw/EojyXXd8PtpoI+h4DppurFh9KU/v2rpvqE2RrFha/JMjx1yrHy0eXfrHM+oe6aP63vJnLt65hpvHcdx/HrgPYvPwa7Qu4rpfT3yEvluC+9WK6Y1mU/Ma5X5MGaN767QlynrTg4+2jetsDHMKt/REkDgl6tvS+Xx+X75PpnmNDHsVJzP1qfmOt8CmGtFx+0OwHInPf9JCPAjjD+HbYBOW54j2uX23+Obmwe44KA9S9/FeZ5P/R2exv13byF7TJn+PW7mezaRL2vME8OekWP4uZjNnidc/DMFx4DvCqeL1eXD4PZXs8B3RawHV+Wa4HLM8X0X682xXHMOZLst28+yHYR2Pm7/h32uawrV/QXzulLUv6y+PGHK777m2b7mHXqbl6+M/OaJvHxF8vtA43veio8Hmnd9zdN/mV+X+J/4PhZ8X0W+ou/SH+rufEWE8yFfWe+Cs8Bn2h9Uhe+VrEEeNoq/tx7J9qvkO9S+LyqcD/cvx824jsfVlLCG9Iip2XGhP7/cuZ/cpvoTmN/NjFrjyFBTdOHDc7c8gIe1SJT1pqG+NiTHmN+ezzOuyzmxZmy6hgvfhNRr1Tyu+cD8bshack9jpPXiM3INm5ccH62HTwgnZRxCOtS9oWrJnSDp44jMperuWR6Y+MYap+136nlDLlWL75K6MlerpvV3vY7M8fUt/zvQPVRs1AvUb9TxixY=
eJzVmUtv00AQx7exVETU+NLYNyCc8iDiIaAc4ILgExTO0O8Ap4JEWi48SiCiLSCu8AlaOPAtCgpnqOBEaBJAObODd+TxenezdtzUjDRaZ3c9/vk/fqwnVZexx6W4r3FHW/EYu+8F7ark97gf98O5NR6v4bKYLRYYe+IwNuTtSPge96dO6H0yhv5QwfagFD3GMT9ggLbCvSW4Kn6UzWQDBdMzJz5nSBzmV90oV11z/tRAxyOc63vZjg2sLfT5VYiPdaQ5yAatTjPZ1sk26mjS7syMmlHWTJ7XdqI5t9XM1p5bzlPxywbXLNwHG9w3c+YvSoGWwHeWa3cuZ35e5BPymmc+sP+N7wL3j1P2hQR8dGxaZmI4aD73RDq+7jxjvpetf56P810upuPzvOy1wpigGbYmvvUD4qOMk+rXrfG81ILtH03Ges34cd/xvvek/2edr1XqYh/e9urRmG8OM3ZI+O6EfLMklsnfWszZ8oL2ajHQD9/D07j+IE/jDGPSuWnv31vlZPfmtsWc2+WQD68/HUNvbry2WeuH9qUY5lynH3wr7M3tL1+/ytft1fD3TIOxQiM+T8egWl9lrZ/cr5qXlO8UP8fT4jx/82fDH/F80PXjcS/ysUtifIs/b7abQf9d8ey5KX7fEb+XmmY+1foPxmyfKdSvFNX9X6X+3QT6jRtLYpi3D7PR/mWhEWq2LGkH2ibls8kp7ad8Se5jE4NpbJL8Yj6pjkuSdjckTaeZ3zS2X3x0jUjfH6p1XlZ8rxJ8p8L7FL9XQb8Nqd/WX5bs+dI4xFOt4yaJl3c+3fogL3yPRA1yx03/3doV7SfBtyP1p3WIB+uXb+WwjqeqKUEN6bqiZqcy+fmi2ve1Xah/BvldHVNrHGhqijZ8sO+aw9i1QuCU9aSmvtYh25DflqdmXBQxoWasO4YN34jUazGObT4gvyuiltySGGm9uE+OYdJSxUfr4SPCSRk7LG54bWAt+agf1XFAYmHdfZwGOr6hxGk6TzlvwIW1+AqpK6tq1bT+LteRVXxtw38HsobIRrUA/wuF8ano
</data>
</layer>
<layer id="6" name="Ground2" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1sEJwCAMheEMUCEDFNdw1dRpLfTmpRFSDPT/Ll48PCM8IgIAQKx+xN5DHGaOv2tld4K8ss3Gm8fuXrsc3ZbtfQDYS954um2VMXM59Tmr7s2Bb/C/AGYDsZYG7w==
eJzt1UEKgCAQhWG3QYEHiNZ1gm4a1mkLWkTBhMTYK/i/jSAuxlHehAAAgK+l9j0HP/QcCn2lruAwNuoKzgZ6Y8qtJ225Nmdk29fuB7yBuf9vd9n2dH6kgn9iMnLW2ldp4752UVsHyuB9AVytTOkIyg==
</data>
</layer>
<layer id="3" name="Walls" width="40" height="40">
@@ -30,55 +30,79 @@
</layer>
<layer id="5" name="Overlay" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1DsKgDAMgOHoolvnWupR1dv5uIleQgMKDio4WErl/6AhfUEgEBEAAID/ma3IYvd89Rrq65tRzyd/7jMnkrvjT6XBha4SQCoKnQele5/f6XXeDP75HvF80V8Au8aItLo6E7sShEB/AaRmAzrgDb8=
eJzt1O8JgzAQh+HfBo5gv2nEGatb+GeTdolaLdQFdA4PbLFgP0hBRPs+EHI5ErgQchIAAMDxXELpGo7xLZaqeL6nsFz5kb87qXavMzZXbv06gb1pAukRTOvO/kn/B3/laXds3fL4zY+kUzTGmfWb/EsvwvZ+fV8Ac2dPSmyk3taVYA28L4C9GQDl9SK0
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="41" template="../../obj/shop.tx" x="249" y="370">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="56" template="../../obj/shop.tx" x="153" y="371">
<object id="56" template="../../obj/shop.tx" x="152" y="370">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="57" template="../../obj/shop.tx" x="201" y="418">
<object id="57" template="../../obj/shop.tx" x="200" y="418">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="43" template="../../obj/shop.tx" x="105" y="370">
<object id="43" template="../../obj/shop.tx" x="104" y="370">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="47" template="../../obj/inn.tx" x="376" y="370"/>
<object id="49" template="../../obj/shop.tx" x="105" y="418">
<object id="49" template="../../obj/shop.tx" x="104" y="418">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="50" template="../../obj/shop.tx" x="152" y="418">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="51" template="../../obj/shop.tx" x="248" y="417">
<object id="51" template="../../obj/shop.tx" x="248" y="418">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
</properties>
</object>
<object id="52" template="../../obj/shop.tx" x="201" y="370">
<properties>
<property name="shopList" value="Instant,Creature,Red,Rakdos,Gruul,Izzet,Boros,Goblin "/>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="53" template="../../obj/spellsmith.tx" x="152" y="258"/>
<object id="55" template="../../obj/shop.tx" x="368" y="433">
<object id="55" template="../../obj/shop.tx" x="366" y="433">
<properties>
<property name="shopList" value="Mountain"/>
<property name="commonShopList" value="Mountain"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
@@ -156,13 +180,74 @@
</object>
<object id="62" template="../../obj/shop.tx" x="361" y="258">
<properties>
<property name="shopList" value="RedEquipment"/>
<property name="signYOffset" type="float" value="0"/>
<property name="commonShopList" value="RedEquipment"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="-4"/>
</properties>
</object>
<object id="63" template="../../obj/shop.tx" x="409" y="259">
<properties>
<property name="shopList" value="RedItems"/>
<property name="commonShopList" value="RedItems"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="-4"/>
</properties>
</object>
<object id="65" template="../../obj/shop.tx" x="200" y="370">
<properties>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="66" template="../../obj/quest.tx" x="328" y="370">
<properties>
<property name="questtype" value="mountain_capital"/>
</properties>
</object>
<object id="67" template="../../obj/shardtrader.tx" x="337" y="403">
<properties>
<property name="signXOffset" type="float" value="14"/>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
<object id="68" template="../../obj/shop.tx" x="400" y="337">
<properties>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="69" template="../../obj/shop.tx" x="464" y="337">
<properties>
<property name="commonShopList" value="Enchantment6Red,Creature6Red,Instant6Red,Goblin,Devil,Dwarf,Dragon,Minotaur,Shaman"/>
<property name="mythicShopList" value="Planeswalker4Red,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB,Legend4Red"/>
<property name="rareShopList" value="Artifact4Red,Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle2Red,Wand4Red"/>
<property name="signYOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Wolf4Red,Sliver4Red,Knight4Red,Soldier4Red,Dinosaur4Red,Ogre4Red,Multicolor8Red"/>
</properties>
</object>
<object id="70" template="../../obj/RotatingShop.tx" x="495.917" y="305.432">
<properties>
<property name="rotation" value="Red1,Red2,Red3,Red4,Red5,Red6"/>
<property name="signXOffset" type="float" value="16"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="71" template="../../obj/RotatingShop.tx" x="511.091" y="227.455">
<properties>
<property name="rotation" value="Red1,Red2,Red3,Red4,Red5,Red6"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="72" template="../../obj/RotatingShop.tx" x="527.455" y="193.455">
<properties>
<property name="rotation" value="Red1,Red2,Red3,Red4,Red5,Red6"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.1" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="65">
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="73">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../../tileset/main.tsx"/>
<tileset firstgid="6321" source="../../tileset/buildings.tsx"/>
<tileset firstgid="10113" source="../../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztzrENACAMwLAOSFzZ7zmEJ6qCwEPmOEdEqqQ174iPj4+Pj4+Pj4+Pj4+Pj+98fHx87/kq6/rw8f3s21DxrDk=
@@ -12,12 +12,12 @@
</layer>
<layer id="2" name="Ground" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztmEtOwzAQQL0iTnqCLiqBYAcUroAQcCTYUtYpqHADPseAq0AL67bAAfAoHWU0jdNxbNMgMdKoVho5L/N3lGqfTLVSh5lSw3TdJNWSpwVbTL6TRKnTBnqWlLaLyTcxz3lvoB9Jyfap28sHbPuZ7FmDTqlN+c67Sl10izUXzlfFBjlzYK7NzO9cL3NxdeW7NWx3Qr4qu9GcuSZx2YStim/D7JlU6FO6zFclUj6pSOPvyNhqu6fUTq+eb9fc960Lvj7xsytXEz6J/UBGxIbcjv98f5+P5ohLfVwH341n7wvNR2caX9/G4MsDxh7y3ZPaa1sjH16T8oXw72tW9ok3y/p4sR5nbnxQo+ce801s//raMCQfz41QfKHiD3rvl2HcIz04RH0OGX8o6Oc21Ocpi3/qZzrDrIsvZ/7jOeJjw9B8YLu6MyHEr8s5cTP140NfosDsUvfOfJ9QauMbkfMlsraNr5+V62GL7Ddj31/yhS3bwkdzFPn6K/xLa61EH4X3jWv4MP6wfwDfi7n+LMw9F7tQfejY/6N8vH8B31Yqrw2r+OBdB7pQyTvD/Vfa3v8vdbmfjwIL8NFaK9mbsvn21zqZJMt8NuFnMpxPfOfjUHz0TAtMmAuxbOfKZ/vuE1Oa8MWMNy4ufOBPmIt/iw3EhW+V/AAJonRV
eJztmF1OwkAQgPfJ7pZL6BsJilyBGMV76EXEZ9BwharHwKso6jMgHMCdlEknQ7s/3a3UxEkmbEu7/To/O7MVon2ylEIMUiGm6tAk5TJROVuTfJeJEFc1dJQUtmuS70M/57OGfiUF27dsLx+wnaVuzxp3Cq3LN+oKcd3Nx1w4Xxkb5My5PrfSv2u5z8XVl+9Gs9068pXZjebMA4lL5MmUnw0535G+PynRF7XPVyY2vmEa5t8qhXk3PSG2PTNfT1+3lTlfn/jZN+7q8LnYD2RGbMjt+M/39/lojvisj4fgewysfbH5aE+TWXybKfMx8mVkbasau/JR28E9Jr5haj5GPvps2xh/Xfhi+fctLerEe8X4YjdeePLBGr0O6G9ixx/nC7Whb/zhuTI+mhsx+WLFH9TejWY8JTU4xvocM/5Q0M9tWJ+XLP6pn2kPcyi+CfMfz5EQG8bmA9uZ9oSQXz77xGMVxoe+RIHexfTOfJ5YWsU3I/tLZG0bXz8txtMW2W/Fvr9MdrZsCx/NUeTrW/xL11oXfXa8bmHgw/jD+gF8r/r83DH3fOxC9alT/R/l4/UL+E6U+9pg44N3HctcXd4Zrr+X1fX/Thbzheh81+PStdZlbsoWWl9Ngr2LrdaD8D0Z9ieh/XEsPrqnBSbMhaZs58tX9d2nSanD12S8cfHhA39CX/xbbCA+fDb5AV5mcmA=
</data>
</layer>
<layer id="6" name="Ground2" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztlO0KgkAQRS/+y4L2r5jWixWaQj1G9PHeuYhkwyJSaw7bPTDM7AfsYdhdgPjiuvQX9KOfL79bAtybeCQ6/bT3j370C8VvnwKHVK/fN/ybX5UBdTZcd7jmpvbzDf10+fH+0U+rXxW9j+vIvW8uv0/YroBdE/GizV1sTJtz81qzWdb9ORfnXo/KEf3SxFGBr7xzWimE50mBt3SS4zHvl7iRvZySy/p3Z4WK/c8tuZnXg5DQeQKDcgII
eJztl80KwjAMgIM3f8A+gEyPY0wv+ibqXaeojyE+uStzOMomTc3a0OWD0J8d+pGMLQUQqHhN6SIGv+uItx8Wn37FJ3c3RA67ztqnAIcyjinOD1s/V78h1peT34mozj7zd3ZwDlnfu4WvD791BrDJ8P6+/Lq4MMnfP1D7bXOAXf57XtO217cfNeLHy0/eP/Hj6mf+L2x6We75W84AVmVMxtVYx0JVY6K+z/Rozpt7bTwaOXLpr0JSMPC16VE4YPb7Nr1p35hO5pr6LjokqO53Njzn/s6KFf091yQqrIcgxM4bns4Cfg==
</data>
</layer>
<layer id="3" name="Walls" width="40" height="40">
@@ -25,61 +25,94 @@
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJztmEsOgjAQhmdnJMGVK4gbT4HixnAO3eol9CC+Nt4J3fk4iRBpLDh9wACW2D+ZpJ06088WhrQA3dDOBdgbYgf3my8YAEwymyV2IVhYIUfIzT8dyPmw8TIKKuRQzR9w//n6A76YW0cRH3Xd6sgliu0637lPn4MSq8o5d+hzUGItHy2W949HHz9rMz5sjPe1wXdPWHr9tz2yduTk+3z76ejNkWrhAyx9Gh8mk/YXk0l8Gw9g6+nxrZK9Whf2q2k+rBbL1q/4+zbfD2YR4mNW5v2ogw+TSc8fJpP4ZPW5OI71f1mfizXaPn96OU3gO0nOeymf7hn06DbDJzoTpuellC8WjIti6ubD/MPsO3dz8v2m1Mb5iCLLR1OX+U6S+yOVdsj9E+ZTxYtqE/V+CIsvk1PnfoiNi+q0qibL+FQ5sXheZWqvbm2umpN6f2Zl9S96AU0B1qI=
eJztmEsOwiAQhlmYmJLUe1ijW6t1oXHvAX1tvFN15+MInkCJEsc6QNvpAyJ/MhFmMsPXWiYBxtzQOmRsY4ltw1++uMfY5G2zpx0JlpSokYD1pz09HxYvorhEDdP6MXjmUwt8KXiPKj7qe6uilirXdb5DQF+DkmuqueD0NSi5no+WC/33wccvx5IPi0FfE3yXJ0s3eNn1PV7y7zkc33i+NYSGEWOjiMaHyab/F5NNfKLXrfpqPtgLx9Fvb6ybD3tX0JeNZ+dN7g9pS2RfSCuyP6rgw2TT94fJJj5df87GsXmb/dl/f+7y7TXnPcGX9wy6C+vhU50JxXlJ8KWKuCqnaj7MP++8fs/8e16XmjgfUeT5aHKZb6+5PzJpjdw/YT5Tvqo3Ue+HsPwiNfPcD8m4qk+berKOz1QTy4cq0nvz9uayNan3Z15e/6IHVk/fZg==
</data>
</layer>
<layer id="5" name="Overlay" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt1E0OgjAQBeC3EnddF9LD6EYSvARswEsIx/JoLp2dEUqDkTKA70ua9G/xkmkHIKJf1BZoZNysdhLySRxwdNopPj1S7QTxHJx/PnbWv7Nlpww4Z9op/lspf6ua+L8KqdV1pF4XeZe5C899d4nmEOv9hfqzb29P/ZnoW3cDtDI6o51k6GnDayIieltzPyei5bwA2sMSFQ==
eJxjYBgFo2AUUALMNRgYLIDYUmOgXTIKsIHr2gwMN7QH2hWooENzoF1AO3BNGzsblxy6mqEMBLUYGIS0BtoVIxsYAvOWEY78JQ+MGwWk+JEGsmVwxJe4DgODhA5+Nja1hIAvnrxvDXSLDZp7LEbT04gEtEp/+MpnbGLDqXweBaOAVFDHz8BQD8QN/APtEkywiBk/f6iBAk38/MECLAepu4ZK+I2CUTBQYDCX56NgFIwC+gEAuogcaQ==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="41" template="../../obj/shop.tx" x="465" y="260">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="56" template="../../obj/shop.tx" x="416" y="260">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="57" template="../../obj/shop.tx" x="545" y="259">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="43" template="../../obj/shop.tx" x="370" y="325">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="47" template="../../obj/inn.tx" x="536" y="144"/>
<object id="49" template="../../obj/shop.tx" x="417" y="324">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="50" template="../../obj/shop.tx" x="465" y="323">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="51" template="../../obj/shop.tx" x="545" y="325">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="52" template="../../obj/shop.tx" x="369" y="261">
<properties>
<property name="shopList" value="Human,Boros,Orzhov,Selesnya,Azorius,White,Creature,Instant,Angel"/>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="53" template="../../obj/spellsmith.tx" x="452" y="212"/>
<object id="55" template="../../obj/shop.tx" x="465" y="515">
<properties>
<property name="shopList" value="Plains"/>
<property name="signYOffset" type="float" value="0"/>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
<object id="58" template="../../obj/entry_up.tx" x="320" y="644" width="80" height="20">
@@ -143,15 +176,17 @@
}</property>
</properties>
</object>
<object id="62" template="../../obj/shop.tx" x="263" y="257">
<object id="62" template="../../obj/shop.tx" x="80" y="338">
<properties>
<property name="shopList" value="WhiteItems"/>
<property name="commonShopList" value="WhiteItems"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="63" template="../../obj/shop.tx" x="82" y="257">
<properties>
<property name="shopList" value="WhiteEquipment"/>
<property name="commonShopList" value="WhiteEquipment"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
@@ -166,5 +201,51 @@
<property name="sprite" value=""/>
</properties>
</object>
<object id="66" template="../../obj/quest.tx" x="200" y="257">
<properties>
<property name="questtype" value="plains_capital"/>
</properties>
</object>
<object id="67" template="../../obj/shop.tx" x="208" y="338">
<properties>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="68" template="../../obj/shop.tx" x="128" y="338">
<properties>
<property name="commonShopList" value="Enchantment6White,Creature6White,Instant6White,Angel,Human4White,Soldier4White"/>
<property name="mythicShopList" value="Planeswalker4White,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB,Legend4White"/>
<property name="rareShopList" value="Artifact4White,Land4White,Dimir,Rakdos,Orzhov,Golgari,Vehicle2White,Wand4White"/>
<property name="signYOffset" type="float" value="-2"/>
<property name="uncommonShopList" value="Bird4White,Spirit4White,Sliver4White,Knight4White,Multicolor8White"/>
</properties>
</object>
<object id="69" template="../../obj/RotatingShop.tx" x="481.667" y="418.667">
<properties>
<property name="rotation" value="White1,White2,White3,White4,White5,White6"/>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
<object id="70" template="../../obj/RotatingShop.tx" x="541" y="193">
<properties>
<property name="rotation" value="White1,White2,White3,White4,White5,White6"/>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
<object id="71" template="../../obj/RotatingShop.tx" x="401" y="161">
<properties>
<property name="rotation" value="White1,White2,White3,White4,White5,White6"/>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
<object id="72" template="../../obj/shardtrader.tx" x="272" y="338">
<properties>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.1" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="72">
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="40" height="40" tilewidth="16" tileheight="16" infinite="0" nextlayerid="7" nextobjectid="94">
<editorsettings>
<export format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../../tileset/main.tsx"/>
<tileset firstgid="6321" source="../../tileset/buildings.tsx"/>
<tileset firstgid="10113" source="../../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztw7ENAAAMAiB3l/5/rX80kNBLqqqqqqqq+ugA4iKowQ==
@@ -12,12 +12,12 @@
</layer>
<layer id="2" name="Ground" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzNWMtS21AMveCEadg4yY7yDcCwhg5fAf2B1oUWvgE2rMtjSdOCyd/Qx7eUwppK1BqOFd3rm9RJrBmNh4skHx097DhLnUu6zrWVLpJ+SP3KPu/oOqSrSBaw1fHZ97b7ou/T0fuzX8vjq+0t1TloHILBirUEebHkYIf3z5W/cJJ3y/n51Iqp8ScG5qHCl6maCG8sLSOmT/fTclzxXYKcNGaspcZlxckgJ41v0priOZ4lETlbPu1IfFV9PG0VfBqHrx6xfTmJWrkLPpynp1fO7SyPquuMaugc/awr6kKnnLtgtfANyPbrjPVbx943Fr7c8D9ede5kdXb4BGMsvivC9mXG+ERi8FXGJ+zX/4H/WuHbpdq+hfry3pHdOwm+uvk7JzyXar/ILpkHPs2fcGjVV+b3huqVGzW7pbNhzb1o9d858If1ncd+sfjD+Zh3favmt2nzofHhO2MTnh9Nw1fVf22ocVP2iwi+N/CMNK2+WurAt7bi3PpKPfzhs25e/RfiD59108J3+rpZ9Z1m/zVtfrVs0e+BbdKkE75ug12LdNGws3zwXP5+sxyPLyR6lkQGBgcbPec2e3HxfHHHFZmlTH1LyIseQkyf+s4d9cPYzijWYzo6o1YOIdFc5Oq3seD7QTYH/bKtzkXkD539Tv240O5R+euYmgv5lobvPIyP7Q6Vrc4F7/uZzveAH+EB+RA75NAXE/+P3xcGY+4IFq7pRaHCofD/kfRX76UHmOf7ijr76iT4xtkRPmF8PwtlfMzdQ1Ffi0fElhTvYJzTXlquSz4Bf5Zwf3wnXHe9fz0i+BgX8/hg9OLz/aGeXJf7tGxbF3/cd1JbFsGH6uMQRc9eLH+hHmHR84VciIZ6UXaR9U4Rw1/V3FmiOQztS995XfX14WPOLgou9U6KkWnh+wtIU1uf
eJzNmM9u00AQxpc6qUgvTvISkXJBPbeIR4AL5QWKW/pH0Jb3gJZzAJm+TVt4FtLmCHQGPOrnyex6E5zEI42sbmfXv/1mZu04S51Lus61la+R76V+5zm7dL2kq1gWiNXr89xv3Qd/nU7fn+e1PHN1vOV6D5pDGKy11mFfbDnE4f1zNV80ybvl/fncWlPzJwbzpeLLVE5EN7aWsabP99PyujJ3HfakmTGXmstaJ4M9ab55c4rjOJZE7Nma047kq6rjRbvwaQ5fPmLrch639i582E9/Hjv3bGPaXWfaQ+M4z7qiP+qU9y6sFt+IYj8v2b907PPG4suN+c+Hzr0YLo9PGGP5DontaMl8YjF8Vf6W2N/9B/9XxfeScvsK8svnjpy98/DVrd858XxS54ucJavg0/qJhlZ+pX9PKF+nRs7OaOx9zbVo1d856If5XcX5YumH/bHq/Fb1b9P6Q/PhO2MTnh9N46uqvzbkuCnnixi+N3CPNC2/2urg+zVw7vegHv3wWbeq+gvph8+6JvItIr+L5Gta/2rbot8D2+RJJ3zdhrgW+ZoRZ83Bcfn76UY8X8h0L4mNDA2e9Jzb7MWt51t3VpNeytS3hLyoIWQ67Dt33A+zfaS1Jul0j1p7CJnWIle/jYXvhmLe9Muxei9itzT2M/VzYdxEzddrai3kWxq+8zAfxx2pWL0XvO8HGt8BfUQH1EPiUEPfmvh//L4wmvGMYOOcXhQuGor+B+Q/eg81wDqPK/Lsy5PwzXJG+Iz5vhfOfKzdXZFfS0dkS4p3MN7TTlrOSz6HfpZxfVwT11XvX40IH3OxjndGLf69P+ST8zJOy7F16cd1J7llEz50n4Zouvdi9QvVCJvuL9RCPFSLchZZ7xQx+lX1nWVaw9B56RuvK78+PtbsotBSn0kxtii+e9gCXBk=
</data>
</layer>
<layer id="6" name="Ground2" width="40" height="40">
<data encoding="base64" compression="zlib">
eJztV21uwyAM9d+EkAu0UrMzbCeYmuxc066ytuutuia9R0EFxbKgITRQNvEkqwSS+uFn8wGQkZHxX/DNAXZPsj2f5vdeA3TCfiNbK2xbu/FzeW9puPrN/B7za3uvLwEu5Xy/fA1Qr8Pz+2QAh8L+HeYv24OwTpnLvB7ldxTcvpj9Ozwu51KI51LZSxWe31T8ML+puSzFT+sk7UNYq/QayG9HxmX73lyW4rcRujTVqBM1PMaKm6ayj0WK3xxITXXMZC60JL4DsY7UT2h+kpOtPkzxbpA2sn5i8otRH68rgLfVrc/Wpvzu6Ut1xm0ffXvynyYftH41P1xXum5MuupnH32xD1rD2kdDeJg0ddU6Rv61hji7roWh8++IdKTxDrG/9ZY8ozmO829uzfry++Fj/pnWLFM/U+uz7/3lwN34nWbeGwZh53rcP06qz+cOcg54Lsbrc4qYOn89G6nHz2fPjYnU9cXnvxSRev5tKrd9LCPjL+EKsTvNGA==
eJztV0tOwzAQHQk2iZtcoWFJrgArRIPoniPAPShXgZYeClRacw88aqwMlv9x06rKk0ZxHNvzMs/jD8CIESPOBe8FwMeRbFm4+d2VAI2wn4FtJuy+9OPn0y41fP2m4LfLAX7zsD5D8ntlAG8srE9ffiExofy+aoDvOszvi6W9iR/6XGXmfpQ/tp2JcuNp2K9v/NaZXTP6Hfll4j132ILtn1eT/vxc8aP8XP8isSBtVL8mjWk71Iy39pB3mnHl2SjfsWz7Fxe/eW3mSNtNRdyriVkf+o1le02xjiWInwmx6wtqKmMm84PGlyuGdcjPlB9zD31duBFj3NYdJ1d+0HhXRJsU+aEDzRnKzzc/YvzKdhciLpdtbExllZ9NX1VnWo5Z/3bKmDofppyleSXzRqerfI/Rl/pQc1j6qBQeOk19tT50/ur2NJ77r4WHmH8Ua6KjGm/U7+k6LT+6d5jmH63DOIXmbCy/z6Kbf7o1S1fP2vU59v6yKvz4bQLvDVzYtuz2j01bF3MH2QbO+8f6/9MG25lZHcdnvFBuz44xXeevlNxiEHPnGBIxe+6QcOl7bNDz3yni1OfftD2HjBhxTvgDGpfgIw==
</data>
</layer>
<layer id="3" name="Walls" width="40" height="40">
@@ -25,12 +25,12 @@
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJzty0EGACAABMA+ED0gvb7+2SkRHYoOMcOyh90QAAAAAO60eJahHv7W/ws5zV7SfgcA/KEDgLsSbg==
eJzt0sEJwCAMheG3gOAA0rvOXSdrd9BjT8UiFipFRPg/CCSQQCCRAADAX0eQzlDq5KXs5+0DzPL8/S851sJ9AbRE0xe3vXOunh/B2ZJv9r0PAACs4QIr1ijS
</data>
</layer>
<layer id="5" name="Overlay" width="40" height="40">
<data encoding="base64" compression="zlib">
eJzt0ksKhDAQRdGa2xB00kotQFdpC/3R7eoKrIETUVoRY4HcA4HiQUjIiwgAAH7eKvLRZd5bNqzk8Pe1Xn4r3bSWdXQWXWJv/ND989VKO7fS/TPmYvb7tD25/p+30O9xaSGSFd638HPG/8M91EHkNa0meN8GAADc3Qj2GhFY
eJzt0sEJg0AQheHXgSWYm6ztRGOqibZmLqYHc0kuWkbmEGHBJeTgsiT+HwizD4SBeRIAAOkcS6kq13lv2dXLB5tv3nt00t3F3w9rtd3hFLhZY9k5kGNbfve/mfcmtw4efriHMe872T+z+zwjnkchPYvUW6RD/7C4ZFL7/ros9TYAAODfvQDOSyqr
</data>
</layer>
<objectgroup id="4" name="Objects">
@@ -38,8 +38,9 @@
<object id="53" template="../../obj/spellsmith.tx" x="392" y="194"/>
<object id="55" template="../../obj/shop.tx" x="416" y="402">
<properties>
<property name="shopList" value="Swamp"/>
<property name="signYOffset" type="float" value="0"/>
<property name="commonShopList" value="Swamp"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="-2"/>
</properties>
</object>
<object id="58" template="../../obj/entry_up.tx" x="258" y="639" width="97" height="20">
@@ -106,54 +107,137 @@
</object>
<object id="62" template="../../obj/shop.tx" x="216" y="241">
<properties>
<property name="shopList" value="BlackItems"/>
<property name="commonShopList" value="BlackItems"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="63" template="../../obj/shop.tx" x="115" y="241">
<properties>
<property name="shopList" value="BlackEquipment"/>
<property name="commonShopList" value="BlackEquipment"/>
<property name="hasSign" type="bool" value="true"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="64" template="../../obj/shop.tx" x="376" y="274">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
</properties>
</object>
<object id="65" template="../../obj/shop.tx" x="376" y="322">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="66" template="../../obj/shop.tx" x="424" y="274">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="67" template="../../obj/shop.tx" x="424" y="322">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signXOffset" type="float" value="18"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="68" template="../../obj/shop.tx" x="472" y="274">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="69" template="../../obj/shop.tx" x="472" y="322">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="70" template="../../obj/shop.tx" x="520" y="274">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="71" template="../../obj/shop.tx" x="520" y="322">
<properties>
<property name="shopList" value="Instant,Creature,Black,Dimir,Rakdos,Orzhov,Golgari,Simic,Zombie "/>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="77" template="../../obj/shop.tx" x="376" y="274">
<properties>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="81" template="../../obj/quest.tx" class="quest" x="248" y="306">
<properties>
<property name="questtype" value="swamp_capital"/>
</properties>
</object>
<object id="83" template="../../obj/shop.tx" x="519" y="194">
<properties>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="84" template="../../obj/shop.tx" x="456" y="194">
<properties>
<property name="commonShopList" value="Enchantment6Black,Creature6Black,Instant6Black,Vampire,Zombie,Skeleton,Demon"/>
<property name="mythicShopList" value="Planeswalker4Black,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB,Legend4Black"/>
<property name="rareShopList" value="Artifact4Black,Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle2Black,Wand4Black"/>
<property name="signYOffset" type="float" value="-8"/>
<property name="uncommonShopList" value="Rogue4Black,Sliver4Black,Knight4Black,Multicolor8Black"/>
</properties>
</object>
<object id="90" template="../../obj/RotatingShop.tx" class="RotatingShop" x="200" y="402">
<properties>
<property name="rotation" value="Black1,Black2,Black3,Black4,Black5,Black6"/>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
<object id="91" template="../../obj/RotatingShop.tx" class="RotatingShop" x="153" y="402">
<properties>
<property name="rotation" value="Black1,Black2,Black3,Black4,Black5,Black6"/>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
<object id="92" template="../../obj/RotatingShop.tx" class="RotatingShop" x="106" y="402">
<properties>
<property name="rotation" value="Black1,Black2,Black3,Black4,Black5,Black6"/>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
<object id="93" template="../../obj/shardtrader.tx" x="152" y="339">
<properties>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
</objectgroup>

View File

@@ -0,0 +1,116 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="55">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJzFlN0KgCAMRr3N9+n3rbLoRTPqcdrASMS1RWoXB4Rcx28rbaWUDdiA3XFEniMdMOl7H8VK1HPvG2E9MGf76qUyxGpTeZ/65mfGfUbLesx5JbNCdy+caVhnHOG8pD37in+Gkl4f9M7gb3/wlspcA43j8pbITH3bOd2YddH0P5XLLbm3cril93Rqt9Sb0s3NNpf7TdaU92jMewIfOqPa
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJytld0OwUAQhacX2HoAJC68AQnB0yDxSBJBvAYSXKifh/LPTNrGZM1ut2WSE9maPd8c29Y0DzBNqTGqW4CvqnoAtUhL1ApVQpVRFe/TQ+u0vE5BZlKt0W+D2nqfaws2A+8hH1eZeDsF8PJD7ZXc41JtL7mH86AI0PdDPTOyySuI/OjT5EF9nMc18OU9TUuenuZhmn8o8H7JrHNjn4CdYWDJyvfo592y5LXlyCLX7DfsO6n/sk3nLbHvqKNKN8NBhXu4yOeR4T5zzU9Mk39SnXPy9aQzT8N0fTdQ2TL/kjMuU14T28ZsaLku6H1lcp1jLLDpPh1F34+E/XXGnmj/McS+MX9bZqpext9X55JmeXM/zTFn6ziz/kxKeW3cN3fBlwQ=
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFQwXsYGFgkMaDd7FQph8X/saKas4uNgYGeS0GBgUtCD+UFdMuZIAsr6uNaRYMZGoyMGQB8Xp1BoYN6hAxPaB6Yx0GBhMgPsvOwGANtNOGBHthekEAmQ0DepwMDK1AO9uAWJ8d1X05HAwMk4HuO88OofM4iLcXZBYMILORwVl2VBquXhu7ODH2wtwMwhdw2HsOzT+43EWsvV9YUdMgsn7kMMcljhy/yHxC9qK78SyOMMclro8W/jA+qfYih3kuEhuWbtDFYWwYTWy6QgbIYY5eBoD8Q0peR8/f5ABY+JPiB2qAUXvJAwB5S0IJ
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFowA7mKzOwDBFHcEX12FgkNAhzyxkvZSYMwrIA7jCHF+8jMbTKBgFwxMAAMK5BSc=
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="208" y="272"/>
<object id="41" template="../obj/shop.tx" x="64" y="115">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="113" y="115">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="161" y="163">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="257" y="162">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="304" y="162">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="367" y="162">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="214" y="114"/>
<object id="48" template="../obj/shop.tx" x="160" y="96">
<properties>
<property name="commonShopList" value="Mountain"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="335" y="81">
<properties>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
<object id="51" template="../obj/quest.tx" x="364" y="98">
<properties>
<property name="questtype" value="mountain_town_generic"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="239" y="100">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="54" template="../obj/shop.tx" x="304" y="98">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red,Goblin"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RGU,RWG,RWU,RUB,RWB,RGB"/>
<property name="rareShopList" value="Land4Red,Gruul,Izzet,Rakdos,Boros,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Wolf4Red,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red,Wand,Equip,Multicolor"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,114 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="57">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJzFlN0KgCAMRr3N9+n3rbLoRTPqcdrASMS1RWoXB4Rcx28rbaWUDdiA3XFEniMdMOl7H8VK1HPvG2E9MGf76qUyxGpTeZ/65mfGfUbLesx5JbNCdy+caVhnHOG8pD37in+Gkl4f9M7gb3/wlspcA43j8pbITH3bOd2YddH0P5XLLbm3cril93Rqt9Sb0s3NNpf7TdaU92jMewIfOqPa
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJytld0OwUAQhacX2HoAJC68AQnB0yDxSBJBvAYSXKifh/LPTNrGZM1ut2WSE9maPd8c29Y0DzBNqTGqW4CvqnoAtUhL1ApVQpVRFe/TQ+u0vE5BZlKt0W+D2nqfaws2A+8hH1eZeDsF8PJD7ZXc41JtL7mH86AI0PdDPTOyySuI/OjT5EF9nMc18OU9TUuenuZhmn8o8H7JrHNjn4CdYWDJyvfo592y5LXlyCLX7DfsO6n/sk3nLbHvqKNKN8NBhXu4yOeR4T5zzU9Mk39SnXPy9aQzT8N0fTdQ2TL/kjMuU14T28ZsaLku6H1lcp1jLLDpPh1F34+E/XXGnmj/McS+MX9bZqpext9X55JmeXM/zTFn6ziz/kxKeW3cN3fBlwQ=
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFQwXsYGFgkMaDd7FQph8X/saKas4uNlR+KJo8OsAnj2xWpiYDQxYQr1dnYNigjhA31mFgMAHis+wMDNZaDAw2WsTbC9OLbA4y0ONkYGgF2tkGxPrsqHI5HAwMk4HuO88OofM4iLcX2Sx0c2HgLDsqjUse2VxC9sLcDMIXcJh7Ds0/lNr7hRU1DSLrRw5zkPgrDUxx5PhF5hOyF92NZ3GEOS5xfbTwh/FJtRc5zHOR2LB0gy4OY8NoYtMVMkAOc/QyAOQfUvI6ev4mB8DCnxQ/UAOM2kseAAD38kEl
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFowA7mKzOwDBFHcEX12FgkNCBsOW1GBgUtIg3C1kvMnsU0Aegh/k5DUxxdDWj8TQKRsHwBADmvgaw
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="208" y="272"/>
<object id="41" template="../obj/shop.tx" x="64" y="115">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="113" y="115">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="161" y="163">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="257" y="162">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="304" y="162">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="367" y="162">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="214" y="114"/>
<object id="48" template="../obj/shop.tx" x="160" y="96">
<properties>
<property name="commonShopList" value="Mountain"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="335" y="81">
<properties>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
<object id="51" template="../obj/quest.tx" x="364" y="98">
<properties>
<property name="questtype" value="mountain_town_identity"/>
</properties>
</object>
<object id="55" template="../obj/RotatingShop.tx" x="240" y="97">
<properties>
<property name="rotation" value="Red1,Red2,Red3,Red4,Red5,Red6"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="56" template="../obj/shop.tx" x="304" y="97">
<properties>
<property name="commonShopList" value="Red,Red,Enchantment4Red,Creature2Red,Instant4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="RGU,RWG,RWU,RUB,RWB,RGB,Land4Red,Creature6Red"/>
<property name="uncommonShopList" value="Gruul,Izzet,Rakdos,Boros,Gruul,Izzet,Rakdos,Boros,Land"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,116 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="54">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJzFlN0KgCAMRr3N9+n3rbLoRTPqcdrASMS1RWoXB4Rcx28rbaWUDdiA3XFEniMdMOl7H8VK1HPvG2E9MGf76qUyxGpTeZ/65mfGfUbLesx5JbNCdy+caVhnHOG8pD37in+Gkl4f9M7gb3/wlspcA43j8pbITH3bOd2YddH0P5XLLbm3cril93Rqt9Sb0s3NNpf7TdaU92jMewIfOqPa
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJytld0OwUAQhacX2HoAJC68AQnB0yDxSBJBvAYSXKifh/LPTNrGZM1ut2WSE9maPd8c29Y0DzBNqTGqW4CvqnoAtUhL1ApVQpVRFe/TQ+u0vE5BZlKt0W+D2nqfaws2A+8hH1eZeDsF8PJD7ZXc41JtL7mH86AI0PdDPTOyySuI/OjT5EF9nMc18OU9TUuenuZhmn8o8H7JrHNjn4CdYWDJyvfo592y5LXlyCLX7DfsO6n/sk3nLbHvqKNKN8NBhXu4yOeR4T5zzU9Mk39SnXPy9aQzT8N0fTdQ2TL/kjMuU14T28ZsaLku6H1lcp1jLLDpPh1F34+E/XXGnmj/McS+MX9bZqpext9X55JmeXM/zTFn6ziz/kxKeW3cN3fBlwQ=
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYKAf+MdEW/MZmSE0EzOqeI8mkGDGUE5T8J8Gft3BwsAgjQfvYqFMPy78jRXVnF1sqPxQNHl0gE8e2axMYDxlAfF6dQaGDerQMATGm7EOA4MJEJ9lZ2Cw1mJgsNEi3l6YXhBAZsOAHicDQyvQzjZNiPmMSOkkh4OBYTLQfefZIXQeB/H26rMj+MhsZHCWHZXGJY9sLiF7YW4G4Qs4zD2H5h9K7f3CipoGkfUjhzkuceT4ReYTshfdjWdxhDkucX208IfxSbUXOcxzkdiwdIMuDmPDaGLTFTJADnP0MgDkH1LyOnr+JgXAynRY+MP8gF4G0wog20svO9HtpSeglr0AD9lFhQ==
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBgFowA7mKzOwDBFHcEX12FgkNCBsOW1GBgUtIg3C1kvMnsU0AfgCnN88TIaT6NgFAxPAAAOuQW6
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="208" y="272"/>
<object id="41" template="../obj/shop.tx" x="64" y="115">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="113" y="115">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="161" y="163">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="257" y="162">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="304" y="162">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="367" y="162">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="214" y="114"/>
<object id="48" template="../obj/shop.tx" x="160" y="96">
<properties>
<property name="commonShopList" value="Mountain"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="335" y="81">
<properties>
<property name="signXOffset" type="float" value="-16"/>
<property name="signYOffset" type="float" value="-8"/>
</properties>
</object>
<object id="51" template="../obj/quest.tx" x="364" y="98">
<properties>
<property name="questtype" value="mountain_town_tribal"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="304" y="97">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="240" y="97">
<properties>
<property name="commonShopList" value="Wolf4Red,Goblin,Devil,Dwarf,Dragon,Sliver2Red,Knight4Red,Soldier4Red,Minotaur,Shaman,Dinosaur4Red,Ogre4Red"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Red"/>
<property name="rareShopList" value="Gruul,Izzet,Rakdos,Boros,Creature6Red,Multicolor,Land4Red"/>
<property name="uncommonShopList" value="Creature2Red,Creature,Red"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,131 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="30" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="60">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzr5GRg6Bxk+AUHBJOqz28QuH0UY8dN3NTHg9He5xy0tbcNDcPs1OCiv72tSOyRYi+t0xU2e5W5aG+vChcqHuh8NGovde19zoGoV7HVrbSyF1QuoadnUuwlx20wsymxl5L4HUn2YiuvKGkbEKuHWvYi0/SydxSP4sGKARuK+bI=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="30">
<data encoding="base64" compression="zlib">
eJztlUFOAkEQRb8xRGZwuAcHwKg7QjScg4UbQA6A8SDKkngdIBhlqURXcgi6Y3fSQHX3Z9I7+MlPZjpV81JVnRrguDWtArOEnlc57vkZ0EU6P5D11nLgMqGLnAQrvRTAq/K44HNS5F/XgRvl2/r/+yADHgkPMzmf1YeK/1Remjy297anu/laT6b2UaAH7p0+9H7Phbv8R9Y7cPqmnyfKF4TfnBy371ahWiVui+yzjvNxNfO5BFfrrgHcN7Zj3bMQ10qzfXX7uDEx3JAYru8s9XxTcCV1AtyvfP/utoWzFcFdK/8G6rV3VNoZfdODXibvDvtcZr5210nW+09zYzFluHbXSV4abiymDFeaaWy+3/n+rA9R7D9QmN3ExKUWu0tC6sRD0KwAVxU/94f4BhOzq4Vivge4J510zNoAyJKMbg==
</data>
</layer>
<layer id="3" name="Walls" width="30" height="30">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFo4D2YAsLA4M4FfE2FuLsDWTFLl6gSRxfXouBQUGLsHmE7F3CTZw+GLAG2mlDBXthQE8bwf6kjUoTY14VL241lbzEu49YQKl/R7q9X4Fx+42E+CVXnbEOA4OJDuluoEU463FSz7zBHr/Dwd4qpHIDVBbpI5VLhkCsqw1hw8piEA3i66Cpg7GR7S3HU14R6z5SALJ5FVjshomRYq8gjnyFy1584AMr8XUqMXX1JyqGH8wP1I4TGKjEEh99moTtxaaPGgDZ3hxN/GppZe8oGAXYAAB7/jCB
</data>
</layer>
<layer id="5" name="Overlay" width="30" height="30">
<data encoding="base64" compression="zlib">
eJxjYBhYMIuXgWE2DfEcXuz2WvDR1l9WOMwftXdw2dvKw8CgC2WfgvLpYS8IXNNGpellLzlgKNqrqcnAoKVJWIwSe3XwmGGuAVQPxJYauNXoovGJtRc9yYgDHSIBdUww0L4QIA6F2nsTqPgWmoZTZNqriqM8FcUXEEgAPX9hs3eX9uBOV/SwF1+9CKvTiFFDqr3IZREuNinqBns4j9o7au9QtvcaUPw6kRgZEKvnBo39NQoGFwAAZ+tPHw==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="219" y="383" width="28" height="16"/>
<object id="41" template="../obj/shop.tx" x="97" y="305">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB"/>
<property name="rareShopList" value="Land4White,Azorius,Boros,Selesnya,Orzhov,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="56" template="../obj/shop.tx" x="208" y="144">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB"/>
<property name="rareShopList" value="Land4White,Azorius,Boros,Selesnya,Orzhov,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="57" template="../obj/shop.tx" x="240" y="144">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB"/>
<property name="rareShopList" value="Land4White,Azorius,Boros,Selesnya,Orzhov,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="352" y="306">
<properties>
<property name="commonShopList" value="White1, White2, White3, White4, White5"/>
<property name="mythicShopList" value=""/>
<property name="rareShopList" value=""/>
<property name="uncommonShopList" value=""/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="224" y="211"/>
<object id="48" template="../obj/shop.tx" x="290" y="225">
<properties>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signXOffset" type="float" value="-32"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="49" template="../obj/shop.tx" x="304" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB"/>
<property name="rareShopList" value="Land4White,Azorius,Boros,Selesnya,Orzhov,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="50" template="../obj/shop.tx" x="256" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB"/>
<property name="rareShopList" value="Land4White,Azorius,Boros,Selesnya,Orzhov,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="51" template="../obj/shop.tx" x="192" y="306">
<properties>
<property name="commonShopList" value="Everything"/>
<property name="mythicShopList" value=""/>
<property name="rareShopList" value=""/>
<property name="uncommonShopList" value=""/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="144" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWG,RWU,RWB,UWG,UWB,GWB"/>
<property name="rareShopList" value="Land4White,Azorius,Boros,Selesnya,Orzhov,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="53" template="../obj/spellsmith.tx" x="157" y="225"/>
<object id="54" template="../obj/enemy.tx" x="16" y="240">
<properties>
<property name="dialog">[{
&quot;text&quot;:&quot;I am a big gate. Greetings.&quot;,
&quot;options&quot;:[ { &quot;name&quot;:&quot;Okay...&quot; } ],
&quot;action&quot;: [ { &quot;setMapFlag&quot;: {&quot;key&quot;: &quot;gate&quot;, &quot;val&quot;: 1} } ]
}]</property>
<property name="enemy" value="White Wiz1"/>
</properties>
</object>
<object id="55" template="../obj/shop.tx" x="160" y="151">
<properties>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="58" template="../obj/quest.tx" x="328" y="130">
<properties>
<property name="questtype" value="plains_town_generic"/>
</properties>
</object>
<object id="59" template="../obj/shardtrader.tx" x="128" y="130"/>
</objectgroup>
</map>

View File

@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="30" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="61">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzr5GRg6Bxk+AUHBJOqz28QuH0UY8dN3NTHg9He5xy0tbcNDcPs1OCiv72tSOyRYi+t0xU2e5W5aG+vChcqHuh8NGovde19zoGoV7HVrbSyF1QuoadnUuwlx20wsymxl5L4HUn2YiuvKGkbEKuHWvYi0/SydxSP4sGKARuK+bI=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="30">
<data encoding="base64" compression="zlib">
eJztlUFOAkEQRb8xRGZwuAcHwKg7QjScg4UbQA6A8SDKkngdIBhlqURXcgi6Y3fSQHX3Z9I7+MlPZjpV81JVnRrguDWtArOEnlc57vkZ0EU6P5D11nLgMqGLnAQrvRTAq/K44HNS5F/XgRvl2/r/+yADHgkPMzmf1YeK/1Remjy297anu/laT6b2UaAH7p0+9H7Phbv8R9Y7cPqmnyfKF4TfnBy371ahWiVui+yzjvNxNfO5BFfrrgHcN7Zj3bMQ10qzfXX7uDEx3JAYru8s9XxTcCV1AtyvfP/utoWzFcFdK/8G6rV3VNoZfdODXibvDvtcZr5210nW+09zYzFluHbXSV4abiymDFeaaWy+3/n+rA9R7D9QmN3ExKUWu0tC6sRD0KwAVxU/94f4BhOzq4Vivge4J510zNoAyJKMbg==
</data>
</layer>
<layer id="3" name="Walls" width="30" height="30">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFo4D2YAsLA4M4FfE2FuLsDWTFLl6gicp/rYFdXl6LgUFBi7B5hOxdwk2cPhiwBtppQwV7YUBPG8H+pI1KE2NeFS9uNZW8xLuPWECpf0e6vV+BcfuNhPglV52xDgODiQ7pbqBFOOtxUs+8wR6/w8HeKqRy4xOW8gnGhpXFIBqfOmR7y/GUV8S6jxSAbF4FFrthYqTYK4gjX+GyFx/4wEp8nUpMXf2JiuEH8wO14wQGKrHER58mYXux6aMGQLY3RxO/WlrZOwpGATYAADv+Lzo=
</data>
</layer>
<layer id="5" name="Overlay" width="30" height="30">
<data encoding="base64" compression="zlib">
eJxjYBhYMIuXgWE2DfEcXuz2WvDR1l9WOMwftRc/OK9BX3tbeRgYdKHsU1A+PewFgWvaqDS97CUHDEV7NTUZGLQ0CYtRYq8OHjPMgWnZAogt8aRpXTQ+sfaiJxlxoEMkoI4JBtoXAsShUHtvAhXfQtNwikx7VXGUp6L4AgIJoOcvbPbu0h7c6Yoe9uKrF2F1GjFqSLUXuSzCxSZF3WAP51F7R+0dyvZeA4pfJxIjA2L13KCxv0bB4AIAgOhQFg==
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="219" y="383" width="28" height="16"/>
<object id="41" template="../obj/shop.tx" x="97" y="305">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="56" template="../obj/shop.tx" x="208" y="144">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="57" template="../obj/shop.tx" x="240" y="144">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="352" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="224" y="211"/>
<object id="48" template="../obj/shop.tx" x="290" y="225">
<properties>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signXOffset" type="float" value="-32"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="50" template="../obj/shop.tx" x="256" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="51" template="../obj/shop.tx" x="192" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="144" y="306">
<properties>
<property name="commonShopList" value="White,White,Enchantment4White,Creature2White,Instant4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="RWG,RWU,RWB,UWG,UWB,GWB,Land4White,Creature6White"/>
<property name="uncommonShopList" value="Azorius,Boros,Selesnya,Orzhov,Azorius,Boros,Selesnya,Orzhov,Land"/>
</properties>
</object>
<object id="53" template="../obj/spellsmith.tx" x="157" y="225"/>
<object id="54" template="../obj/enemy.tx" x="16" y="240">
<properties>
<property name="dialog">[{
&quot;text&quot;:&quot;I am a big gate. Greetings.&quot;,
&quot;options&quot;:[ { &quot;name&quot;:&quot;Okay...&quot; } ],
&quot;action&quot;: [ { &quot;setMapFlag&quot;: {&quot;key&quot;: &quot;gate&quot;, &quot;val&quot;: 1} } ]
}]</property>
<property name="enemy" value="White Wiz1"/>
</properties>
</object>
<object id="55" template="../obj/shop.tx" x="160" y="151">
<properties>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="58" template="../obj/quest.tx" x="328" y="130">
<properties>
<property name="questtype" value="plains_town_identity"/>
</properties>
</object>
<object id="59" template="../obj/shardtrader.tx" x="128" y="130"/>
<object id="60" template="../obj/RotatingShop.tx" x="304" y="306">
<properties>
<property name="rotation" value="White1,White2,White3,White4,White5,White6"/>
<property name="signYOffset" type="float" value="-16"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,131 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="30" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="60">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzr5GRg6Bxk+AUHBJOqz28QuH0UY8dN3NTHg9He5xy0tbcNDcPs1OCiv72tSOyRYi+t0xU2e5W5aG+vChcqHuh8NGovde19zoGoV7HVrbSyF1QuoadnUuwlx20wsymxl5L4HUn2YiuvKGkbEKuHWvYi0/SydxSP4sGKARuK+bI=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="30">
<data encoding="base64" compression="zlib">
eJztlUFOAkEQRb8xRGZwuAcHwKg7QjScg4UbQA6A8SDKkngdIBhlqURXcgi6Y3fSQHX3Z9I7+MlPZjpV81JVnRrguDWtArOEnlc57vkZ0EU6P5D11nLgMqGLnAQrvRTAq/K44HNS5F/XgRvl2/r/+yADHgkPMzmf1YeK/1Remjy297anu/laT6b2UaAH7p0+9H7Phbv8R9Y7cPqmnyfKF4TfnBy371ahWiVui+yzjvNxNfO5BFfrrgHcN7Zj3bMQ10qzfXX7uDEx3JAYru8s9XxTcCV1AtyvfP/utoWzFcFdK/8G6rV3VNoZfdODXibvDvtcZr5210nW+09zYzFluHbXSV4abiymDFeaaWy+3/n+rA9R7D9QmN3ExKUWu0tC6sRD0KwAVxU/94f4BhOzq4Vivge4J510zNoAyJKMbg==
</data>
</layer>
<layer id="3" name="Walls" width="30" height="30">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFo4D2YAsLA4M4FfE2FuLsDWTFLl6gSRqfkHmE1C3hJk4fDFhrMTDYaFFuLwzoaSPYn7RRaWLMq+LFraaSF6GOiZmwmcQASv1LKvjHNDD2kmoeseq+AuP2GwnxS646Yx0GBhMd0t1Aqr2MRKQrPU7ccv/JjF+YPkrBcElX1LS3Cqnc+ISlfIKxYWUxiManDtnecjzlFbHuIwUgm1eBxW6YGCn2CuLIV7jsxQc+sBJfpxJTV3+iYvjB/EDtOIGBSizx0adJ2F5s+qgBkO3NwdHOoLW9o2AUYAMAMPkxOA==
</data>
</layer>
<layer id="5" name="Overlay" width="30" height="30">
<data encoding="base64" compression="zlib">
eJxjYBhYMIuXgWE2DfEcXuz2WvDR1l9WOMwftXdw2dvKw8CgC2WfgvKRgbwWA4OCFvXtBYFr2qg0MWCohvNA2KupycCgpUlYjBJ7dfCYYa4BVA/Elhq41eii8Ym1Fz3JiAMdIgF1TDDQvhAgDoXaexOo+BaahlNk2quKozwVxRcQSAA9f2Gzd5f24E5X9LAXX70Iq9OIUUOqvchlES42KeoGeziP2jtq71C29xpQ/DqRGBkQq+cGjf01CgYXAACumU+y
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="219" y="383" width="28" height="16"/>
<object id="41" template="../obj/shop.tx" x="97" y="305">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="56" template="../obj/shop.tx" x="208" y="144">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="57" template="../obj/shop.tx" x="240" y="144">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="352" y="306">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="224" y="211"/>
<object id="48" template="../obj/shop.tx" x="290" y="225">
<properties>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signXOffset" type="float" value="-32"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="49" template="../obj/shop.tx" x="304" y="306">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="50" template="../obj/shop.tx" x="256" y="306">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="51" template="../obj/shop.tx" x="192" y="306">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="144" y="306">
<properties>
<property name="commonShopList" value="Knight4White,Bird4White,Soldier4White,Angel,Sliver2White,Spirit4White"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4White"/>
<property name="rareShopList" value="Azorius,Boros,Selesnya,Orzhov,Creature6White,Multicolor,Land4White"/>
<property name="uncommonShopList" value="Creature2White,Creature,White"/>
</properties>
</object>
<object id="53" template="../obj/spellsmith.tx" x="157" y="225"/>
<object id="54" template="../obj/enemy.tx" x="16" y="240">
<properties>
<property name="dialog">[{
&quot;text&quot;:&quot;I am a big gate. Greetings.&quot;,
&quot;options&quot;:[ { &quot;name&quot;:&quot;Okay...&quot; } ],
&quot;action&quot;: [ { &quot;setMapFlag&quot;: {&quot;key&quot;: &quot;gate&quot;, &quot;val&quot;: 1} } ]
}]</property>
<property name="enemy" value="White Wiz1"/>
</properties>
</object>
<object id="55" template="../obj/shop.tx" x="160" y="151">
<properties>
<property name="commonShopList" value="Plains"/>
<property name="noRestock" type="bool" value="true"/>
<property name="signYOffset" type="float" value="0"/>
</properties>
</object>
<object id="58" template="../obj/shardtrader.tx" x="128" y="130"/>
<object id="59" template="../obj/quest.tx" x="328" y="130">
<properties>
<property name="questtype" value="plains_town_trobal"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="54">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJyL4GZgiBjFo3gUj+JRPIpH8YjAAH23xTs=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJydVUtSg0AQ7QUkBCsnMH42uo0eQC8UPcKQFPfws9Rz6BY9gpp4D+0m82qaZkBwqrpggOnX7/VjppgRFT5+JkQ0DXMdxznRV0b1OOT776z9zZafHfG7D76e5vE8D5z/0WDc8fx+2swj+eW68zkxBHuhYmcwbV3IdcVxnTWfxWp3fL+eUWssE6LLpP1c6pF1pcGTHKXKjzpLo8fGY5UKV7AufOTck4NJmCNQC/SQ3KjFzYJ2de55s2dbpSnWLD3WW9IfUktMB8vBaoQa7aj+wOvDFl7gVms73/sAPo31UOs6FBfYWncZZynReRq4Sy8t/lBdY/HM627SfdymIecL37/6ufP/pnh/o7Qfo6uN947+CrdPz88pD68V7xXX9fRPvrq/0kvtH/Gu8HPmfx3r37GcoS9qsP6ufJ/GcEZfZY3FFR1P8rB/dnmr8jUP0Rt48FAV+Zec2ZeAC2+B90rl6cMWTO1ZfI864CV7Tuh+Fx37CTgMwYSeMd9aXJwhen+0AxzQvxgmOCw8D2gYO1/1t12YMe5dfo3h2/NV6vgFXcroBg==
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYKAcNPJSJk9tQG/7KAUNQPc6MDEwLGYkDzsxkW5nPTSM7kL1emqhYnxgETeqXmIBsh/rmBH2wgCI/VmdgeGLOm4zdLRJtxek3hpotg0ef+mzE2cOsQAUpzD1+Mw+iyRnrMPAYKKDySbHvzCzcZmJbK8+DjYl9uIyE9nec0D2ZDYIzuOg3N4coBm5QGzEjuDD2DB7dbVR3QACsHAh116YfpB9MP9cQLPXgB3hR1j+gYULufZiS1dn0eyFuckQS1hTEs4gc0BhC/IXiEa3F9k96GUbLO+Tai8MgOwH+QEW3yC/5SKFPcyPpPoPHdQw4y9zsfmNFP/VkVFP3YXaS6nfAKsYWFc=
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBg8oIZ3oF0wCmDgujoDww116psrr8XAoKAFYTcN0vgW12FgkNDBZNPKTD1Oys0fDoDSsKZWXCGDlkGSRgeLO4gB9VRwK8y/zUPI30MJAACVSQnZ
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="208" y="272"/>
<object id="41" template="../obj/shop.tx" x="129" y="146">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="177" y="145">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="321" y="129">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="114" y="194">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="273" y="130">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="337" y="177">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="230" y="98"/>
<object id="48" template="../obj/shop.tx" x="336" y="80">
<properties>
<property name="commonShopList" value="Swamp"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="304" y="194"/>
<object id="51" template="../obj/quest.tx" x="114" y="114">
<properties>
<property name="questtype" value="swamp_town_generic"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="201" y="88">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="signXOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="167" y="88">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,RWB,RUB,RGB,UWB,UGB,UWB "/>
<property name="rareShopList" value="Land4Black,Dimir,Rakdos,Orzhov,Golgari,Vehicle,Colorless"/>
<property name="signXOffset" type="float" value="4"/>
<property name="uncommonShopList" value="Artifact,Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black,Wand,Equip,Multicolor"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="54">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJyL4GZgiBjFo3gUj+JRPIpH8YjAAH23xTs=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJydVUtSg0AQ7QUkBCsnMH42uo0eQC8UPcKQFPfws9Rz6BY9gpp4D+0m82qaZkBwqrpggOnX7/VjppgRFT5+JkQ0DXMdxznRV0b1OOT776z9zZafHfG7D76e5vE8D5z/0WDc8fx+2swj+eW68zkxBHuhYmcwbV3IdcVxnTWfxWp3fL+eUWssE6LLpP1c6pF1pcGTHKXKjzpLo8fGY5UKV7AufOTck4NJmCNQC/SQ3KjFzYJ2de55s2dbpSnWLD3WW9IfUktMB8vBaoQa7aj+wOvDFl7gVms73/sAPo31UOs6FBfYWncZZynReRq4Sy8t/lBdY/HM627SfdymIecL37/6ufP/pnh/o7Qfo6uN947+CrdPz88pD68V7xXX9fRPvrq/0kvtH/Gu8HPmfx3r37GcoS9qsP6ufJ/GcEZfZY3FFR1P8rB/dnmr8jUP0Rt48FAV+Zec2ZeAC2+B90rl6cMWTO1ZfI864CV7Tuh+Fx37CTgMwYSeMd9aXJwhen+0AxzQvxgmOCw8D2gYO1/1t12YMe5dfo3h2/NV6vgFXcroBg==
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYKAcNPJSJk9tQG/7KAUNQPc6MDEwLGYkDzsxkW5nPTSM7pKhdxE3eXqR/VjHjF3NZ3UGhi/q+M0h1V6QemstBgYbLdxq9NmJM4dYAIpTmHp8Zp9FkjPWYWAw0cFkk+NfmNm4zES2Vx8HmxJ7cZmJbO85IHsyGwTncVBubw7QjFwgNmJH8GHsszjcAAKwcCHXXph+kH0w/1xAs9eAHeFHWP6BhQu59mJLV2fR7IW5yRBLWFMSziBzQGEL8heIRrcX2T3oZRuuvE/IXhgA2Q/yAyy+QX7LRQp7mB/JKduQQQ0z/jIXm99I8V8dGfXUXai9lPoNAFBAVPY=
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBg8oIZ3oF0w8GAxIyqmF/DUQsXX1RkYbqhT3x55oNkKWhB2Ey/ELmQ3DAYgrsPAIKGDyaaVmXqclJs/HAClYY1L/wUN8s1soaBMekOBvdR0B71BPRXcCvNv8xDy91ACAEHHESc=
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="208" y="272"/>
<object id="41" template="../obj/shop.tx" x="129" y="146">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="177" y="145">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="321" y="129">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="114" y="194">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="273" y="130">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="337" y="177">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="230" y="98"/>
<object id="48" template="../obj/shop.tx" x="336" y="80">
<properties>
<property name="commonShopList" value="Swamp"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="49" template="../obj/quest.tx" x="114" y="114">
<properties>
<property name="questtype" value="swamp_town_identity"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="304" y="194"/>
<object id="51" template="../obj/shop.tx" x="201" y="88">
<properties>
<property name="commonShopList" value="Black,Black,Enchantment4Black,Creature2Black,Instant4Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand,Legend4Black"/>
<property name="rareShopList" value="RWB,RUB,RGB,UWB,UGB,UWB,Land4Black,Creature6Black"/>
<property name="signXOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Dimir,Rakdos,Orzhov,Golgari,Dimir,Rakdos,Orzhov,Golgari,Land"/>
</properties>
</object>
<object id="53" template="../obj/RotatingShop.tx" class="RotatingShop" x="167" y="88">
<properties>
<property name="rotation" value="Black1,Black2,Black3,Black4,Black5,Black6"/>
<property name="signXOffset" type="float" value="4"/>
<property name="signYOffset" type="float" value="-16"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="17" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="53">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="17">
<data encoding="base64" compression="zlib">
eJyL4GZgiBjFo3gUj+JRPIpH8YjAAH23xTs=
</data>
</layer>
<layer id="2" name="Ground" width="30" height="17">
<data encoding="base64" compression="zlib">
eJydVUtSg0AQ7QUkBCsnMH42uo0eQC8UPcKQFPfws9Rz6BY9gpp4D+0m82qaZkBwqrpggOnX7/VjppgRFT5+JkQ0DXMdxznRV0b1OOT776z9zZafHfG7D76e5vE8D5z/0WDc8fx+2swj+eW68zkxBHuhYmcwbV3IdcVxnTWfxWp3fL+eUWssE6LLpP1c6pF1pcGTHKXKjzpLo8fGY5UKV7AufOTck4NJmCNQC/SQ3KjFzYJ2de55s2dbpSnWLD3WW9IfUktMB8vBaoQa7aj+wOvDFl7gVms73/sAPo31UOs6FBfYWncZZynReRq4Sy8t/lBdY/HM627SfdymIecL37/6ufP/pnh/o7Qfo6uN947+CrdPz88pD68V7xXX9fRPvrq/0kvtH/Gu8HPmfx3r37GcoS9qsP6ufJ/GcEZfZY3FFR1P8rB/dnmr8jUP0Rt48FAV+Zec2ZeAC2+B90rl6cMWTO1ZfI864CV7Tuh+Fx37CTgMwYSeMd9aXJwhen+0AxzQvxgmOCw8D2gYO1/1t12YMe5dfo3h2/NV6vgFXcroBg==
</data>
</layer>
<layer id="3" name="Foreground" width="30" height="17">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJy1lU0KwjAQhacNWEE8R0EK9W+nC3HnXawnkKpn8AZ6nooX6Cl0rWYwQ9K0KU2iD4JTat43b1ojgL9OQ7/7v9Y/eCH7vSfpyPtdhQDXwG2tQ3vmQcyoFHs3o+qqScl/GVT3dpWaMWeSS8L6EQM843YfWy5+f8G9l025hNKom8+7IxufKfXZ5l0o92YJwDyp1y55ydvkqXJTQ+3DNXmq3Buvz73v2vX9uVvukfE1jeQ11YWhBxTNxZVL+5FHee4adxzJjPT7obm4cpveq0LjUk8Tbdb4HrtwX6H0xNliLvzUuQGT1/rZlluepXqfyMcM9LwxW6bMnjLa5tO1Z+1nblM2m3y5w/9UKbi+2T6mSVq2
</data>
</layer>
<layer id="5" name="AboveSprites" width="30" height="17">
<data encoding="base64" compression="zlib">
eJxjYBg8oIZ3oF0wCmDgujoDww116psrr8XAoKAFYTcN0vgW12FgkNDBZNPKTD1Oys0fDoDSsKZWXCGDlkGSRgeLO4gB9VRwK8y/zUPI30MJAACVSQnZ
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="208" y="272"/>
<object id="41" template="../obj/shop.tx" x="129" y="146">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="42" template="../obj/shop.tx" x="177" y="145">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="43" template="../obj/shop.tx" x="321" y="129">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="44" template="../obj/shop.tx" x="114" y="194">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="45" template="../obj/shop.tx" x="273" y="130">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="46" template="../obj/shop.tx" x="337" y="177">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="230" y="98"/>
<object id="48" template="../obj/shop.tx" x="336" y="80">
<properties>
<property name="commonShopList" value="Swamp"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="49" template="../obj/quest.tx" x="114" y="114">
<properties>
<property name="questtype" value="swamp_town_tribal"/>
</properties>
</object>
<object id="50" template="../obj/shardtrader.tx" x="304" y="194"/>
<object id="51" template="../obj/shop.tx" x="167" y="88">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="signXOffset" type="float" value="4"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="201" y="88">
<properties>
<property name="commonShopList" value="Vampire,Zombie,Skeleton,Demon,Knight4Black,Rogue4Black,Sliver2Black"/>
<property name="mythicShopList" value="Planeswalker,WUBRG,Vehicle,Artifact,Equip,Wand"/>
<property name="rareShopList" value="Dimir,Rakdos,Orzhov,Golgari,Multicolor,Land4Black,Creature6Black"/>
<property name="signXOffset" type="float" value="-4"/>
<property name="uncommonShopList" value="Creature2Black,Creature,Black"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="30" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="64">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzt1LEKACAIBND2fti5L291iLxAU+qG29SnBElvTRiGCc1QQWp0rdXnsdMulV10FmJluFn3VnAR+zXXsrPeN8KP/h883VWfNdPj1pN9boQuXbr/uhNtp9Ws
</data>
</layer>
<layer id="2" name="Ground" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzVl0tOwzAQhg0skB33DIZ1OUNRBIEjcIDCQQpH4AAFCYFyJ5AQIWtWYY1HttWJm9jTxI3ESKO4TuLvn44fk4Vk7DBj7Ej7FLYUjN0Kw5ySe5BtmODn0ui4E/tjQqwL2eZOEbcfq/MPreV5Ym5q3s1su2+tGe+yHSe2x7QStthP1sfE+t0zD3F/jdopYsq48ZjdB+KqhNF41XP12y+ad0zwV+2nsp9bcqOL6+uJ3Ljgxl0brhBjjjRcC/MueIF+QzuP7AeO+0DItZJmPBHQiPXVAfYqa3N/zsLsWBxYXxFgK6sPuJTcXQhafi+FGfctMP9Ky6XEQnnGPVdG5vy+uDFboTnYzBn7nafhhtYvmMvxJyF31Px+WS7O77JDs/LWBOgovL2jtv9Jhfqxu7lb2bXMvb0DzqXYOa9ke406HTkaE69frLOL6c7+XesMhfYDf0x3H+9v/n3/LAQ+lV1aLmVv6zL//KfWOGO564E1x1gu2JA6JxU3xvRrpbHcZjasxkkR7xD7z1z3nbTL9wmVC/Oi6aijwf4AV6hrzg==
</data>
</layer>
<layer id="3" name="Walls" width="30" height="30">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFo4B2YAcLA4M0jfEuFkx7Q1lJd+sUDtLUY7ODHHtJBdS211iHgcFEB5NtpA2hYeFCjr2khik2QK9wNoT610SbcnsnU+BvYuxFjicQsNZiYLDRwtSHK25R2FTwLyWAUnvfs6PShIAGI3Y7vpJgLyXpmhT/Hga61V2TgcEDiPU4MeWJiV9y7KUG2ME2MPYi24GeD2H2EhN/hPKwjjZue4kRI6aMgKVVYgA2O76wkleHklJvf0OyF91PhMIZ3c3kpAtyylpq2EsOIMVeatSd5NhLTUCuvZT6faj5d7DYCwAfmzHo
</data>
</layer>
<layer id="5" name="Overlay" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzt0bERgCAUBNHtQjNI4f/+e4FqDMzUMYaZfdEFly1IWsGRcOZ7a13PTqVD7f8/O+9jBMy4dzTI9v2zryRpZxerjQgF
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="204" y="368" width="56" height="16"/>
<object id="41" template="../obj/shop.tx" x="256" y="208">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="55" template="../obj/shop.tx" x="272" y="144">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="57" template="../obj/shop.tx" x="320" y="144">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="50" template="../obj/shop.tx" x="304" y="208">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="51" template="../obj/shop.tx" x="352" y="208">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="352" y="272">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="304" y="272">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="54" template="../obj/shop.tx" x="256" y="272">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="150" y="273"/>
<object id="48" template="../obj/shop.tx" x="104" y="272">
<properties>
<property name="commonShopList" value="Equipment"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="58" template="../obj/shop.tx" x="97" y="209">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Wand,Enchantment,Instant,Creature"/>
<property name="mythicShopList" value="Planeswalker,WUBRG"/>
<property name="rareShopList" value="Land4Colorless,Vehicle,White,Blue,Red,Green,Black"/>
<property name="uncommonShopList" value="Artifact,Land,Assembly,Golem,Sliver,Wall,Equip,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="62" template="../obj/shardtrader.tx" x="400" y="288"/>
<object id="63" template="../obj/quest.tx" x="168" y="209">
<properties>
<property name="questtype" value="waste_town_generic"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="30" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="63">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzt1LEKACAIBND2fti5L291iLxAU+qG29SnBElvTRiGCc1QQWp0rdXnsdMulV10FmJluFn3VnAR+zXXsrPeN8KP/h883VWfNdPj1pN9boQuXbr/uhNtp9Ws
</data>
</layer>
<layer id="2" name="Ground" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzVl0tOwzAQhg0skB33DIZ1OUNRBIEjcIDCQQpH4AAFCYFyJ5AQIWtWYY1HttWJm9jTxI3ESKO4TuLvn44fk4Vk7DBj7Ej7FLYUjN0Kw5ySe5BtmODn0ui4E/tjQqwL2eZOEbcfq/MPreV5Ym5q3s1su2+tGe+yHSe2x7QStthP1sfE+t0zD3F/jdopYsq48ZjdB+KqhNF41XP12y+ad0zwV+2nsp9bcqOL6+uJ3Ljgxl0brhBjjjRcC/MueIF+QzuP7AeO+0DItZJmPBHQiPXVAfYqa3N/zsLsWBxYXxFgK6sPuJTcXQhafi+FGfctMP9Ky6XEQnnGPVdG5vy+uDFboTnYzBn7nafhhtYvmMvxJyF31Px+WS7O77JDs/LWBOgovL2jtv9Jhfqxu7lb2bXMvb0DzqXYOa9ke406HTkaE69frLOL6c7+XesMhfYDf0x3H+9v/n3/LAQ+lV1aLmVv6zL//KfWOGO564E1x1gu2JA6JxU3xvRrpbHcZjasxkkR7xD7z1z3nbTL9wmVC/Oi6aijwf4AV6hrzg==
</data>
</layer>
<layer id="3" name="Walls" width="30" height="30">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFo4B2YAcLA4M0jfEuFkx7Q1lJd+sUDtLUY7ODHHtJBdS211iHgcFEB5MNA7BwIcdeUsMUGxiK4TyZAn8TYy96PFlrMTDYaGHqwxW32OJ5KIYzCLxnR6UJAQ1G7HZ8JcFeStI1Kf49DHSruyYDgwcQ63Fiyg/m+N3BRpm9pzUosx9kB3o+hNmLL/6eQ+0lNw8T619izIelVXLt/cJKXh1KSr39DcledD8RyifobiYnPZITT9SwlxxAir3UqDvJsZeagFx7KfX7UPPvYLEXAMqrMh0=
</data>
</layer>
<layer id="5" name="Overlay" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzt0bERgCAUBNHtQjNI4f/+e4FqDMzUMYaZfdEFly1IWsGRcOZ7a13PTqVD7f8/O+9jBMy4dzTI9v2zryRpZxerjQgF
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="204" y="368" width="56" height="16"/>
<object id="41" template="../obj/shop.tx" x="256" y="208">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="55" template="../obj/shop.tx" x="272" y="144">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="57" template="../obj/shop.tx" x="320" y="144">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="50" template="../obj/shop.tx" x="304" y="208">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="51" template="../obj/shop.tx" x="352" y="208">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="352" y="272">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="304" y="272">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="54" template="../obj/shop.tx" x="256" y="272">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="150" y="273"/>
<object id="48" template="../obj/shop.tx" x="104" y="272">
<properties>
<property name="commonShopList" value="Equipment"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="58" template="../obj/shop.tx" x="97" y="209">
<properties>
<property name="commonShopList" value="Colorless,Colorless,Artifact,Creature2Colorless,Vehicle,Equip,Wand"/>
<property name="mythicShopList" value="White,Blue,Red,Green,Black,Legend"/>
<property name="rareShopList" value="Land4Colorless,Land4Colorless,Creature2Eldrazi"/>
<property name="uncommonShopList" value="Land,Enchantment,Instant,Creature"/>
</properties>
</object>
<object id="61" template="../obj/shardtrader.tx" x="400" y="288"/>
<object id="62" template="../obj/quest.tx" x="168" y="209">
<properties>
<property name="questtype" value="waste_town_identity"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.9" tiledversion="1.9.2" orientation="orthogonal" renderorder="right-down" width="30" height="30" tilewidth="16" tileheight="16" infinite="0" nextlayerid="6" nextobjectid="65">
<editorsettings>
<export target="wastetown..tmx" format="tmx"/>
</editorsettings>
<tileset firstgid="1" source="../tileset/main.tsx"/>
<tileset firstgid="10113" source="../tileset/buildings.tsx"/>
<layer id="1" name="Background" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzt1LEKACAIBND2fti5L291iLxAU+qG29SnBElvTRiGCc1QQWp0rdXnsdMulV10FmJluFn3VnAR+zXXsrPeN8KP/h883VWfNdPj1pN9boQuXbr/uhNtp9Ws
</data>
</layer>
<layer id="2" name="Ground" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzVl0tOwzAQhg0skB33DIZ1OUNRBIEjcIDCQQpH4AAFCYFyJ5AQIWtWYY1HttWJm9jTxI3ESKO4TuLvn44fk4Vk7DBj7Ej7FLYUjN0Kw5ySe5BtmODn0ui4E/tjQqwL2eZOEbcfq/MPreV5Ym5q3s1su2+tGe+yHSe2x7QStthP1sfE+t0zD3F/jdopYsq48ZjdB+KqhNF41XP12y+ad0zwV+2nsp9bcqOL6+uJ3Ljgxl0brhBjjjRcC/MueIF+QzuP7AeO+0DItZJmPBHQiPXVAfYqa3N/zsLsWBxYXxFgK6sPuJTcXQhafi+FGfctMP9Ky6XEQnnGPVdG5vy+uDFboTnYzBn7nafhhtYvmMvxJyF31Px+WS7O77JDs/LWBOgovL2jtv9Jhfqxu7lb2bXMvb0DzqXYOa9ke406HTkaE69frLOL6c7+XesMhfYDf0x3H+9v/n3/LAQ+lV1aLmVv6zL//KfWOGO564E1x1gu2JA6JxU3xvRrpbHcZjasxkkR7xD7z1z3nbTL9wmVC/Oi6aijwf4AV6hrzg==
</data>
</layer>
<layer id="3" name="Walls" width="30" height="30">
<properties>
<property name="spriteLayer" type="bool" value="true"/>
</properties>
<data encoding="base64" compression="zlib">
eJxjYBgFo4B2YAcLA4M0jfEuFkx7Q1lJd+sUDtLUY7ODHHtJBdS211iHgcFEB5MNA7BwIcdeUsMUGxiK4TyZAn8TYy96PFlrMTDYaGHqwxW32OJ5KIYzCLxnR6UJAQ1G7HZ8JcFeStI1Kf49DHSruyYDgwcQ63Fiyg/r+GXGL/2fCcFmxKIWZAd6PoTZiy3+kM0DAXS9TEh2/ENTi80OQmL4zIcBWFrFBtDdi82OL6zk1aGk1NvfkOxF9xOhfILuZnLSIzllLTXsJQeQYi816k5y7KUmINdeSv0+1Pw7WOwFAAL/M3E=
</data>
</layer>
<layer id="5" name="Overlay" width="30" height="30">
<data encoding="base64" compression="zlib">
eJzt0SEOgEAQQ9GvuAI4sLsz9w9XgdMgcCwhOJbkP1VR0aQgqQdjwpRtVr+uP80Vlvrc8+f/2AL2OHMUyHLf89/WOny9QJL01gHnWwjD
</data>
</layer>
<objectgroup id="4" name="Objects">
<object id="38" template="../obj/entry_up.tx" x="204" y="368" width="56" height="16"/>
<object id="41" template="../obj/shop.tx" x="256" y="208">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="55" template="../obj/shop.tx" x="272" y="144">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="57" template="../obj/shop.tx" x="320" y="144">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="50" template="../obj/shop.tx" x="304" y="208">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="51" template="../obj/shop.tx" x="352" y="208">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="52" template="../obj/shop.tx" x="352" y="272">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="53" template="../obj/shop.tx" x="304" y="272">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="54" template="../obj/shop.tx" x="256" y="272">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="47" template="../obj/inn.tx" x="150" y="273"/>
<object id="48" template="../obj/shop.tx" x="104" y="272">
<properties>
<property name="commonShopList" value="Equipment"/>
<property name="noRestock" type="bool" value="true"/>
</properties>
</object>
<object id="58" template="../obj/shop.tx" x="97" y="209">
<properties>
<property name="commonShopList" value="Creature,Creature2Blue,Creature2Red,Creature2Black,Creature2White,Creature2Green,Creature2Colorless,Sliver,Wall,Assembly,Human"/>
<property name="mythicShopList" value="Assassin,Squirrel,Dragon,Vampire,Minotaur,Dwarf,Devil,Soldier,Demon,Druid,Bird,Wolf,Knight,Skeleton,Shaman,Wizard,Pirate,Rogue,Dinosaur,Ogre,Planeswalker,Legend,WUBRG"/>
<property name="rareShopList" value="Human,Zombie,Goblin,Elf,Merfolk,Azorius,Dimir,Rakdos,Gruul,Selesnya,Orzhov,Izzet,Golgari,Boros,Simic"/>
<property name="uncommonShopList" value="Land,Vehicle,Equip,Wand,Artifact,Multicolor,Golem,Colorless,Enchantment,Instant"/>
</properties>
</object>
<object id="63" template="../obj/shardtrader.tx" x="400" y="288"/>
<object id="64" template="../obj/quest.tx" x="168" y="209">
<properties>
<property name="questtype" value="waste_town_tribal"/>
</properties>
</object>
</objectgroup>
</map>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<tileset firstgid="1" source="../tileset/buildings.tsx"/>
<object name="RotatingShop" class="RotatingShop" gid="1251" width="16" height="16">
<properties>
<property name="hasSign" type="bool" value="true"/>
<property name="rotation" value=""/>
<property name="signXOffset" type="float" value="16"/>
<property name="signYOffset" type="float" value="-16"/>
<property name="type" value="Rotating"/>
</properties>
</object>
</template>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<tileset firstgid="1" source="../tileset/buildings.tsx"/>
<object name="Quest" class="quest" gid="1418" width="16" height="16">
<properties>
<property name="questtype" value=""/>
<property name="type" value="quest"/>
</properties>
</object>
</template>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<tileset firstgid="1" source="../tileset/buildings.tsx"/>
<object name="Shardtrader" class="shardtrader" gid="1446" width="16" height="16">
<properties>
<property name="hasSign" type="bool" value="true"/>
<property name="signXOffset" type="float" value="16"/>
<property name="signYOffset" type="float" value="-16"/>
<property name="type" value="shardtrader"/>
</properties>
</object>
</template>

View File

@@ -1,11 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<tileset firstgid="1" source="../tileset/buildings.tsx"/>
<object name="Shop" type="shop" gid="1251" width="16" height="16">
<object name="Shop" class="shop" gid="1251" width="16" height="16">
<properties>
<property name="shopList" value=""/>
<property name="commonShopList" value=""/>
<property name="hasSign" type="bool" value="true"/>
<property name="mythicShopList" value=""/>
<property name="noRestock" type="bool" value="false"/>
<property name="rareShopList" value=""/>
<property name="signXOffset" type="float" value="16"/>
<property name="signYOffset" type="float" value="-16"/>
<property name="type" value="shop"/>
<property name="uncommonShopList" value=""/>
</properties>
</object>
</template>

View File

@@ -1,5 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<tileset firstgid="1" source="../tileset/buildings.tsx"/>
<object name="Spellsmith" type="spellsmith" gid="1391" width="16" height="16"/>
<object name="Spellsmith" class="spellsmith" gid="1391" width="16" height="16">
<properties>
<property name="hasSign" type="bool" value="true"/>
<property name="signXOffset" type="float" value="16"/>
<property name="signYOffset" type="float" value="-16"/>
<property name="type" value="spellsmith"/>
</properties>
</object>
</template>

View File

@@ -18,7 +18,10 @@ ForestTown
size: 32, 32
PlainsTown
xy: 96, 0
size: 48, 48
size: 48, 48
PirateShop
xy: 384, 704
size: 16, 16
WasteTown
xy: 272, 128
size: 48, 48
@@ -122,8 +125,8 @@ EquipmentShop
xy: 304, 784
size: 16, 16
ItemShop
xy: 304, 800
size: 16, 16
xy: 288, 912
size: 16, 16
CapitalShop
xy: 304, 816
size: 16, 16
@@ -139,6 +142,231 @@ GolemShop
SliverShop
xy: 368, 784
size: 16, 16
RWBShop
xy: 304, 800
size: 16, 16
RWUShop
xy: 320, 800
size: 16, 16
RWGShop
xy: 336, 800
size: 16, 16
EnchantmentShop
xy: 352, 800
size: 16, 16
WUBRGShop
xy: 368, 800
size: 16, 16
RogueShop
xy: 288, 816
size: 16, 16
NonbasicLandShop
xy: 304, 816
size: 16, 16
SpaceMarineShop
xy: 320, 816
size: 16, 16
NecronShop
xy: 336, 816
size: 16, 16
ChaosShop
xy: 352, 816
size: 16, 16
TyranidShop
xy: 368, 816
size: 16, 16
M22Shop
xy: 384, 720
size: 16, 16
M21Shop
xy: 384, 750
size: 16, 16
M20Shop
xy: 384, 766
size: 16, 16
AssassinShop
xy: 384, 784
size: 16, 16
SquirrelShop
xy: 384, 800
size: 16, 16
DragonShop
xy: 384, 816
size: 16, 16
AssemblyShop
xy: 288, 832
size: 16, 16
VampireShop
xy: 304, 832
size: 16, 16
VehicleShop
xy: 320, 832
size: 16, 16
RUBShop
xy: 336, 832
size: 16, 16
RGBShop
xy: 352, 832
size: 16, 16
RGUShop
xy: 368, 832
size: 16, 16
MinotaurShop
xy: 384, 832
size: 16, 16
DinosaurShop
xy: 288, 848
size: 16, 16
UWBShop
xy: 304, 848
size: 16, 16
UGBShop
xy: 320, 848
size: 16, 16
UWGShop
xy: 336, 848
size: 16, 16
GWBShop
xy: 352, 848
size: 16, 16
DwarfShop
xy: 368, 848
size: 16, 16
DevilShop
xy: 384, 848
size: 16, 16
OgreShop
xy: 288, 864
size: 16, 16
EquipShop
xy: 320, 864
size: 16, 16
SoldierShop
xy: 336, 864
size: 16, 16
CardShop
xy: 352, 864
size: 16, 16
DnDShop
xy: 368, 864
size: 16, 16
DemonShop
xy: 384, 864
size: 16, 16
RotatingShop
xy: 288, 880
size: 16, 16
DruidShop
xy: 304, 880
size: 16, 16
WandShop
xy: 320, 880
size: 16, 16
BirdShop
xy: 336, 880
size: 16, 16
WolfShop
xy: 352, 880
size: 16, 16
KnightShop
xy: 368, 880
size: 16, 16
WallShop
xy: 384, 880
size: 16, 16
PlaneswalkerShop
xy: 304, 896
size: 16, 16
SkeletonShop
xy: 320, 896
size: 16, 16
SpiritShop
xy: 336, 896
size: 16, 16
ShamanShop
xy: 352, 896
size: 16, 16
WizardShop
xy: 368, 896
size: 16, 16
LegendShop
xy: 384, 896
size: 16, 16
ShardTrader
xy: 288, 896
size: 16, 16
Overlay8Black
xy: 400, 704
size: 5, 16
Overlay6Black
xy: 405, 704
size: 5, 16
Overlay4Black
xy: 400, 800
size: 5,16
Overlay2Black
xy: 405, 800
size: 5, 16
Overlay8Green
xy: 400, 768
size: 5, 16
Overlay6Green
xy: 405, 768
size: 5, 16
Overlay4Green
xy: 405, 864
size: 5, 16
Overlay2Green
xy: 405, 864
size: 5, 16
Overlay8Colorless
xy: 400, 784
size: 5, 16
Overlay6Colorless
xy: 405, 784
size: 5, 16
Overlay4Colorless
xy: 400, 880
size: 5, 16
Overlay2Colorless
xy: 405, 880
size: 5, 16
Overlay8Blue
xy: 400, 720
size: 5, 16
Overlay6Blue
xy: 405, 720
size: 5, 16
Overlay4Blue
xy: 400, 816
size: 5, 16
Overlay2Blue
xy: 405, 816
size: 5, 16
Overlay8Red
xy: 400, 736
size: 5, 16
Overlay6Red
xy: 405, 736
size: 5, 16
Overlay4Red
xy: 400, 832
size: 5, 16
Overlay2Red
xy: 405, 832
size: 5, 16
Overlay8White
xy: 400, 752
size: 5, 16
Overlay6White
xy: 405, 752
size: 5, 16
Overlay4White
xy: 400, 848
size: 5, 16
Overlay2White
xy: 405, 848
size: 5, 16
Test
xy: 128, 48
size: 32, 32

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 KiB

After

Width:  |  Height:  |  Size: 238 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 506 KiB

After

Width:  |  Height:  |  Size: 512 KiB

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<tileset version="1.9" tiledversion="1.9.1" name="main" tilewidth="16" tileheight="16" tilecount="6320" columns="158">
<image source="main.png" width="2528" height="640"/>
<tileset version="1.9" tiledversion="1.9.2" name="main" tilewidth="16" tileheight="16" tilecount="10112" columns="158">
<image source="main.png" width="2528" height="1024"/>
<tile id="105">
<objectgroup draworder="index" id="2">
<object id="1" x="1" y="0" width="14" height="14"/>
@@ -7061,6 +7061,12 @@
<object id="2" x="0" y="0" width="7" height="16"/>
</objectgroup>
</tile>
<tile id="5976">
<objectgroup draworder="index" id="2">
<object id="1" x="13" y="0" width="3" height="16"/>
<object id="2" x="0" y="0" width="16" height="3.86957"/>
</objectgroup>
</tile>
<tile id="6108">
<objectgroup draworder="index" id="2">
<object id="1" x="0" y="0" width="16" height="16"/>
@@ -7107,6 +7113,11 @@
<object id="1" x="0" y="0" width="15" height="15"/>
</objectgroup>
</tile>
<tile id="6134">
<objectgroup draworder="index" id="2">
<object id="1" x="13" y="0" width="3" height="16"/>
</objectgroup>
</tile>
<tile id="6276">
<objectgroup draworder="index" id="2">
<object id="1" x="0" y="0"/>
@@ -7123,6 +7134,23 @@
<object id="1" x="0" y="0"/>
</objectgroup>
</tile>
<tile id="6290">
<objectgroup draworder="index" id="2">
<object id="1" x="0" y="0" width="3" height="16"/>
<object id="2" x="0" y="13" width="16" height="3"/>
</objectgroup>
</tile>
<tile id="6291">
<objectgroup draworder="index" id="2">
<object id="1" x="0" y="13" width="16" height="3"/>
</objectgroup>
</tile>
<tile id="6292">
<objectgroup draworder="index" id="4">
<object id="3" x="13" y="0" width="3" height="16"/>
<object id="4" x="0" y="13" width="16" height="3"/>
</objectgroup>
</tile>
<wangsets>
<wangset name="Walls" type="corner" tile="2531">
<wangcolor name="" color="#ff0000" tile="-1" probability="1"/>

View File

@@ -26,7 +26,10 @@ CardBack
size: 48, 64
Gold
xy: 48, 0
size: 16, 16
size: 16, 16
Shards
xy: 32, 768
size: 16, 16
Life
xy: 48, 16
size: 16, 16
@@ -48,6 +51,21 @@ Status
Menu
xy: 32, 64
size: 16, 16
CursedTreasure
xy: 336, 64
size: 16, 16
PipersCharm
xy: 240, 976
size: 16, 16
HillGiantClub
xy: 192, 576
size: 16, 16
SleepWand
xy: 304, 544
size: 16, 16
FarmersTools
xy: 288, 976
size: 16, 16
SolRing
xy: 320, 144
size: 16, 16

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -66,7 +66,7 @@
},
{
"type": "Label",
"name": "mana",
"name": "shards",
"font": "default",
"width": 64,
"height": 16,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@@ -66,7 +66,7 @@
},
{
"type": "Label",
"name": "mana",
"name": "shards",
"font": "default",
"width": 64,
"height": 16,

View File

@@ -65,7 +65,7 @@
},
{
"type": "Label",
"name": "mana",
"name": "shards",
"font": "default",
"width": 48,
"height": 3,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -75,6 +75,26 @@
"height": 30,
"x": 320,
"y": 200
},
{
"type": "Label",
"name": "playerGold",
"style":"background",
"text": "[+Gold]",
"width": 48,
"height": 30,
"x": 420,
"y": 200
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"text": "[+Shards]",
"width": 48,
"height": 30,
"x": 420,
"y": 240
}
]
}

View File

@@ -75,6 +75,26 @@
"height": 30,
"x": 165,
"y": 335
},
{
"type": "Label",
"name": "playerGold",
"style":"background",
"text": "[+Gold]",
"width": 128,
"height": 32,
"x": 16,
"y": 405
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"text": "[+Shards]",
"width": 128,
"height": 32,
"x": 16,
"y": 435
}
]
}

View File

@@ -46,13 +46,42 @@
} ,
{
"type": "Label",
"name": "gold",
"name": "playerGold",
"style":"background",
"text": "[+Gold]",
"width": 48,
"height": 30,
"x": 420,
"y": 200
},
{
"type": "TextButton",
"name": "restock",
"text": "Restock",
"width": 48,
"height": 30,
"x": 420,
"y": 160
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"text": "[+Shards]",
"width": 48,
"height": 30,
"x": 420,
"y": 240
},
{
"type": "Label",
"name": "shopName",
"style":"background",
"text": "A Street Market",
"width": 48,
"height": 20,
"x": 200,
"y": 0
}
]
}

View File

@@ -42,17 +42,46 @@
"width": 128,
"height": 32,
"x": 140,
"y": 405
"y": 435
} ,
{
"type": "Label",
"name": "gold",
"style":"background",
"name": "playerGold",
"text": "[+Gold]",
"width": 128,
"height": 32,
"x": 16,
"y": 405
},
{
"type": "TextButton",
"name": "restock",
"text": "Restock",
"style":"background",
"width": 128,
"height": 30,
"x": 140,
"y": 405
},
{
"type": "Label",
"name": "playerShards",
"text": "[+Shards]",
"style":"background",
"width": 128,
"height": 32,
"x": 16,
"y": 435
},
{
"type": "Label",
"name": "shopName",
"style":"background",
"text": "A Street Market",
"width": 48,
"height": 20,
"x": 200,
"y": 0
}
]
}

View File

@@ -0,0 +1,100 @@
{
"width": 480,
"height": 270,
"yDown": true,
"elements": [
{
"type": "Image",
"image": "ui/market.png",
"width": 480,
"height": 270
},
{
"type": "Image",
"name": "shardIcon",
"image": "ui/buyshards.png",
"x": 60,
"y": 85,
"width": 100,
"height": 100
},
{
"type": "TextButton",
"name": "btnBuyShardsCost",
"text": "btnBuyShardsCost",
"binding": "Status",
"width": 100,
"height": 30,
"x": 60,
"y": 200
},
{
"type": "Image",
"name": "sellIcon",
"image": "ui/sell.png",
"x": 190,
"y": 85,
"width": 100,
"height": 100
},
{
"type": "TextButton",
"name": "btnSellShardsQuantity",
"text": "btnSellShardsQuantity",
"binding": "Equip",
"width": 100,
"height": 30,
"x": 190,
"y": 200
},
{
"type": "Image",
"name": "leaveIcon",
"image": "ui/leave.png",
"x": 320,
"y": 85,
"width": 100,
"height": 100
},
{
"type": "TextButton",
"name": "done",
"text": "tr(lblBack)",
"binding": "Back",
"width": 100,
"height": 30,
"x": 320,
"y": 200
},
{
"type": "Label",
"name": "shopName",
"style":"background",
"text": "Shard Trader",
"width": 48,
"height": 20,
"x": 200,
"y": 0
},
{
"type": "Label",
"name": "playerGold",
"style":"background",
"text": "[+Gold]",
"width": 48,
"height": 30,
"x": 420,
"y": 200
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"text": "[+Shards]",
"width": 48,
"height": 30,
"x": 420,
"y": 240
}
]
}

View File

@@ -0,0 +1,90 @@
{
"width": 270,
"height": 480,
"yDown": true,
"elements": [
{
"type": "Image",
"image": "ui/market_portrait.png",
"width": 270,
"height": 480
},
{
"type": "Image",
"name": "shardIcon",
"image": "ui/buyshards.png",
"x": 60,
"y": 85,
"width": 100,
"height": 100
},
{
"type": "TextButton",
"name": "btnBuyShardsCost",
"text": "btnBuyShardsCost",
"binding": "Status",
"width": 100,
"height": 30,
"x": 165,
"y": 105
},
{
"type": "Image",
"name": "sellIcon",
"image": "ui/sell.png",
"x": 60,
"y": 200,
"width": 100,
"height": 100
},
{
"type": "TextButton",
"name": "btnSellShardsQuantity",
"text": "btnSellShardsQuantity",
"binding": "Equip",
"width": 100,
"height": 30,
"x": 165,
"y": 220
},
{
"type": "Image",
"name": "leaveIcon",
"image": "ui/leave.png",
"x": 60,
"y": 315,
"width": 100,
"height": 100
},
{
"type": "TextButton",
"name": "done",
"text": "tr(lblBack)",
"binding": "Back",
"width": 100,
"height": 30,
"x": 165,
"y": 335
},
{
"type": "Label",
"name": "playerGold",
"style":"background",
"text": "[+Gold]",
"width": 128,
"height": 32,
"x": 16,
"y": 405
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"text": "[+Shards]",
"width": 128,
"height": 32,
"x": 16,
"y": 435
}
]
}

View File

@@ -132,18 +132,47 @@
},
{
"type": "Label",
"name": "gold",
"x": 0,
"y": 0,
"width": 120,
"name": "playerGold",
"style":"background",
"x": 5,
"y": 5,
"width": 80,
"height": 20
},
{
"type": "TextButton",
"selectable": true,
"name": "pull",
"name": "pullUsingGold",
"binding": "Status",
"text": "tr(lblDraw) [+gold]",
"x": 70,
"y": 5,
"width": 90,
"height": 20
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"x": 280,
"y": 5,
"width": 80,
"height": 20
},
{
"type": "TextButton",
"selectable": true,
"name": "pullUsingShards",
"binding": "Equip",
"text": "tr(lblDraw)",
"text": "tr(lblDraw) [+shards]",
"x": 345,
"y": 5,
"width": 90,
"height": 20
},
{
"type": "Label",
"name": "poolSize",
"x": 360,
"y": 180,
"width": 90,

View File

@@ -65,9 +65,9 @@
"name": "done",
"text": "tr(lblBack)",
"binding": "Back",
"x": 175,
"x": 180,
"y": 150,
"width": 70,
"width": 90,
"height": 20
},
{
@@ -139,11 +139,48 @@
"height": 20
},
{
"type": "Label",
"name": "playerGold",
"style":"background",
"x": 180,
"y": 0,
"width": 90,
"height": 20
},
{
"type": "TextButton",
"name": "pull",
"text": "tr(lblDraw)",
"selectable": true,
"name": "pullUsingGold",
"binding": "Status",
"text": "tr(lblDraw) [+gold]",
"x": 180,
"y": 25,
"width": 90,
"height": 20
},
{
"type": "Label",
"name": "playerShards",
"style":"background",
"x": 180,
"y": 50,
"width": 90,
"height": 20
},
{
"type": "TextButton",
"selectable": true,
"name": "pullUsingShards",
"binding": "Equip",
"text": "tr(lblDraw) [+shards]",
"x": 180,
"y": 75,
"width": 90,
"height": 20
},
{
"type": "Label",
"name": "poolSize",
"x": 16,
"y": 150,
"width": 97,

View File

@@ -60,7 +60,9 @@
],
"pointsOfInterest": [
"Black Castle",
"Swamp Town",
"Swamp Town Generic",
"Swamp Town Identity",
"Swamp Town Tribal",
"Swamp Capital",
"Swamp Town2",
"Zombie Town",

View File

@@ -51,7 +51,9 @@
],
"pointsOfInterest": [
"Blue Castle",
"Island Town",
"Island Town Generic",
"Island Town Identity",
"Island Town Tribal",
"Island Capital",
"NestU",
"MerfolkPool",

View File

@@ -67,7 +67,9 @@
"pointsOfInterest": [
"Green Castle",
"Forest Capital",
"Forest Town",
"Forest Town Generic",
"Forest Town Identity",
"Forest Town Tribal",
"ElfTown",
"WurmPond",
"Kavu Lair",

View File

@@ -1,5 +1,50 @@
[
{
"name": "Piper's Charm",
"equipmentSlot": "Neck",
"iconName": "PipersCharm",
"effect": {
"startBattleWithCard": [
"Piper's Charm"
]
}
},{
"name": "Sleep Wand",
"equipmentSlot": "Left",
"iconName": "SleepWand",
"effect": {
"startBattleWithCard": [
"Sleep Wand"
]
}
},{
"name": "Hill Giant Club",
"equipmentSlot": "Right",
"iconName": "HillGiantClub",
"effect": {
"startBattleWithCard": [
"Hill Giant Club"
]
}
},{
"name": "Cursed Treasure",
"equipmentSlot": "Right",
"iconName": "CursedTreasure",
"effect": {
"startBattleWithCard": [
"Cursed Treasure"
]
}
},{
"name": "Farmer's Tools",
"equipmentSlot": "Left",
"iconName": "FarmersTools",
"effect": {
"startBattleWithCard": [
"Farmer's Tools"
]
}
},{
"name": "Sol Ring",
"equipmentSlot": "Left",
"iconName": "SolRing",
@@ -765,7 +810,7 @@
"commandOnUse": "teleport to poi Spawn",
"iconName": "ColorlessRune",
"questItem": true,
"manaNeeded": 1,
"shardsNeeded": 1,
"cost": 100
},
{
@@ -778,7 +823,7 @@
"commandOnUse": "teleport to poi \"Plains Capital\"",
"iconName": "WhiteRune",
"questItem": true,
"manaNeeded": 1,
"shardsNeeded": 1,
"cost": 100
},
{
@@ -791,7 +836,7 @@
"commandOnUse": "teleport to poi \"Swamp Capital\"",
"iconName": "BlackRune",
"questItem": true,
"manaNeeded": 1,
"shardsNeeded": 1,
"cost": 100
},
{
@@ -804,7 +849,7 @@
"commandOnUse": "teleport to poi \"Island Capital\"",
"iconName": "BlueRune",
"questItem": true,
"manaNeeded": 1,
"shardsNeeded": 1,
"cost": 100
},
{
@@ -817,7 +862,7 @@
"commandOnUse": "teleport to poi \"Mountain Capital\"",
"iconName": "RedRune",
"questItem": true,
"manaNeeded": 1,
"shardsNeeded": 1,
"cost": 100
},
{
@@ -830,7 +875,7 @@
"commandOnUse": "teleport to poi \"Forest Capital\"",
"iconName": "GreenRune",
"questItem": true,
"manaNeeded": 1,
"shardsNeeded": 1,
"cost": 100
},
{
@@ -844,7 +889,7 @@
"commandOnUse": "heal percent 0.5",
"iconName": "WhiteStaff",
"questItem": true,
"manaNeeded": 5,
"shardsNeeded": 5,
"cost": 1000
},
{
@@ -858,7 +903,7 @@
"commandOnUse": "hide 10",
"iconName": "BlackStaff",
"questItem": true,
"manaNeeded": 5,
"shardsNeeded": 5,
"cost": 1000
},
{
@@ -871,7 +916,7 @@
"commandOnUse": "fly 10",
"iconName": "BlueStaff",
"questItem": true,
"manaNeeded": 5,
"shardsNeeded": 5,
"cost": 1000
},
{
@@ -884,7 +929,7 @@
"commandOnUse": "remove enemy nearest",
"iconName": "RedStaff",
"questItem": true,
"manaNeeded": 5,
"shardsNeeded": 5,
"cost": 1000
},
{
@@ -898,7 +943,7 @@
"commandOnUse": "sprint 10",
"iconName": "GreenStaff",
"questItem": true,
"manaNeeded": 5,
"shardsNeeded": 5,
"cost": 1000
}
]

View File

@@ -129,12 +129,57 @@
"radiusFactor": 0.5
},
{
"name": "Waste Town",
"name": "Waste Town Generic",
"type": "town",
"count": 100,
"count": 30,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "WasteTown",
"map": "maps/map/waste_town.tmx",
"map": "maps/map/waste_town_generic.tmx",
"radiusFactor": 0.8
},
{
"name": "Waste Town Identity",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "WasteTown",
"map": "maps/map/waste_town_identity.tmx",
"radiusFactor": 0.8
},
{
"name": "Waste Town Tribal",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "WasteTown",
"map": "maps/map/waste_town_tribal.tmx",
"radiusFactor": 0.8
},
{
"name": "Forest Town Generic",
"type": "town",
"count": 30,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "ForestTown",
"map": "maps/map/forest_town_generic.tmx",
"radiusFactor": 0.8
},
{
"name": "Forest Town Identity",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "ForestTown",
"map": "maps/map/forest_town_identity.tmx",
"radiusFactor": 0.8
},
{
"name": "Forest Town Tribal",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "ForestTown",
"map": "maps/map/forest_town_tribal.tmx",
"radiusFactor": 0.8
},
{
@@ -147,6 +192,32 @@
"radiusFactor": 0.8
},
{
"name": "Plains Town Generic",
"type": "town",
"count": 30,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "PlainsTown",
"map": "maps/map/plains_town_generic.tmx",
"radiusFactor": 0.8
},
{
"name": "Plains Town Identity",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "PlainsTown",
"map": "maps/map/plains_town_identity.tmx",
"radiusFactor": 0.8
},
{
"name": "Plains Town Tribal",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "PlainsTown",
"map": "maps/map/plains_town_tribal.tmx",
"radiusFactor": 0.8
},{
"name": "Plains Town",
"type": "town",
"count": 100,
@@ -156,6 +227,32 @@
"radiusFactor": 0.8
},
{
"name": "Island Town Generic",
"type": "town",
"count": 30,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "IslandTown",
"map": "maps/map/island_town_generic.tmx",
"radiusFactor": 0.8
},
{
"name": "Island Town Identity",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "IslandTown",
"map": "maps/map/island_town_identity.tmx",
"radiusFactor": 0.8
},
{
"name": "Island Town Tribal",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "IslandTown",
"map": "maps/map/island_town_tribal.tmx",
"radiusFactor": 0.8
},{
"name": "Island Town",
"type": "town",
"count": 100,
@@ -165,6 +262,32 @@
"radiusFactor": 0.8
},
{
"name": "Mountain Town Generic",
"type": "town",
"count": 30,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "MountainTown",
"map": "maps/map/mountain_town_generic.tmx",
"radiusFactor": 0.8
},
{
"name": "Mountain Town Identity",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "MountainTown",
"map": "maps/map/mountain_town_identity.tmx",
"radiusFactor": 0.8
},
{
"name": "Mountain Town Tribal",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "MountainTown",
"map": "maps/map/mountain_town_tribal.tmx",
"radiusFactor": 0.8
},{
"name": "Mountain Town",
"type": "town",
"count": 100,
@@ -173,6 +296,33 @@
"map": "maps/map/mountain_town.tmx",
"radiusFactor": 0.8
},
{
"name": "Swamp Town Generic",
"type": "town",
"count": 30,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "SwampTown",
"map": "maps/map/swamp_town_generic.tmx",
"radiusFactor": 0.8
},
{
"name": "Swamp Town Identity",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "SwampTown",
"map": "maps/map/swamp_town_identity.tmx",
"radiusFactor": 0.8
},
{
"name": "Swamp Town Tribal",
"type": "town",
"count": 35,
"spriteAtlas": "maps/tileset/buildings.atlas",
"sprite": "SwampTown",
"map": "maps/map/Swamp_town_tribal.tmx",
"radiusFactor": 0.8
},
{
"name": "Swamp Town",
"type": "town",

View File

@@ -65,7 +65,9 @@
],
"pointsOfInterest": [
"Red Castle",
"Mountain Town",
"Mountain Town Generic",
"Mountain Town Identity",
"Mountain Town Tribal",
"Mountain Capital",
"YuleTown",
"BarbarianCamp",

Some files were not shown because too many files have changed in this diff Show More