Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a2f510bbd5 | |||
| 4605d38982 | |||
| d9452b02d9 | |||
| 1cfee14caa | |||
| fd3777f08e |
@@ -35,8 +35,8 @@ before_install:
|
||||
if [ `uname -m` = x86_64 ]; then
|
||||
sudo dpkg --add-architecture i386 && sudo apt-get update &&
|
||||
sudo apt-get install -qq --force-yes libgd2-xpm-dev libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1 jq ant; fi &&
|
||||
wget https://dl.google.com/android/repository/android-ndk-r22-linux-x86_64.zip -nv &&
|
||||
wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz -nv;
|
||||
wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2 -nv &&
|
||||
wget http://dl.google.com/android/android-sdk_r24.3.4-linux.tgz -nv;
|
||||
fi
|
||||
|
||||
install:
|
||||
@@ -44,16 +44,22 @@ install:
|
||||
tar -x --xz -f sdk.lzma;
|
||||
fi
|
||||
- if [ "$BUILD_ANDROID" == "YES" ]; then
|
||||
unzip android-ndk-r22-linux-x86_64.zip &&
|
||||
tar -zxf android-sdk_r24.4.1-linux.tgz &&
|
||||
tar --absolute-names -jxf android-ndk-r9-linux-x86_64.tar.bz2 &&
|
||||
tar -zxf android-sdk_r24.3.4-linux.tgz &&
|
||||
$ANDROID list sdk --extended -a &&
|
||||
echo yes | $ANDROID update sdk -a -t tools,platform-tools,build-tools-23.0.1,android-23 --no-ui --force --no-https;
|
||||
echo yes | $ANDROID update sdk -a -t tools,platform-tools,build-tools-23.0.1,android-10 --no-ui --force --no-https;
|
||||
fi
|
||||
- sudo python -m easy_install --upgrade pyOpenSSL
|
||||
- sudo pip install pyjavaproperties
|
||||
- sudo pip install github3.py
|
||||
- sudo pip install cpp-coveralls
|
||||
|
||||
env:
|
||||
global:
|
||||
- secure: "EBzr1+qjQsOhn0s+tcFmXR1jP9B0xiOSXuXbRXWZ1OEHNvp8+A5/pS84LYVFlaZqmxr5dApxvPtwhgLIUbQ3EPXm8LpC3KgSD4dS+9/QMbxhe5TK4oczgFRGcDTMJQZsCzhOh7hp3tbcbJg5Gp+VT7aFjFQSHDGwhzSJXsXwh/8="
|
||||
- secure: "X5dTQfofqAutnXxmu11Ep2MQ5QYnMN8m0AITRtwymhEF2UclcOudI1+skPtuhAGbWQnSO+lhunV3cvMfw2/Ml3k/VDz6VdFSKFrzAu7ja1VLJfcxr7chi0s8q30pVBb66tGydjIBac3B+RQyqgmZQW1frbRrhC/kPFQ6wPWOJdQ="
|
||||
- secure: "T97NUPnxCpVZ/c5HH0zfo0FO3DPSRMSmze58ubW5EUTZOjAMtEt+OFdsrNZvUTCugUj2M1agtonZbAbczpaAL+lgZcHDgXgWMkfO0pMnsWX1yyCNqMuE/iTMpJr/xsLQeyWlftWjJLsseQU45abZsd1XVmda/G+ZhrDLF1y55SA="
|
||||
|
||||
script: "tools/travis-script.sh"
|
||||
|
||||
after_success:
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace boost {
|
||||
|
||||
enum xtime_clock_types
|
||||
{
|
||||
TIME_UTC_=1
|
||||
TIME_UTC=1
|
||||
// TIME_TAI,
|
||||
// TIME_MONOTONIC,
|
||||
// TIME_PROCESS,
|
||||
@@ -68,7 +68,7 @@ inline xtime get_xtime(boost::system_time const& abs_time)
|
||||
|
||||
inline int xtime_get(struct xtime* xtp, int clock_type)
|
||||
{
|
||||
if (clock_type == TIME_UTC_)
|
||||
if (clock_type == TIME_UTC)
|
||||
{
|
||||
*xtp=get_xtime(get_system_time());
|
||||
return clock_type;
|
||||
|
||||
@@ -350,7 +350,7 @@ namespace boost
|
||||
cond.timed_wait(lock, xt);
|
||||
# endif
|
||||
xtime cur;
|
||||
xtime_get(&cur, TIME_UTC_);
|
||||
xtime_get(&cur, TIME_UTC);
|
||||
if (xtime_cmp(xt, cur) <= 0)
|
||||
return;
|
||||
}
|
||||
@@ -365,7 +365,7 @@ namespace boost
|
||||
BOOST_VERIFY(!pthread_yield());
|
||||
# else
|
||||
xtime xt;
|
||||
xtime_get(&xt, TIME_UTC_);
|
||||
xtime_get(&xt, TIME_UTC);
|
||||
sleep(xt);
|
||||
# endif
|
||||
}
|
||||
|
||||
@@ -20,8 +20,8 @@ const int NANOSECONDS_PER_MICROSECOND = 1000;
|
||||
inline void to_time(int milliseconds, boost::xtime& xt)
|
||||
{
|
||||
int res = 0;
|
||||
res = boost::xtime_get(&xt, boost::TIME_UTC_);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC_);
|
||||
res = boost::xtime_get(&xt, boost::TIME_UTC);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC);
|
||||
|
||||
xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
|
||||
xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
|
||||
@@ -57,8 +57,8 @@ inline void to_timespec_duration(const boost::xtime& xt, timespec& ts)
|
||||
{
|
||||
boost::xtime cur;
|
||||
int res = 0;
|
||||
res = boost::xtime_get(&cur, boost::TIME_UTC_);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC_);
|
||||
res = boost::xtime_get(&cur, boost::TIME_UTC);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC);
|
||||
|
||||
if (boost::xtime_cmp(xt, cur) <= 0)
|
||||
{
|
||||
@@ -88,8 +88,8 @@ inline void to_duration(boost::xtime xt, int& milliseconds)
|
||||
{
|
||||
boost::xtime cur;
|
||||
int res = 0;
|
||||
res = boost::xtime_get(&cur, boost::TIME_UTC_);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC_);
|
||||
res = boost::xtime_get(&cur, boost::TIME_UTC);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC);
|
||||
|
||||
if (boost::xtime_cmp(xt, cur) <= 0)
|
||||
milliseconds = 0;
|
||||
@@ -110,8 +110,8 @@ inline void to_microduration(boost::xtime xt, int& microseconds)
|
||||
{
|
||||
boost::xtime cur;
|
||||
int res = 0;
|
||||
res = boost::xtime_get(&cur, boost::TIME_UTC_);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC_);
|
||||
res = boost::xtime_get(&cur, boost::TIME_UTC);
|
||||
BOOST_ASSERT(res == boost::TIME_UTC);
|
||||
|
||||
if (boost::xtime_cmp(xt, cur) <= 0)
|
||||
microseconds = 0;
|
||||
|
||||
@@ -474,7 +474,7 @@
|
||||
|
||||
#ifndef PNG_VERSION_INFO_ONLY
|
||||
/* include the compression library's header */
|
||||
#include "../include/zlib.h"
|
||||
#include "zlib.h"
|
||||
#endif
|
||||
|
||||
/* include all user configurable info, including optional assembler routines */
|
||||
|
||||
@@ -84,7 +84,7 @@ OBJS = $(GENERIC_OBJS) $(LINUX_OBJS)
|
||||
TARGET_LIB = libjge.a
|
||||
TARGET_HGE = libhgetools.a
|
||||
INCDIR = $(shell freetype-config --cflags 2> /dev/null) -I/usr/X11/include -I/usr/include/boost -Isrc/zipFS -Iinclude/
|
||||
CXXFLAGS += -DLINUX -DNETWORK_SUPPORT $(FMOD)
|
||||
CXXFLAGS += -DLINUX $(FMOD)
|
||||
CXXFLAGS += $(INCDIR)
|
||||
LIBDIR = lib/linux
|
||||
endif
|
||||
|
||||
@@ -25,6 +25,7 @@ std::string ToHex(T* pointer)
|
||||
|
||||
#ifdef LINUX
|
||||
#define OutputDebugString(val) (std::cerr << val);
|
||||
#define OutputDebugStringA(val) (std::cerr << val);
|
||||
#endif
|
||||
|
||||
#ifdef _DEBUG
|
||||
|
||||
@@ -394,7 +394,6 @@ class JGE
|
||||
void SetJNIEnv(JNIEnv * env, jclass cls);
|
||||
void sendJNICommand(std::string command);
|
||||
std::string getFileSystemLocation();
|
||||
std::string getFileUserFolderPath();
|
||||
#endif
|
||||
|
||||
protected:
|
||||
|
||||
@@ -30,7 +30,6 @@ const int kInfoMenuID = -200;
|
||||
const int kRandomPlayerMenuID = -11;
|
||||
const int kRandomAIPlayerMenuID = -12;
|
||||
const int kEvilTwinMenuID = -14;
|
||||
const int kCommanderMenuID = -33;
|
||||
|
||||
class JGuiListener
|
||||
{
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
#define _JSOCKET_H_
|
||||
|
||||
#include <queue>
|
||||
#include "Threading.h"
|
||||
using namespace std;
|
||||
|
||||
#define SERVER_PORT 5001
|
||||
|
||||
@@ -26,8 +26,16 @@
|
||||
#include "JAudio.h"
|
||||
|
||||
#else
|
||||
|
||||
#ifdef IOS
|
||||
#include <tr1/cstdint>
|
||||
#else
|
||||
#include <stdint.h>
|
||||
//#include <cstdint>
|
||||
#endif
|
||||
//#include <stdint.h>
|
||||
//the MSC version might only define _MSC_STDINT_H_
|
||||
//and that might cause redefinition of standard types
|
||||
//#define _STDINT_H_
|
||||
|
||||
#endif
|
||||
|
||||
@@ -140,9 +148,14 @@ typedef uint32_t u32;
|
||||
#include <GLES/gl.h>
|
||||
#include <GLES/glext.h>
|
||||
#elif defined (WIN32) || defined (LINUX)
|
||||
#if defined(__APPLE__)
|
||||
#include <OpenGL/gl.h>
|
||||
#include <OpenGL/glu.h>
|
||||
#else
|
||||
#include <GL/gl.h>
|
||||
#include <GL/glu.h>
|
||||
#endif
|
||||
#endif
|
||||
#else
|
||||
#include <QtOpenGL>
|
||||
#endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef THREADING_H
|
||||
#define THREADING_H
|
||||
|
||||
#if !defined(PSP) && !defined(QT_CONFIG) && !(__cplusplus > 199711L)
|
||||
#if !defined(PSP) && !defined(QT_CONFIG) && !(__cplusplus > 199711L) && !(_MSC_VER >= 1700)
|
||||
#include <boost/date_time.hpp>
|
||||
|
||||
#ifdef WIN32
|
||||
@@ -537,7 +537,7 @@ namespace boost
|
||||
}
|
||||
}
|
||||
|
||||
#elif (__cplusplus > 199711L)
|
||||
#elif (__cplusplus > 199711L) || (_MSC_VER >= 1700)
|
||||
|
||||
#include <thread>
|
||||
#include <mutex>
|
||||
|
||||
@@ -131,11 +131,10 @@ JFileSystem::JFileSystem(const string & _userPath, const string & _systemPath)
|
||||
systemPath = [[documentsDirectory stringByAppendingString: @"/Res/"] cStringUsingEncoding:1];
|
||||
|
||||
#elif defined (ANDROID)
|
||||
userPath = JGE::GetInstance()->getFileUserFolderPath();
|
||||
systemPath = JGE::GetInstance()->getFileSystemLocation();
|
||||
userPath = JGE::GetInstance()->getFileSystemLocation();
|
||||
systemPath = "";
|
||||
|
||||
DebugTrace("User path " << userPath);
|
||||
DebugTrace("System path " << systemPath);
|
||||
DebugTrace("User path " << userPath);
|
||||
#elif defined (QT_CONFIG)
|
||||
|
||||
QDir sysDir(RESDIR);
|
||||
@@ -260,7 +259,6 @@ void JFileSystem::clearZipCache()
|
||||
|
||||
bool JFileSystem::AttachZipFile(const string &zipfile, char *password /* = NULL */)
|
||||
{
|
||||
#ifndef WIN32
|
||||
if (mZipAvailable && mZipFile.is_open())
|
||||
{
|
||||
if (mZipFileName != zipfile)
|
||||
@@ -268,7 +266,7 @@ bool JFileSystem::AttachZipFile(const string &zipfile, char *password /* = NULL
|
||||
else
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
mZipFileName = zipfile;
|
||||
mPassword = password;
|
||||
|
||||
|
||||
@@ -668,7 +668,7 @@ string JGE::getFileSystemLocation()
|
||||
if (env == NULL)
|
||||
{
|
||||
DebugTrace("An Error Occurred in getting the JNI Environment whie trying to get the system folder location. Defaulting to /mnt/sdcard/net.wagic.app/Wagic");
|
||||
return "/mnt/sdcard/Wagic/Res";
|
||||
return "/mnt/sdcard/Wagic";
|
||||
};
|
||||
|
||||
jclass jniClass = env->FindClass("org/libsdl/app/SDLActivity");
|
||||
@@ -677,36 +677,7 @@ string JGE::getFileSystemLocation()
|
||||
if (methodId == 0)
|
||||
{
|
||||
DebugTrace("An Error Occurred in getting the JNI methodID for getSystemFolderPath. Defaulting to /mnt/sdcard/Wagic");
|
||||
return "/mnt/sdcard/Wagic/Res";
|
||||
};
|
||||
|
||||
jstring systemPath = (jstring) env->CallStaticObjectMethod(jniClass, methodId);
|
||||
|
||||
// Now convert the Java String to C++ char array
|
||||
const char* cstr = env->GetStringUTFChars(systemPath, 0);
|
||||
string retVal (cstr);
|
||||
env->ReleaseStringUTFChars(systemPath, cstr);
|
||||
env->DeleteLocalRef(systemPath);
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
string JGE::getFileUserFolderPath()
|
||||
{
|
||||
JNIEnv * env = getJNIEnv();
|
||||
if (env == NULL)
|
||||
{
|
||||
DebugTrace("An Error Occurred in getting the JNI Environment whie trying to get the system folder location. Defaulting to /mnt/sdcard/net.wagic.app/Wagic");
|
||||
return "/mnt/sdcard/Wagic/User";
|
||||
};
|
||||
|
||||
jclass jniClass = env->FindClass("org/libsdl/app/SDLActivity");
|
||||
jmethodID methodId = env->GetStaticMethodID( jniClass, "getUserFolderPath", "()Ljava/lang/String;");
|
||||
|
||||
if (methodId == 0)
|
||||
{
|
||||
DebugTrace("An Error Occurred in getting the JNI methodID for getSystemFolderPath. Defaulting to /mnt/sdcard/Wagic");
|
||||
return "/mnt/sdcard/Wagic/User";
|
||||
return "/mnt/sdcard/Wagic";
|
||||
};
|
||||
|
||||
jstring systemPath = (jstring) env->CallStaticObjectMethod(jniClass, methodId);
|
||||
|
||||
@@ -197,7 +197,7 @@ bool JGuiController::CheckUserInput(JButton key)
|
||||
mObjects[mCurr]->Entering();
|
||||
}
|
||||
mEngine->LeftClickedProcessed();
|
||||
mEngine->ResetInput();
|
||||
mEngine->ResetInput();
|
||||
return true;
|
||||
}
|
||||
mEngine->LeftClickedProcessed();
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
|
||||
*/
|
||||
|
||||
#define __STDC_LIMIT_MACROS
|
||||
|
||||
#include "../include/DebugRoutines.h"
|
||||
#include "../include/JNetwork.h"
|
||||
|
||||
|
||||
@@ -18,11 +18,6 @@
|
||||
#include <stdexcept>
|
||||
#include <iostream>
|
||||
#include <math.h>
|
||||
#ifndef WIN32
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#if (defined FORCE_GLES)
|
||||
#undef GL_ES_VERSION_2_0
|
||||
@@ -58,7 +53,6 @@ JGameLauncher* g_launcher = NULL;
|
||||
#ifdef ANDROID
|
||||
JNIEnv * mJNIEnv = NULL;
|
||||
jclass * mJNIClass = NULL;
|
||||
int SDL_ResumeSyncTime = 0;
|
||||
#endif
|
||||
|
||||
class SdlApp;
|
||||
@@ -84,7 +78,6 @@ extern "C" void Java_org_libsdl_app_SDLActivity_nativeResume(
|
||||
{
|
||||
if (!g_engine)
|
||||
return;
|
||||
SDL_ResumeSyncTime = 100000;
|
||||
g_engine->Resume();
|
||||
}
|
||||
|
||||
@@ -143,16 +136,8 @@ public:
|
||||
if(!g_engine->IsPaused())
|
||||
OnEvent(&Event);
|
||||
}
|
||||
if(!g_engine->IsPaused()){
|
||||
#ifdef ANDROID
|
||||
// Fix for SDL crash on resuming Android app from background.
|
||||
if(SDL_ResumeSyncTime){
|
||||
usleep(SDL_ResumeSyncTime);
|
||||
SDL_ResumeSyncTime = 0;
|
||||
}
|
||||
#endif
|
||||
if(!g_engine->IsPaused())
|
||||
OnUpdate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -185,12 +185,6 @@ JMusic *JSoundSystem::LoadMusic(const char *fileName)
|
||||
result = (*engineEngine)->CreateAudioPlayer(engineEngine, &music->playerObject, &audioSrc, &audioSnk, 2, ids, req);
|
||||
DebugTrace("result " << result);
|
||||
|
||||
if(result == SL_RESULT_MEMORY_FAILURE){
|
||||
delete music;
|
||||
mCurrentMusic = NULL;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// realize the player
|
||||
result = (*music->playerObject)->Realize(music->playerObject, SL_BOOLEAN_FALSE);
|
||||
DebugTrace("result " << result);
|
||||
@@ -309,12 +303,6 @@ JSample *JSoundSystem::LoadSample(const char *fileName)
|
||||
1, ids, req);
|
||||
DebugTrace("result " << result);
|
||||
|
||||
if(result == SL_RESULT_MEMORY_FAILURE){
|
||||
delete sample;
|
||||
mCurrentSample = NULL;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// realize the player
|
||||
result = (*sample->playerObject)->Realize(sample->playerObject, SL_BOOLEAN_FALSE);
|
||||
DebugTrace("result " << result);
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
#define __STDC_LIMIT_MACROS
|
||||
|
||||
#include "../../include/DebugRoutines.h"
|
||||
#include "Threading.h"
|
||||
|
||||
#include <errno.h>
|
||||
#ifdef WIN32
|
||||
#pragma comment(lib,"WSOCK32.LIB")
|
||||
#include <stdio.h>
|
||||
#include <conio.h>
|
||||
#include <winsock.h>
|
||||
#include <winsock.h>
|
||||
#include <fcntl.h>
|
||||
#elif LINUX
|
||||
#include <unistd.h>
|
||||
@@ -16,7 +20,6 @@
|
||||
#endif //WINDOWS
|
||||
|
||||
#include "../../include/JSocket.h"
|
||||
#include "../../include/DebugRoutines.h"
|
||||
|
||||
|
||||
JSocket::JSocket(string ipAddr)
|
||||
@@ -48,9 +51,7 @@ JSocket::JSocket(string ipAddr)
|
||||
|
||||
#ifdef WIN32
|
||||
unsigned int addr_dest = inet_addr(ipAddr.c_str());
|
||||
hostentptr = gethostbyaddr((char*) &addr_dest, 4, AF_INET);
|
||||
if (hostentptr == NULL)
|
||||
hostentptr = gethostbyname(ipAddr.c_str()); // Fix for Windows if IP Address cannot be resolved.
|
||||
hostentptr=gethostbyaddr((char*) &addr_dest, 4, AF_INET);
|
||||
#elif LINUX
|
||||
hostentptr = gethostbyname(ipAddr.c_str());
|
||||
#endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#Wagic the Homebrew
|
||||
|
||||
|
||||
[](https://travis-ci.com/WagicProject/wagic)
|
||||
[](https://travis-ci.org/WagicProject/wagic)
|
||||
[](https://ci.appveyor.com/project/xawotihs/wagic/branch/master)
|
||||
[](https://coveralls.io/r/WagicProject/wagic?branch=master)
|
||||
|
||||
|
||||
@@ -1,28 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:versionCode="0231"
|
||||
android:installLocation="preferExternal"
|
||||
android:versionName="@string/app_version"
|
||||
package="net.wagic.app">
|
||||
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<application android:icon="@drawable/icon"
|
||||
android:label="@string/app_name"
|
||||
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
|
||||
|
||||
<activity android:debuggable="false"
|
||||
android:configChanges="keyboard|keyboardHidden|orientation"
|
||||
android:label="@string/app_name"
|
||||
android:name="org.libsdl.app.SDLActivity"
|
||||
android:screenOrientation="sensorLandscape">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
<uses-sdk android:minSdkVersion="10"
|
||||
android:targetSdkVersion="29" />
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="0201" android:versionName="@string/app_version" package="net.wagic.app">
|
||||
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
||||
<application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
|
||||
<activity android:debuggable="false" android:configChanges="keyboard|keyboardHidden|orientation" android:label="@string/app_name" android:name="org.libsdl.app.SDLActivity" android:screenOrientation="sensorLandscape">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="10"/>
|
||||
</manifest>
|
||||
|
||||
@@ -8,4 +8,4 @@
|
||||
# project structure.
|
||||
|
||||
# Project target.
|
||||
target=android-23
|
||||
target=android-10
|
||||
|
||||
@@ -12,7 +12,7 @@ BOOST_PATH := $(MY_WAGIC_ROOT)/Boost
|
||||
JPEG_PATH := $(JGE_PATH)/Dependencies/libjpeg
|
||||
PNG_PATH := $(JGE_PATH)/Dependencies/libpng
|
||||
|
||||
LOCAL_CFLAGS += -DLINUX -DANDROID -DSDL_CONFIG -DNETWORK_SUPPORT
|
||||
LOCAL_CFLAGS += -DLINUX -DANDROID -DSDL_CONFIG
|
||||
LOCAL_CFLAGS += -D_STLP_USE_SIMPLE_NODE_ALLOC -DTIXML_USE_STL
|
||||
LOCAL_CFLAGS += -D__arm__ -D_REENTRANT -D_GLIBCXX__PTHREADS
|
||||
LOCAL_STATIC_LIBRARIES := libpng libjpeg
|
||||
@@ -133,7 +133,6 @@ LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.cpp \
|
||||
$(MTG_PATH)/src/WFilter.cpp \
|
||||
$(MTG_PATH)/src/WFont.cpp \
|
||||
$(MTG_PATH)/src/WGui.cpp \
|
||||
$(MTG_PATH)/src/WParsedInt.cpp \
|
||||
$(MTG_PATH)/src/WResourceManager.cpp \
|
||||
$(MTG_PATH)/src/DeckView.cpp \
|
||||
$(MTG_PATH)/src/CarouselDeckView.cpp \
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
APP_PROJECT_PATH := $(call my-dir)/..
|
||||
APP_CPPFLAGS += -frtti -fexceptions
|
||||
APP_ABI := armeabi-v7a
|
||||
APP_ABI := armeabi armeabi-v7a
|
||||
#APP_ABI := x86 # mainly for emulators
|
||||
APP_STL := c++_static
|
||||
APP_STL := gnustl_static
|
||||
APP_MODULES := libpng libjpeg main SDL
|
||||
|
||||
#APP_OPTIM is 'release' by default
|
||||
|
||||
@@ -11,4 +11,4 @@
|
||||
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
|
||||
|
||||
# Project target.
|
||||
target=android-23
|
||||
target=android-10
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
android:id="@+id/mainLayout"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:keepScreenOn="true"
|
||||
>
|
||||
<TextView
|
||||
android:layout_width="fill_parent"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_name">Wagic</string>
|
||||
<string name="app_version">0.23.1</string>
|
||||
<string name="info_text">All Rights Reserved.</string>
|
||||
<string name="app_version">0.20.1</string>
|
||||
<string name="info_text">Wagic v0.20.1\\nAll Rights Reserved.</string>
|
||||
</resources>
|
||||
|
||||
@@ -16,7 +16,7 @@ public class DeckImporter
|
||||
String message = "";
|
||||
String deck = "";
|
||||
String deckname = "";
|
||||
String prefix = "";
|
||||
String prefix = "#SB:";
|
||||
int cardcount = 0;
|
||||
if(f.exists() && !f.isDirectory())
|
||||
{
|
||||
@@ -36,14 +36,7 @@ public class DeckImporter
|
||||
{
|
||||
String line = scanner.nextLine();
|
||||
line = line.trim();
|
||||
if (line.equals("")) {
|
||||
line = scanner.nextLine();
|
||||
if (line.equals("")) {
|
||||
line = scanner.nextLine();
|
||||
prefix = "#SB:"; // Sideboard started from next card (we assumed that there are 2 blank lines from main deck and sideboard).
|
||||
}
|
||||
}
|
||||
if (!line.equals("")) // don't write out blank lines
|
||||
if (!line.equals("") && cardcount < 61) // don't write out blank lines
|
||||
{
|
||||
String[] slines = line.split("\\s+");
|
||||
String arranged = "";
|
||||
@@ -57,57 +50,60 @@ public class DeckImporter
|
||||
{
|
||||
arranged = arranged.substring(5);
|
||||
slines[1] = slines[1].replaceAll("\\[", "").replaceAll("\\]", "");
|
||||
deck += prefix + arranged + " (" + renameSet(slines[1]) + ") * " + slines[0] + "\n";
|
||||
deck += arranged + " (" + renameSet(slines[1]) + ") * " + slines[0] + "\n";
|
||||
} else
|
||||
{
|
||||
deck += prefix + arranged + "(*) * " + slines[0] + "\n";
|
||||
deck += arranged + "(*) * " + slines[0] + "\n";
|
||||
}
|
||||
cardcount += Integer.parseInt(slines[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
File profile = new File(activePath + "/User/settings/options.txt");
|
||||
String profileName = "Default";
|
||||
File profile = new File(activePath + "/Res/settings/options.txt");
|
||||
if (profile.exists() && !profile.isDirectory())
|
||||
profileName = getActiveProfile(profile);
|
||||
File rootDecks = null;
|
||||
if (!profileName.equalsIgnoreCase("Default"))
|
||||
rootDecks = new File(activePath + "/User/profiles/" + profileName);
|
||||
else
|
||||
rootDecks = new File(activePath + "/User/player/");
|
||||
if (rootDecks.exists() && rootDecks.isDirectory())
|
||||
{
|
||||
//save deck
|
||||
int countdeck = 1;
|
||||
File[] files = rootDecks.listFiles();
|
||||
for (int i = 0; i < files.length; i++)
|
||||
{//check if there is available deck...
|
||||
if (files[i].getName().startsWith("deck"))
|
||||
countdeck++;
|
||||
}
|
||||
File toSave = new File(rootDecks + "/deck" + countdeck + ".txt");
|
||||
try
|
||||
String profileName = getActiveProfile(profile);
|
||||
if (profileName != "Missing!")
|
||||
{
|
||||
FileOutputStream fop = new FileOutputStream(toSave);
|
||||
|
||||
// if file doesn't exists, then create it
|
||||
if (!toSave.exists())
|
||||
File rootProfiles = new File(activePath + "/Res/profiles/" + profileName);
|
||||
if (rootProfiles.exists() && rootProfiles.isDirectory())
|
||||
{
|
||||
toSave.createNewFile();
|
||||
//save deck
|
||||
int countdeck = 1;
|
||||
File[] files = rootProfiles.listFiles();
|
||||
for (int i = 0; i < files.length; i++)
|
||||
{//check if there is available deck...
|
||||
if (files[i].getName().startsWith("deck"))
|
||||
countdeck++;
|
||||
}
|
||||
File toSave = new File(rootProfiles + "/deck" + countdeck + ".txt");
|
||||
try
|
||||
{
|
||||
FileOutputStream fop = new FileOutputStream(toSave);
|
||||
|
||||
// if file doesn't exists, then create it
|
||||
if (!toSave.exists())
|
||||
{
|
||||
toSave.createNewFile();
|
||||
}
|
||||
// get the content in bytes
|
||||
byte[] contentInBytes = deck.getBytes();
|
||||
fop.write(contentInBytes);
|
||||
fop.flush();
|
||||
fop.close();
|
||||
message = "Import Deck Success!\n" + cardcount + " total cards in this deck\n\n" + deck;
|
||||
} catch (IOException e)
|
||||
{
|
||||
message = e.getMessage();
|
||||
}
|
||||
} else
|
||||
{
|
||||
message = "Missing Folder!";
|
||||
}
|
||||
// get the content in bytes
|
||||
byte[] contentInBytes = deck.getBytes();
|
||||
fop.write(contentInBytes);
|
||||
fop.flush();
|
||||
fop.close();
|
||||
message = "The deck has been successfully imported as: " + toSave.getName() + "\n" + cardcount + " total cards in this deck\n\n" + deck;
|
||||
} catch (IOException e)
|
||||
{
|
||||
message = e.getMessage();
|
||||
}
|
||||
} else
|
||||
{
|
||||
message = "Problem opening decks folder: " + rootDecks.getAbsolutePath();
|
||||
message = "Invalid Profile!";
|
||||
}
|
||||
} else
|
||||
{
|
||||
@@ -147,12 +143,12 @@ public class DeckImporter
|
||||
}
|
||||
else
|
||||
{
|
||||
return "Default";
|
||||
return "Missing!";
|
||||
}
|
||||
}
|
||||
catch(IOException e)
|
||||
{
|
||||
return "Default";
|
||||
return "Missing!";
|
||||
}
|
||||
return name;
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ public class StorageOptions
|
||||
public static int count = 0;
|
||||
public static String defaultMountPoint;
|
||||
|
||||
public static void determineStorageOptions(android.content.Context mContext)
|
||||
public static void determineStorageOptions()
|
||||
{
|
||||
initializeMountPoints();
|
||||
if (findForcemount()){
|
||||
@@ -36,16 +36,6 @@ public class StorageOptions
|
||||
}
|
||||
compareMountsWithVold();
|
||||
testAndCleanMountsList();
|
||||
File[] externalStorageVolumes = mContext.getExternalFilesDirs("");
|
||||
for(int i = 0; i < externalStorageVolumes.length; i++){
|
||||
mMounts.add(externalStorageVolumes[i].getAbsolutePath());
|
||||
}
|
||||
for(int i = 0; i < mMounts.size(); i++){
|
||||
for(int j = 0; j < mMounts.size(); j++){
|
||||
if(i!=j && mMounts.get(i).startsWith(mMounts.get(j)))
|
||||
mMounts.remove(i);
|
||||
}
|
||||
}
|
||||
setProperties();
|
||||
}
|
||||
|
||||
@@ -274,22 +264,22 @@ public class StorageOptions
|
||||
for (String path : mMounts)
|
||||
{//with forcemount menu
|
||||
if ("/mnt/sdcard".equalsIgnoreCase(path) || "/storage/sdcard0".equalsIgnoreCase(path))
|
||||
mLabels.add("Internal SD " + "[" + path + "/]");
|
||||
mLabels.add("Internal SD " + "[" + path + "]");
|
||||
else if (path.contains("emulated"))
|
||||
mLabels.add("Emulated SD " + " [" + path + "/]");
|
||||
mLabels.add("Emulated SD " + " [" + path + "]");
|
||||
else
|
||||
mLabels.add("External SD " + " [" + path + "/]");
|
||||
mLabels.add("External SD " + " [" + path + "]");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (String path : mMounts)
|
||||
{
|
||||
// TODO: /mnt/sdcard and emulated are assumed to always mean internal storage. Use this comparison until there is a better way to do this
|
||||
if ("/mnt/sdcard".equalsIgnoreCase(path) || path.contains("emulated"))
|
||||
mLabels.add("Built-in Storage " + "[" + path + "/]");
|
||||
// TODO: /mnt/sdcard is assumed to always mean internal storage. Use this comparison until there is a better way to do this
|
||||
if ("/mnt/sdcard".equalsIgnoreCase(path))
|
||||
mLabels.add("Built-in Storage");
|
||||
else
|
||||
mLabels.add("External SD Card " + "[" + path + "/]");
|
||||
mLabels.add("External SD Card " + i++);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ OBJS = objs/InteractiveButton.o objs/AbilityParser.o objs/ActionElement.o\
|
||||
objs/ThisDescriptor.o objs/Token.o objs/Translate.o objs/TranslateKeys.o\
|
||||
objs/Trash.o objs/utils.o objs/WEvent.o objs/WResourceManager.o\
|
||||
objs/WCachedResource.o objs/WDataSrc.o objs/WGui.o objs/WFilter.o objs/Tasks.o\
|
||||
objs/WFont.o objs/WParsedInt.o objs/CarouselDeckView.o objs/GridDeckView.o objs/DeckView.o
|
||||
objs/WFont.o objs/CarouselDeckView.o objs/GridDeckView.o objs/DeckView.o
|
||||
DEPS = $(patsubst objs/%.o, deps/%.d, $(OBJS))
|
||||
|
||||
RESULT = $(shell psp-config --psp-prefix 2> Makefile.cache)
|
||||
@@ -82,7 +82,7 @@ OBJS += objs/TestSuiteAI.o
|
||||
INCDIR = -I../../JGE/include -I../../JGE/src -I/usr/X11/include -I../../projects/mtg/include -I/usr/include/boost -I../../JGE/src/zipFS
|
||||
LIBDIR = -L../../JGE/lib/linux -L../../JGE -L/usr/X11/lib
|
||||
LIBS = -ljge -lfreetype -ljpeg -lgif -lpng -lz -lm -lstdc++ -lhgetools -lGL -lGLU -lX11 -lpthread $(FMOD)
|
||||
CFLAGS = $(INCDIR) -DLINUX -DNETWORK_SUPPORT -DUSE_PRECOMPILED_HEADERS=1 -DTIXML_USE_STL -Wno-nonnull-compare
|
||||
CFLAGS = $(INCDIR) -DLINUX -DUSE_PRECOMPILED_HEADERS=1 -DTIXML_USE_STL -Wno-nonnull-compare
|
||||
|
||||
ASFLAGS = $(CXXFLAGS)
|
||||
|
||||
@@ -93,7 +93,7 @@ OBJS += objs/TestSuiteAI.o
|
||||
INCDIR = -I../../JGE/include -I../../JGE/src -I/usr/X11/include -I../../projects/mtg/include -I../../Boost -I../../JGE/src/zipFS
|
||||
LIBDIR = -L../../JGE/lib/linux -L../../JGE -L/usr/X11/lib -L../../Boost/lib
|
||||
LIBS = -ljge -lfreetype -ljpeg -lgif -lpng -lz -lm -lstdc++ -lhgetools -lGL -lGLU -lX11 -lboost_thread $(FMOD)
|
||||
CFLAGS = $(INCDIR) -DLINUX -DNETWORK_SUPPORT -DUSE_PRECOMPILED_HEADERS=1 -Wno-nonnull-compare
|
||||
CFLAGS = $(INCDIR) -DLINUX -DUSE_PRECOMPILED_HEADERS=1 -Wno-nonnull-compare
|
||||
|
||||
ASFLAGS = $(CXXFLAGS)
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 156 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 122 KiB |
|
Before Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 142 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 128 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 50 KiB |
@@ -1,81 +0,0 @@
|
||||
name=Commander Format
|
||||
unlock=prx_commander
|
||||
[INIT]
|
||||
mode=commander
|
||||
|
||||
#MTG Game specific rules
|
||||
auto=bonusrule
|
||||
auto=putinplayrule
|
||||
auto=kickerrule
|
||||
auto=alternativecostrule
|
||||
auto=buybackrule
|
||||
auto=flashbackrule
|
||||
auto=retracerule
|
||||
auto=suspendrule
|
||||
auto=morphrule
|
||||
auto=payzerorule
|
||||
auto=overloadrule
|
||||
auto=attackrule
|
||||
auto=attackcostrule
|
||||
auto=blockrule
|
||||
auto=blockcostrule
|
||||
auto=combattriggerrule
|
||||
auto=legendrule
|
||||
auto=planeswalkerrule
|
||||
auto=planeswalkerdamage
|
||||
auto=planeswalkerattack
|
||||
auto=tokencleanuprule
|
||||
auto=persistrule
|
||||
auto=vampirerule
|
||||
auto=unearthrule
|
||||
auto=lifelinkrule
|
||||
auto=deathtouchrule
|
||||
auto=soulbondrule
|
||||
auto=dredgerule
|
||||
auto=bestowrule
|
||||
|
||||
[PLAYERS]
|
||||
life:40
|
||||
offerinterruptonphase=draw
|
||||
auto=ability$!all(*[iscommander]|myzones) moveto(mycommandzone)!$ controller
|
||||
|
||||
auto=shuffle
|
||||
auto=draw:7
|
||||
|
||||
auto=sethand:7
|
||||
auto=@each my draw:draw:1
|
||||
auto=maxPlay(land)1
|
||||
|
||||
#Lands Mana Rules
|
||||
auto=lord(Plains[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{W}
|
||||
auto=lord(Island[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{U}
|
||||
auto=lord(Swamp[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{B}
|
||||
auto=lord(Mountain[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{R}
|
||||
auto=lord(Forest[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{G}
|
||||
|
||||
|
||||
#Mana Empties from manapool at the end of each phase
|
||||
auto=@each untap:removeMana(*)
|
||||
auto=@each upkeep:removeMana(*)
|
||||
auto=@each draw:removeMana(*)
|
||||
auto=@each firstmain:removeMana(*)
|
||||
auto=@each combatbegins:removeMana(*)
|
||||
auto=@each attackers:removeMana(*)
|
||||
auto=@each blockers:removeMana(*)
|
||||
auto=@each combatdamage:removeMana(*)
|
||||
auto=@each combatEnds:removeMana(*)
|
||||
auto=@each secondmain:removeMana(*)
|
||||
auto=@each end:removeMana(*)
|
||||
auto=@each cleanup:removeMana(*)
|
||||
|
||||
#Monarch rule
|
||||
auto=@each my endofturn restriction{compare(pmonarch)~morethan~0}:draw:1
|
||||
|
||||
#reset Creature damage at the cleanup phase
|
||||
auto=@each cleanup:all(*|myBattlefield) resetDamage
|
||||
|
||||
#Commander put back rule
|
||||
auto=@movedTo(*[iscommander]|mygraveyard):may name(Put back to command zone) ability$!name(Put back to command zone) name(Put back to command zone) target(*[iscommander;fresh]|mygraveyard) moveto(mycommandzone)!$ controller
|
||||
auto=@movedTo(*[iscommander]|myexile):may name(Put back to command zone) ability$!name(Put back to command zone) name(Put back to command zone) target(*[iscommander;fresh]|myexile) moveto(mycommandzone)!$ controller
|
||||
auto=@movedTo(*[iscommander]|mylibrary):may name(Put back to command zone) ability$!name(Put back to command zone) name(Put back to command zone) target(*[iscommander;fresh]|mylibrary) moveto(mycommandzone)!$ controller
|
||||
auto=@movedTo(*[iscommander]|myhand):may name(Put back to command zone) ability$!name(Put back to command zone) name(Put back to command zone) target(*[iscommander;fresh]|myhand) moveto(mycommandzone)!$ controller
|
||||
@@ -39,7 +39,7 @@ unlock_condition=type(land|myBattlefield)~morethan~18
|
||||
[award]
|
||||
name=Paradise
|
||||
id=prx_paradise
|
||||
unlock_img=paradise_unlocked.png
|
||||
unlock_img=
|
||||
unlock_text=Birds of Paradise Mode Unlocked
|
||||
teaser=Utopia! Bring me down to the Paradise City.
|
||||
Lands you control have "{T}: Add one mana of any color."
|
||||
@@ -50,28 +50,28 @@ unlock_condition=type(Birds of Paradise|mybattlefield)~morethan~0
|
||||
[award]
|
||||
name=Morinfen Mode
|
||||
id=prx_morinfen
|
||||
unlock_img=morinfen_unlocked.png
|
||||
unlock_img=
|
||||
unlock_text=Morinfen Mode Unlocked
|
||||
teaser="I looked into its eyes, and its soul was so empty I saw no reflection, no light there." — Crovax
|
||||
At the beginning of your upkeep, you lose 1 life for each permanent you control.
|
||||
trophyroom_text=Won with less than 5 life.
|
||||
unlock_condition=this(controllerlife < 5)
|
||||
unlock_condition=this(controllerlife<=6)
|
||||
[/award]
|
||||
|
||||
[award]
|
||||
name=Horde
|
||||
id=prx_horde
|
||||
unlock_img=horde_unlocked.png
|
||||
unlock_img=
|
||||
unlock_text=Tribal Horde Mode Unlocked
|
||||
teaser="From shards and splinters I call forth my living horde." -Molimo, maro-sorcerer
|
||||
trophyroom_text=Won with more than 25 life.
|
||||
unlock_condition=this(controllerlife > 25)
|
||||
unlock_condition=this(controllerlife>=26)
|
||||
[/award]
|
||||
|
||||
[award]
|
||||
name=False God
|
||||
id=prx_karona
|
||||
unlock_img=falsegod_unlocked.png
|
||||
unlock_img=
|
||||
unlock_text=False God Mode Unlocked
|
||||
teaser=At the beginning of your upkeep, exchange control of a permanent you control chosen at random and a permanent target opponent controls chosen at random.
|
||||
trophyroom_text=Devotion to red more than 7.
|
||||
@@ -81,7 +81,7 @@ unlock_condition=this(variable{type:manar}>7)
|
||||
[award]
|
||||
name=Titania Mode
|
||||
id=prx_titania
|
||||
unlock_img=titania_unlocked.png
|
||||
unlock_img=
|
||||
unlock_text=Titania Mode Unlocked
|
||||
teaser=Voice of the Argoth forest, defender of its creatures, and enforcer of its laws, Titania is literally an aspect of the forest itself.
|
||||
You may play an additional land on each of your turns.
|
||||
@@ -89,12 +89,3 @@ trophyroom_text=Devotion to green more than 7.
|
||||
unlock_condition=this(variable{type:manag}>7)
|
||||
[/award]
|
||||
|
||||
[award]
|
||||
name=Commander Format
|
||||
id=prx_commander
|
||||
unlock_img=commander_unlocked.png
|
||||
unlock_text=Commander Format Unlocked
|
||||
teaser=Do you think you can dominate over other commanders? Take a big challenge in the commander format.
|
||||
trophyroom_text=Win a game with 40 or more life and with less cards in your graveyard than your opponent.
|
||||
unlock_condition=type(*|mygraveyard)~lessthan~type(*|opponentgraveyard),this(controllerlife > 39)
|
||||
[/award]
|
||||
|
||||
@@ -9,6 +9,5 @@ life:20
|
||||
auto=shuffle
|
||||
auto=draw:7
|
||||
|
||||
auto=@each my upkeep:if type(creature[manacost<=3]|mylibrary)~lessthan~1 then moverandom(creature[manacost<=4]) from(library) to(battlefield)
|
||||
auto=@each my upkeep:if type(creature[manacost<=2]|mylibrary)~lessthan~1 then moverandom(creature[manacost<=3]) from(library) to(battlefield)
|
||||
auto=@each my upkeep:if type(creature[manacost<=2]|mylibrary)~lessthan~1 then moverandom(creature[manacost<=4]) from(library) to(battlefield)
|
||||
auto=@each my upkeep:moverandom(creature[manacost<=2]) from(library) to(battlefield)
|
||||
@@ -68,8 +68,5 @@ auto=@each secondmain:removeMana(*)
|
||||
auto=@each end:removeMana(*)
|
||||
auto=@each cleanup:removeMana(*)
|
||||
|
||||
#Monarch rule
|
||||
auto=@each my endofturn restriction{compare(pmonarch)~morethan~0}:draw:1
|
||||
|
||||
#reset Creature damage at the cleanup phase
|
||||
auto=@each cleanup:all(*|myBattlefield) resetDamage
|
||||
@@ -11,6 +11,6 @@ auto=draw:7
|
||||
|
||||
auto=lord(*[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{W}
|
||||
auto=lord(*[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{U}
|
||||
auto=lord(*[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{B}
|
||||
auto=lord(*[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{R}
|
||||
auto=lord(*[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{B}
|
||||
auto=lord(*[-noactivatedability;-nomanaability;-notapability;land]|MyBattlefield) {T}:Add{G}
|
||||
@@ -1,9 +1,8 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Tenth Edition
|
||||
orderindex=COR-A.10E
|
||||
year=2007-07-13
|
||||
total=384
|
||||
year=2007
|
||||
total=383
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Abundance
|
||||
@@ -1920,8 +1919,3 @@ primitive=Youthful Knight
|
||||
id=129790
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Zombie
|
||||
id=-4143881
|
||||
rarity=T
|
||||
[/card]
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Unlimited Edition
|
||||
orderindex=COR-2.2ED
|
||||
year=1993-12-01
|
||||
year=1993
|
||||
total=302
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Fourth Edition
|
||||
orderindex=COR-4.4ED
|
||||
year=1995-04-01
|
||||
total=379
|
||||
year=1995
|
||||
total=378
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Abomination
|
||||
|
||||
@@ -2,9 +2,8 @@
|
||||
author=Wagic Team
|
||||
name=Fifth Dawn
|
||||
block=Mirrodin
|
||||
orderindex=EXP-X.5DN
|
||||
year=2004-06-04
|
||||
total=166
|
||||
year=2004
|
||||
total=165
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Abuna's Chant
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Fifth Edition
|
||||
orderindex=COR-5.5ED
|
||||
year=1997-03-24
|
||||
year=1997
|
||||
total=449
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Classic Sixth Edition
|
||||
orderindex=COR-6.6ED
|
||||
year=1999-04-21
|
||||
year=1999
|
||||
total=350
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Seventh Edition
|
||||
orderindex=COR-7.7ED
|
||||
year=2001-04-11
|
||||
year=2001
|
||||
total=350
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Eighth Edition
|
||||
orderindex=COR-8.8ED
|
||||
year=2003-07-28
|
||||
year=2003
|
||||
total=357
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Ninth Edition
|
||||
orderindex=COR-9.9ED
|
||||
year=2005-07-29
|
||||
year=2005
|
||||
total=359
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Masters 25
|
||||
orderindex=REP-B.A25
|
||||
year=2018-03-16
|
||||
total=249
|
||||
[/meta]
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Aether Revolt
|
||||
block=Kaladesh
|
||||
orderindex=EXP-ZZ4.AER
|
||||
year=2017-01-20
|
||||
year=2017
|
||||
total=194
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Amonkhet
|
||||
block=Amonkhet
|
||||
orderindex=EXP-ZZ5.AKH
|
||||
year=2017-04-28
|
||||
total=287
|
||||
[/meta]
|
||||
@@ -1052,77 +1050,152 @@ id=426911
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dusk // Dawn
|
||||
primitive=Dusk
|
||||
id=426912
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Commit // Memory
|
||||
primitive=Dawn
|
||||
id=426912
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Commit
|
||||
id=426913
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Never // Return
|
||||
primitive=Memory
|
||||
id=426913
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Never
|
||||
id=426914
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Insult // Injury
|
||||
primitive=Return
|
||||
id=426914
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Insult
|
||||
id=426915
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mouth // Feed
|
||||
primitive=Injury
|
||||
id=426915
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mouth
|
||||
id=426916
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Start // Finish
|
||||
primitive=Feed
|
||||
id=426916
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Start
|
||||
id=426917
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reduce // Rubble
|
||||
primitive=Finish
|
||||
id=426917
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reduce
|
||||
id=426918
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Destined // Lead
|
||||
primitive=Rubble
|
||||
id=426918
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Destined
|
||||
id=426919
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Onward // Victory
|
||||
primitive=Lead
|
||||
id=426919
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Onward
|
||||
id=426920
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spring // Mind
|
||||
primitive=Victory
|
||||
id=426920
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spring
|
||||
id=426921
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Prepare // Fight
|
||||
primitive=Mind
|
||||
id=426921
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Prepare
|
||||
id=426922
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Failure // Comply
|
||||
primitive=Fight
|
||||
id=426922
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Failure
|
||||
id=426923
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rags // Riches
|
||||
primitive=Comply
|
||||
id=426923
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rags
|
||||
id=426924
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cut // Ribbons
|
||||
primitive=Riches
|
||||
id=426924
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cut
|
||||
id=426925
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Heaven // Earth
|
||||
primitive=Ribbons
|
||||
id=426925
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Heaven
|
||||
id=426926
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Earth
|
||||
id=426926
|
||||
rarity=R
|
||||
[/card]
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Shards of Alara
|
||||
block=Alara
|
||||
orderindex=EXP-ZD.ALA
|
||||
year=2008-10-03
|
||||
total=250
|
||||
block=Shards of Alara
|
||||
year=2008
|
||||
total=249
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Ad Nauseam
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Alliances
|
||||
orderindex=EXP-8.ALL
|
||||
block=Ice Age
|
||||
year=1996-06-10
|
||||
total=201
|
||||
year=1996
|
||||
total=199
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Aesthir Glider
|
||||
|
||||
@@ -1,262 +0,0 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Arena New Player Experience
|
||||
orderindex=PRO-Z.ANA
|
||||
year=2018-07-14
|
||||
total=51
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Goblin
|
||||
id=-16787
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spirit
|
||||
id=-16759
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Angelic Reward
|
||||
id=16755
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Blinding Radiance
|
||||
id=16757
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Confront the Assault
|
||||
id=16759
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Inspiring Commander
|
||||
id=16760
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Knight's Pledge
|
||||
id=16761
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Loxodon Line Breaker
|
||||
id=16762
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sanctuary Cat
|
||||
id=16763
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Serra Angel
|
||||
id=16764
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shrine Keeper
|
||||
id=16765
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spiritual Guardian
|
||||
id=16766
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tactical Advantage
|
||||
id=16767
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Take Vengeance
|
||||
id=16768
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Divination
|
||||
id=16769
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Overflowing Insight
|
||||
id=16770
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=River's Favor
|
||||
id=16771
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shorecomber Crab
|
||||
id=16772
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Titanic Pelagosaur
|
||||
id=16773
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Waterknot
|
||||
id=16774
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Zephyr Gull
|
||||
id=16775
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Altar's Reap
|
||||
id=16776
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ambition's Cost
|
||||
id=16777
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cruel Cut
|
||||
id=16778
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Miasmic Mummy
|
||||
id=16779
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nimble Pilferer
|
||||
id=16780
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Renegade Demon
|
||||
id=16781
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rise from the Grave
|
||||
id=16782
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soulhunter Rakshasa
|
||||
id=16783
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Chaos Maw
|
||||
id=16784
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Doublecast
|
||||
id=16785
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Bruiser
|
||||
id=16786
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Gang Leader
|
||||
id=16787
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Grenade
|
||||
id=16788
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ogre Painbringer
|
||||
id=16789
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Raging Goblin
|
||||
id=16790
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Seismic Rupture
|
||||
id=16791
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Volcanic Dragon
|
||||
id=16792
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Feral Roar
|
||||
id=16793
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rumbling Baloth
|
||||
id=16794
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Treetop Warden
|
||||
id=16795
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=16796
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Island
|
||||
id=16797
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=16798
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=16799
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=16800
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=16801
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Island
|
||||
id=16802
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=16803
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=16804
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=16805
|
||||
rarity=C
|
||||
[/card]
|
||||
@@ -1,612 +0,0 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Arena Beginner Set
|
||||
orderindex=PRO-Z8.ANB
|
||||
year=2020-08-13
|
||||
total=121
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Goblin
|
||||
id=-294806
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin
|
||||
id=-294790
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin
|
||||
id=-294789
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cat
|
||||
id=-294732
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spirit
|
||||
id=-294725
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Angel of Vitality
|
||||
id=294720
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Angelic Guardian
|
||||
id=294721
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Angelic Reward
|
||||
id=294722
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bond of Discipline
|
||||
id=294723
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Charmed Stray
|
||||
id=294724
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Confront the Assault
|
||||
id=294725
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fencing Ace
|
||||
id=294726
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goring Ceratops
|
||||
id=294727
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hallowed Priest
|
||||
id=294728
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Impassioned Orator
|
||||
id=294729
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Inspiring Commander
|
||||
id=294730
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Knight's Pledge
|
||||
id=294731
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Leonin Warleader
|
||||
id=294732
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Loxodon Line Breaker
|
||||
id=294733
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Moorland Inquisitor
|
||||
id=294734
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pacifism
|
||||
id=294735
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sanctuary Cat
|
||||
id=294736
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Serra Angel
|
||||
id=294737
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shrine Keeper
|
||||
id=294738
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soulmender
|
||||
id=294739
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spiritual Guardian
|
||||
id=294740
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tactical Advantage
|
||||
id=294741
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Air Elemental
|
||||
id=294742
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Armored Whirl Turtle
|
||||
id=294743
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cloudkin Seer
|
||||
id=294744
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Coral Merfolk
|
||||
id=294745
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Frilled Sea Serpent
|
||||
id=294746
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Glint
|
||||
id=294747
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Octoprophet
|
||||
id=294748
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Overflowing Insight
|
||||
id=294749
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Riddlemaster Sphinx
|
||||
id=294750
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=River's Favor
|
||||
id=294751
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sleep
|
||||
id=294752
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soulblade Djinn
|
||||
id=294753
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sworn Guardian
|
||||
id=294754
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Unsummon
|
||||
id=294755
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wall of Runes
|
||||
id=294756
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Warden of Evos Isle
|
||||
id=294757
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Waterkin Shaman
|
||||
id=294758
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Waterknot
|
||||
id=294759
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Windreader Sphinx
|
||||
id=294760
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Windstorm Drake
|
||||
id=294761
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Winged Words
|
||||
id=294762
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Zephyr Gull
|
||||
id=294763
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bad Deal
|
||||
id=294764
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Compound Fracture
|
||||
id=294765
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cruel Cut
|
||||
id=294766
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Demon of Loathing
|
||||
id=294767
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eternal Thirst
|
||||
id=294768
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Krovikan Scoundrel
|
||||
id=294769
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Malakir Cullblade
|
||||
id=294770
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mardu Outrider
|
||||
id=294771
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Murder
|
||||
id=294772
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nightmare
|
||||
id=294773
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nimble Pilferer
|
||||
id=294774
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Raise Dead
|
||||
id=294775
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sanitarium Skeleton
|
||||
id=294776
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Savage Gorger
|
||||
id=294777
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scathe Zombies
|
||||
id=294778
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sengir Vampire
|
||||
id=294779
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Skeleton Archer
|
||||
id=294780
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soulhunter Rakshasa
|
||||
id=294781
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Typhoid Rats
|
||||
id=294782
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Unlikely Aid
|
||||
id=294783
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Vampire Opportunist
|
||||
id=294784
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Witch's Familiar
|
||||
id=294785
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bombard
|
||||
id=294786
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Burn Bright
|
||||
id=294787
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fearless Halberdier
|
||||
id=294788
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Gang Leader
|
||||
id=294789
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Gathering
|
||||
id=294790
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Trashmaster
|
||||
id=294791
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Tunneler
|
||||
id=294792
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hurloon Minotaur
|
||||
id=294793
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Immortal Phoenix
|
||||
id=294794
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Inescapable Blaze
|
||||
id=294795
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Maniacal Rage
|
||||
id=294796
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Molten Ravager
|
||||
id=294797
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nest Robber
|
||||
id=294798
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ogre Battledriver
|
||||
id=294799
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Raging Goblin
|
||||
id=294800
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Raid Bombardment
|
||||
id=294801
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reduce to Ashes
|
||||
id=294802
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shock
|
||||
id=294803
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Siege Dragon
|
||||
id=294804
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Storm Strike
|
||||
id=294805
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tin Street Cadet
|
||||
id=294806
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Volcanic Dragon
|
||||
id=294807
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Affectionate Indrik
|
||||
id=294808
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Baloth Packhunter
|
||||
id=294809
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Charging Badger
|
||||
id=294810
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Colossal Majesty
|
||||
id=294811
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Epic Proportions
|
||||
id=294812
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Feral Roar
|
||||
id=294813
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Generous Stray
|
||||
id=294814
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gigantosaurus
|
||||
id=294815
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Greenwood Sentinel
|
||||
id=294816
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ilysian Caryatid
|
||||
id=294817
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jungle Delver
|
||||
id=294818
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Prized Unicorn
|
||||
id=294819
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rabid Bite
|
||||
id=294820
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rampaging Brontodon
|
||||
id=294821
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rumbling Baloth
|
||||
id=294822
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sentinel Spider
|
||||
id=294823
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Stony Strength
|
||||
id=294824
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Titanic Growth
|
||||
id=294825
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Treetop Warden
|
||||
id=294826
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wildwood Patrol
|
||||
id=294827
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Woodland Mystic
|
||||
id=294828
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=World Shaper
|
||||
id=294829
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Evolving Wilds
|
||||
id=294830
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=294831
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Island
|
||||
id=294832
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=294833
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=294834
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=294835
|
||||
rarity=C
|
||||
[/card]
|
||||
@@ -2,8 +2,7 @@
|
||||
author=Wagic Team
|
||||
name=Apocalypse
|
||||
block=Invasion
|
||||
orderindex=EXP-O.APC
|
||||
year=2001-06-04
|
||||
year=2001
|
||||
total=143
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Alara Reborn
|
||||
block=Alara
|
||||
orderindex=EXP-ZF.ARB
|
||||
year=2009-04-30
|
||||
total=146
|
||||
block=Shards of Alara
|
||||
year=2009
|
||||
total=145
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Anathemancer
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Archenemy
|
||||
orderindex=COM-2.ARC
|
||||
year=2010-06-18
|
||||
year=2010
|
||||
total=150
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Arabian Nights
|
||||
orderindex=EXP-1.ARN
|
||||
year=1993-12-17
|
||||
year=1993
|
||||
total=92
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,452 +0,0 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Anthologies
|
||||
orderindex=REP-2.ATH
|
||||
year=1998-11-01
|
||||
total=89
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Goblin
|
||||
id=-295861
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin
|
||||
id=-295856
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pegasus
|
||||
id=-295832
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pegasus
|
||||
id=-295831
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Armageddon
|
||||
id=295820
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Armored Pegasus
|
||||
id=295821
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Benalish Knight
|
||||
id=295822
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Combat Medic
|
||||
id=295823
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Disenchant
|
||||
id=295824
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Freewind Falcon
|
||||
id=295825
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Icatian Javelineers
|
||||
id=295826
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Infantry Veteran
|
||||
id=295827
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Order of the White Shield
|
||||
id=295828
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pacifism
|
||||
id=295829
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pegasus Charger
|
||||
id=295830
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pegasus Stampede
|
||||
id=295831
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sacred Mesa
|
||||
id=295832
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Samite Healer
|
||||
id=295833
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Serra Angel
|
||||
id=295834
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swords to Plowshares
|
||||
id=295835
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Warrior's Honor
|
||||
id=295836
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=White Knight
|
||||
id=295837
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Youthful Knight
|
||||
id=295838
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Black Knight
|
||||
id=295839
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cuombajj Witches
|
||||
id=295840
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Feast of the Unicorn
|
||||
id=295841
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hymn to Tourach
|
||||
id=295842
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hypnotic Specter
|
||||
id=295843
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ihsan's Shade
|
||||
id=295844
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Knight of Stromgald
|
||||
id=295845
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Terror
|
||||
id=295846
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Unholy Strength
|
||||
id=295847
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fireball
|
||||
id=295848
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Balloon Brigade
|
||||
id=295849
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Digging Team
|
||||
id=295850
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Grenade
|
||||
id=295851
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Hero
|
||||
id=295852
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin King
|
||||
id=295853
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Matron
|
||||
id=295854
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Mutant
|
||||
id=295855
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Offensive
|
||||
id=295856
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Recruiter
|
||||
id=295857
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Snowman
|
||||
id=295858
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Tinkerer
|
||||
id=295859
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Vandal
|
||||
id=295860
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Warrens
|
||||
id=295861
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lightning Bolt
|
||||
id=295862
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mogg Fanatic
|
||||
id=295863
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mogg Flunkies
|
||||
id=295864
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mogg Raider
|
||||
id=295865
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pyrokinesis
|
||||
id=295866
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pyrotechnics
|
||||
id=295867
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Raging Goblin
|
||||
id=295868
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Uthden Troll
|
||||
id=295869
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Volcanic Dragon
|
||||
id=295870
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Canopy Spider
|
||||
id=295871
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Carnivorous Plant
|
||||
id=295872
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Erhnam Djinn
|
||||
id=295873
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Giant Growth
|
||||
id=295874
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Giant Spider
|
||||
id=295875
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gorilla Chieftain
|
||||
id=295876
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hurricane
|
||||
id=295877
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Llanowar Elves
|
||||
id=295878
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mirri, Cat Warrior
|
||||
id=295879
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Overrun
|
||||
id=295880
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scavenger Folk
|
||||
id=295881
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spectral Bears
|
||||
id=295882
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Woolly Spider
|
||||
id=295883
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lady Orca
|
||||
id=295884
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ranger en-Vec
|
||||
id=295885
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aesthir Glider
|
||||
id=295886
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jalum Tome
|
||||
id=295887
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nevinyrral's Disk
|
||||
id=295888
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Serrated Arrows
|
||||
id=295889
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Brushland
|
||||
id=295890
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Drifting Meadow
|
||||
id=295891
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pendelhaven
|
||||
id=295892
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Polluted Mire
|
||||
id=295893
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Slippery Karst
|
||||
id=295894
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Smoldering Crater
|
||||
id=295895
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Strip Mine
|
||||
id=295896
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=295897
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=295898
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=295899
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=295900
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=295901
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=295902
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=295903
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=295904
|
||||
rarity=C
|
||||
[/card]
|
||||
@@ -1,8 +1,7 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Antiquities
|
||||
orderindex=EXP-2.ATQ
|
||||
year=1994-03-04
|
||||
year=1994
|
||||
total=100
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Duel Decks: Ajani vs. Nicol Bolas
|
||||
orderindex=DUE-9.DDH
|
||||
year=2011-09-02
|
||||
block=Duel
|
||||
year=2011
|
||||
total=80
|
||||
[/meta]
|
||||
[card]
|
||||
|
||||
@@ -2,9 +2,8 @@
|
||||
author=Wagic Team
|
||||
name=Avacyn Restored
|
||||
block=Innistrad
|
||||
orderindex=EXP-ZO.AVR
|
||||
year=2012-05-04
|
||||
total=246
|
||||
year=2012
|
||||
total=244
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Abundant Growth
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Battlebond
|
||||
orderindex=COM-H.BBD
|
||||
year=2018-06-08
|
||||
total=256
|
||||
[/meta]
|
||||
|
||||