Skip to content

Commit 97ba032

Browse files
author
nicol
committed
card designer now use AST
1 parent c5fafab commit 97ba032

3 files changed

Lines changed: 19 additions & 29 deletions

File tree

pom.xml

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@
6565
<poi.version>5.5.1</poi.version>
6666
<slf4j.version>2.1.0-alpha1</slf4j.version>
6767
<rhino.version>1.9.1</rhino.version>
68-
<commonmark.version>0.28.0</commonmark.version>
68+
<commonmark.version>0.29.0</commonmark.version>
6969
<langchain4j.version>1.16.3</langchain4j.version>
7070
<telegram.version>10.0.0</telegram.version>
7171
</properties>
@@ -76,11 +76,6 @@
7676
<name>Panda-Lang repository</name>
7777
<url>https://repo.panda-lang.org/releases</url>
7878
</repository>
79-
<repository>
80-
<id>github-swingx</id>
81-
<name>wumpz/swingx</name>
82-
<url>https://maven.pkg.github.com/wumpz/swingx</url>
83-
</repository>
8479
</repositories>
8580

8681
<build>
@@ -205,12 +200,12 @@
205200
<dependency>
206201
<groupId>com.github.nicho92</groupId>
207202
<artifactId>mtg-ast-java</artifactId>
208-
<version>0.0.15</version>
203+
<version>0.0.16</version>
209204
</dependency>
210205
<dependency>
211-
<groupId>org.swinglabs.swingx</groupId>
212-
<artifactId>swingx-core</artifactId>
213-
<version>2.0.1</version>
206+
<groupId>com.github.wumpz.swingx</groupId>
207+
<artifactId>swingx-all</artifactId>
208+
<version>2.1</version>
214209
</dependency>
215210
<dependency>
216211
<groupId>org.telegram</groupId>
@@ -276,7 +271,7 @@
276271
<dependency>
277272
<groupId>org.apache.tomcat</groupId>
278273
<artifactId>tomcat-jdbc</artifactId>
279-
<version>11.0.22</version>
274+
<version>11.0.23</version>
280275
</dependency>
281276
<dependency>
282277
<groupId>org.firebirdsql.jdbc</groupId>

src/main/java/org/magic/api/pictureseditor/impl/FunCardMakerPicturesProvider.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,13 @@
1111
import org.apache.http.entity.mime.HttpMultipartMode;
1212
import org.apache.http.entity.mime.MultipartEntityBuilder;
1313
import org.apache.http.entity.mime.content.FileBody;
14+
import org.magic.api.ast.engine.OracleParser;
1415
import org.magic.api.beans.MTGCard;
1516
import org.magic.api.beans.MTGEdition;
1617
import org.magic.api.beans.enums.EnumExtraCardMetaData;
1718
import org.magic.api.beans.enums.EnumSecurityStamp;
1819
import org.magic.api.beans.technical.MTGProperty;
1920
import org.magic.api.interfaces.abstracts.AbstractPicturesEditorProvider;
20-
import org.magic.game.model.abilities.LoyaltyAbilities;
21-
import org.magic.game.model.factories.AbilityFactory;
2221
import org.magic.services.network.MTGHttpClient;
2322
import org.magic.services.network.RequestBuilder;
2423
import org.magic.services.network.URLTools;
@@ -62,12 +61,12 @@ public BufferedImage getPicture(MTGCard mc, MTGEdition me) throws IOException {
6261

6362

6463
if (mc.isPlaneswalker()) {
65-
List<LoyaltyAbilities> abs = AbilityFactory.getInstance().getLoyaltyAbilities(mc);
64+
var abs = OracleParser.toFacade(mc.getName(), mc.getText()).getPlaneswalkerAbilities();
6665
build.addContent("template", "modern-planeswalker" + abs.size());
6766
build.addContent("fields[loyalty-base]", String.valueOf(mc.getLoyalty()));
6867
for (var i = 0; i < abs.size(); i++) {
69-
build.addContent("fields[capa" + (i + 1) + "-cost]", abs.get(i).getCost().toString().trim());
70-
build.addContent("fields[capa" + (i + 1) + "]", abs.get(i).getEffect().toString().trim());
68+
build.addContent("fields[capa" + (i + 1) + "-cost]", abs.get(i).loyalty());
69+
build.addContent("fields[capa" + (i + 1) + "]", abs.get(i).effects().getFirst().text());
7170
}
7271
} else {
7372
build.addContent("template", getString(LAYOUT_OLD_MODERN).toLowerCase() + "-basic");

src/main/java/org/magic/api/pictureseditor/impl/MTGDesignPicturesProvider.java

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import org.apache.http.client.utils.URIBuilder;
1414
import org.apache.http.message.BasicNameValuePair;
1515
import org.apache.http.util.EntityUtils;
16+
import org.magic.api.ast.engine.OracleParser;
1617
import org.magic.api.beans.MTGCard;
1718
import org.magic.api.beans.MTGEdition;
1819
import org.magic.api.beans.enums.EnumExtraCardMetaData;
@@ -22,7 +23,6 @@
2223
import org.magic.api.beans.enums.EnumSecurityStamp;
2324
import org.magic.api.beans.technical.MTGProperty;
2425
import org.magic.api.interfaces.abstracts.AbstractPicturesEditorProvider;
25-
import org.magic.game.model.factories.AbilityFactory;
2626
import org.magic.services.AccountsManager;
2727
import org.magic.services.network.MTGHttpClient;
2828
import org.magic.services.network.URLTools;
@@ -161,34 +161,30 @@ public BufferedImage getPicture(MTGCard mc, MTGEdition me) throws IOException {
161161

162162
if (!mc.getText().isEmpty()) {
163163
if (mc.isPlaneswalker()) {
164-
165-
var abs = AbilityFactory.getInstance().getLoyaltyAbilities(mc);
164+
165+
var abs = OracleParser.toFacade(mc.getName(), mc.getText()).getPlaneswalkerAbilities();
166166
build.addParameter("pw-size", String.valueOf(abs.size()));
167167

168168
for (var i = 0; i < abs.size(); i++) {
169169
if (i == 0) {
170-
build.addParameter("rules-text", String.valueOf(abs.get(i).getCost()).replace("+", "") + ": "
171-
+ abs.get(i).getEffect() + '\u00a0');
170+
build.addParameter("rules-text", abs.get(i).loyalty().replace("+", "") + ": "+ abs.get(i).effects().getFirst().text() + '\u00a0');
172171
} else {
173-
build.addParameter(PW_TEXT + (i + 1), String.valueOf(abs.get(i).getCost()).replace("+", "")
174-
+ ": " + abs.get(i).getEffect() + '\u00a0');
172+
build.addParameter(PW_TEXT + (i + 1), abs.get(i).loyalty().replace("+", "")+ ": " + abs.get(i).effects().getFirst().text() + '\u00a0');
175173
}
176-
build.addParameter((i == 0) ? "rules-text" : PW_TEXT + (i + 1),
177-
String.valueOf(abs.get(i).getCost()).replace("+", "") + ": " + abs.get(i).getEffect()
178-
+ '\u00a0');
174+
build.addParameter((i == 0) ? "rules-text" : PW_TEXT + (i + 1),abs.get(i).loyalty().replace("+", "") + ": " + abs.get(i).effects().getFirst().text()+ '\u00a0');
179175
}
180176
} else if (mc.isSaga()) {
181177
build.addParameter("type", "Enchantment Saga");
182178
build.addParameter("saga-reminder",
183179
"(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)");
184180

185-
var abs = AbilityFactory.getInstance().getSagaAbilities(mc);
181+
var abs = OracleParser.toFacade(mc.getName(), mc.getText()).getSagaAbilities();
186182
build.addParameter("pw-size", String.valueOf(abs.size()));
187183
for (var i = 0; i < abs.size(); i++) {
188184
if (i == 0)
189-
build.addParameter("rules-text", abs.get(i).getEffect().toString());
185+
build.addParameter("rules-text", abs.get(i).effects().get(0).text());
190186
else
191-
build.addParameter(PW_TEXT + (i + 1), abs.get(i).getEffect().toString());
187+
build.addParameter(PW_TEXT + (i + 1), abs.get(i).effects().get(0).text());
192188
}
193189
} else {
194190
build.addParameter("rules-text", mc.getText());

0 commit comments

Comments
 (0)