Commit 88571dcc authored by salix5's avatar salix5

Merge remote-tracking branch 'origin/master' into patch

parents fea7e298 145062d8
......@@ -37,6 +37,8 @@ ClientCard::ClientCard() {
atkstring[0] = 0;
defstring[0] = 0;
lvstring[0] = 0;
rscstring[0] = 0;
lscstring[0] = 0;
overlayTarget = 0;
equipTarget = 0;
}
......
......@@ -3,6 +3,7 @@
#include "data_manager.h"
#include "image_manager.h"
#include "game.h"
#include "materials.h"
#include "../ocgcore/field.h"
namespace ygo {
......@@ -655,9 +656,9 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
switch (location) {
case LOCATION_DECK: {
if (controler == 0) {
t->X = 7.3f;
t->Y = 3.0f;
t->Z = 0.01f + 0.01f * sequence;
t->X = matManager.vFields[0].Pos.X - (matManager.vFields[0].Pos.X - matManager.vFields[1].Pos.X)/2;
t->Y = matManager.vFields[0].Pos.Y - (matManager.vFields[0].Pos.Y - matManager.vFields[3].Pos.Y)/2;
t->Z = 0.01f + 0.01f * sequence;
if(deck_reversed == pcard->is_reversed) {
r->X = 0.0f;
r->Y = 3.1415926f;
......@@ -668,8 +669,8 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
r->Z = 0.0f;
}
} else {
t->X = 0.6f;
t->Y = -3.0f;
t->X = matManager.vFields[68].Pos.X - (matManager.vFields[68].Pos.X - matManager.vFields[69].Pos.X)/2;//0.6f;
t->Y = matManager.vFields[68].Pos.Y - (matManager.vFields[68].Pos.Y - matManager.vFields[70].Pos.Y)/2;//-3.0f;
t->Z = 0.01f + 0.01f * sequence;
if(deck_reversed == pcard->is_reversed) {
r->X = 0.0f;
......@@ -733,9 +734,9 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
}
case LOCATION_MZONE: {
if (controler == 0) {
t->X = 1.75f + 1.1f * sequence;
t->Y = 1.1f;
t->Z = 0.01f;
t->X = (matManager.vFields[16].Pos.X - (matManager.vFields[16].Pos.X - matManager.vFields[17].Pos.X)/2) + 1.1f * sequence;
t->Y = matManager.vFields[16].Pos.Y - (matManager.vFields[16].Pos.Y - matManager.vFields[18].Pos.Y)/2;
t->Z = 0.01f;
if (pcard->position & POS_DEFENCE) {
r->X = 0.0f;
r->Z = -3.1415926f / 2.0f;
......@@ -750,9 +751,9 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
else r->Y = 0.0f;
}
} else {
t->X = 6.15f - 1.1f * sequence;
t->Y = -1.1f;
t->Z = 0.01f;
t->X = (matManager.vFields[84].Pos.X - (matManager.vFields[84].Pos.X - matManager.vFields[85].Pos.X)/2) - 1.1f * sequence;
t->Y = matManager.vFields[84].Pos.Y - (matManager.vFields[84].Pos.Y - matManager.vFields[86].Pos.Y)/2;
t->Z = 0.01f;
if (pcard->position & POS_DEFENCE) {
r->X = 0.0f;
r->Z = 3.1415926f / 2.0f;
......@@ -772,21 +773,21 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
case LOCATION_SZONE: {
if (controler == 0) {
if (sequence <= 4) {
t->X = 1.75f + 1.1f * sequence;
t->Y = 2.3f;
t->Z = 0.01f;
t->X = (matManager.vFields[36].Pos.X - (matManager.vFields[36].Pos.X - matManager.vFields[37].Pos.X)/2) + 1.1f * sequence;
t->Y = matManager.vFields[36].Pos.Y - (matManager.vFields[36].Pos.Y - matManager.vFields[38].Pos.Y)/2;
t->Z = 0.01f;
} else if (sequence == 5) {
t->X = 0.6f;
t->Y = 1.7f;
t->Z = 0.01f;
t->X = matManager.vFields[56].Pos.X - (matManager.vFields[56].Pos.X - matManager.vFields[57].Pos.X)/2;
t->Y = matManager.vFields[56].Pos.Y - (matManager.vFields[56].Pos.Y - matManager.vFields[58].Pos.Y)/2;
t->Z = 0.01f;
} else if (sequence == 6) {
t->X = -0.4f;
t->Y = 1.7f;
t->Z = 0.01f;
t->X = matManager.vFields[60].Pos.X - (matManager.vFields[60].Pos.X - matManager.vFields[61].Pos.X)/2;
t->Y = matManager.vFields[60].Pos.Y - (matManager.vFields[60].Pos.Y - matManager.vFields[62].Pos.Y)/2;
t->Z = 0.01f;
} else {
t->X = 8.3f;
t->Y = 1.7f;
t->Z = 0.01f;
t->X = matManager.vFields[65].Pos.X - (matManager.vFields[65].Pos.X - matManager.vFields[66].Pos.X)/2;
t->Y = matManager.vFields[65].Pos.Y - (matManager.vFields[65].Pos.Y - matManager.vFields[67].Pos.Y)/2;
t->Z = 0.01f;
}
r->X = 0.0f;
r->Z = 0.0f;
......@@ -795,21 +796,21 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
else r->Y = 0.0f;
} else {
if (sequence <= 4) {
t->X = 6.15f - 1.1f * sequence;
t->Y = -2.3f;
t->Z = 0.01f;
t->X = (matManager.vFields[104].Pos.X - (matManager.vFields[104].Pos.X - matManager.vFields[105].Pos.X)/2) - 1.1f * sequence;
t->Y = matManager.vFields[104].Pos.Y - (matManager.vFields[104].Pos.Y - matManager.vFields[106].Pos.Y)/2;
t->Z = 0.01f;
} else if (sequence == 5) {
t->X = 7.3f;
t->Y = -1.7f;
t->Z = 0.01f;
t->X = matManager.vFields[124].Pos.X - (matManager.vFields[124].Pos.X - matManager.vFields[125].Pos.X)/2;
t->Y = matManager.vFields[124].Pos.Y - (matManager.vFields[124].Pos.Y - matManager.vFields[126].Pos.Y)/2;
t->Z = 0.01f;
} else if (sequence == 6) {
t->X = 8.3f;
t->Y = -1.7f;
t->Z = 0.01f;
t->X = matManager.vFields[128].Pos.X - (matManager.vFields[128].Pos.X - matManager.vFields[129].Pos.X)/2;
t->Y = matManager.vFields[128].Pos.Y - (matManager.vFields[128].Pos.Y - matManager.vFields[130].Pos.Y)/2;
t->Z = 0.01f;
} else {
t->X = -0.4f;
t->Y = -1.7f;
t->Z = 0.01f;
t->X = matManager.vFields[132].Pos.X - (matManager.vFields[132].Pos.X - matManager.vFields[133].Pos.X)/2;//-0.4f;
t->Y = matManager.vFields[132].Pos.Y - (matManager.vFields[132].Pos.Y - matManager.vFields[134].Pos.Y)/2;//-1.7f;
t->Z = 0.01f;
}
r->X = 0.0f;
r->Z = 3.1415926f;
......@@ -821,16 +822,16 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
}
case LOCATION_GRAVE: {
if (controler == 0) {
t->X = 7.3f;
t->Y = 1.7f;
t->Z = 0.01f + 0.01f * sequence;
t->X = matManager.vFields[4].Pos.X - (matManager.vFields[4].Pos.X - matManager.vFields[5].Pos.X)/2;
t->Y = matManager.vFields[4].Pos.Y - (matManager.vFields[4].Pos.Y - matManager.vFields[6].Pos.Y)/2;
t->Z = 0.01f + 0.01f * sequence;
r->X = 0.0f;
r->Y = 0.0f;
r->Z = 0.0f;
} else {
t->X = 0.6f;
t->Y = -1.7f;
t->Z = 0.01f + 0.01f * sequence;
t->X = matManager.vFields[72].Pos.X - (matManager.vFields[72].Pos.X - matManager.vFields[73].Pos.X)/2;
t->Y = matManager.vFields[72].Pos.Y - (matManager.vFields[72].Pos.Y - matManager.vFields[74].Pos.Y)/2;
t->Z = 0.01f + 0.01f * sequence;
r->X = 0.0f;
r->Y = 0.0f;
r->Z = 3.1415926f;
......@@ -839,9 +840,9 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
}
case LOCATION_REMOVED: {
if (controler == 0) {
t->X = 7.3f;
t->Y = 0.4f;
t->Z = 0.01f + 0.01f * sequence;
t->X = matManager.vFields[12].Pos.X - (matManager.vFields[12].Pos.X - matManager.vFields[13].Pos.X)/2;
t->Y = matManager.vFields[12].Pos.Y - (matManager.vFields[12].Pos.Y - matManager.vFields[14].Pos.Y)/2;
t->Z = 0.01f + 0.01f * sequence;
if(pcard->position & POS_FACEUP) {
r->X = 0.0f;
r->Y = 0.0f;
......@@ -852,9 +853,9 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
r->Z = 0.0f;
}
} else {
t->X = 0.6f;
t->Y = -0.4f;
t->Z = 0.01f + 0.01f * sequence;
t->X = matManager.vFields[80].Pos.X - (matManager.vFields[80].Pos.X - matManager.vFields[81].Pos.X)/2;
t->Y = matManager.vFields[80].Pos.Y - (matManager.vFields[80].Pos.Y - matManager.vFields[82].Pos.Y)/2;
t->Z = 0.01f + 0.01f * sequence;
if(pcard->position & POS_FACEUP) {
r->X = 0.0f;
r->Y = 0.0f;
......@@ -869,18 +870,18 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
}
case LOCATION_EXTRA: {
if (controler == 0) {
t->X = 0.6f;
t->Y = 3.0f;
t->Z = 0.01f + 0.01f * sequence;
t->X = matManager.vFields[8].Pos.X - (matManager.vFields[8].Pos.X - matManager.vFields[9].Pos.X)/2;
t->Y = matManager.vFields[8].Pos.Y - (matManager.vFields[8].Pos.Y - matManager.vFields[10].Pos.Y)/2;
t->Z = 0.01f + 0.01f * sequence;
r->X = 0.0f;
if(pcard->position & POS_FACEUP)
r->Y = 0.0f;
else r->Y = 3.1415926f;
r->Z = 0.0f;
} else {
t->X = 7.3f;
t->Y = -3.0f;
t->Z = 0.01f * sequence;
t->X = matManager.vFields[76].Pos.X - (matManager.vFields[76].Pos.X - matManager.vFields[77].Pos.X)/2;
t->Y = matManager.vFields[76].Pos.Y - (matManager.vFields[76].Pos.Y - matManager.vFields[78].Pos.Y)/2;
t->Z = 0.01f * sequence;
r->X = 0.0f;
if(pcard->position & POS_FACEUP)
r->Y = 0.0f;
......@@ -895,16 +896,16 @@ void ClientField::GetCardLocation(ClientCard* pcard, irr::core::vector3df* t, ir
}
int oseq = pcard->overlayTarget->sequence;
if (pcard->overlayTarget->controler == 0) {
t->X = 1.75f + 1.1f * oseq - 0.12f + 0.06f * sequence;
t->Y = 1.15f;
t->Z = 0.005f + pcard->sequence * 0.0001f;
t->X = (matManager.vFields[16].Pos.X - (matManager.vFields[16].Pos.X - matManager.vFields[17].Pos.X)/2) + 1.1f * oseq - 0.12f + 0.06f * sequence;//1.75f + 1.1f * oseq - 0.12f + 0.06f * sequence;
t->Y = matManager.vFields[16].Pos.Y - (matManager.vFields[16].Pos.Y - matManager.vFields[18].Pos.Y)/2 + 0.05f;//1.15f;
t->Z = 0.005f + pcard->sequence * 0.0001f;
r->X = 0.0f;
r->Y = 0.0f;
r->Z = 0.0f;
} else {
t->X = 6.15f - 1.1f * oseq + 0.12f - 0.06f * sequence;
t->Y = -1.15f;
t->Z = 0.005f + pcard->sequence * 0.0001f;
t->X = (matManager.vFields[84].Pos.X - (matManager.vFields[84].Pos.X - matManager.vFields[85].Pos.X)/2) - 1.1f * oseq + 0.12f - 0.06f * sequence; //6.15f - 1.1f * oseq + 0.12f - 0.06f * sequence;
t->Y = matManager.vFields[84].Pos.Y - (matManager.vFields[84].Pos.Y - matManager.vFields[86].Pos.Y)/2 - 0.05f;//-1.15f;
t->Z = 0.005f + pcard->sequence * 0.0001f;
r->X = 0.0f;
r->Y = 0.0f;
r->Z = 3.1415926f;
......
......@@ -248,27 +248,32 @@ void Game::DrawMisc() {
matManager.mTexture.setTexture(0, imageManager.tAct);
driver->setMaterial(matManager.mTexture);
if(dField.deck_act) {
im.setTranslation(vector3df(7.3f, 3.0f, dField.deck[0].size() * 0.01f + 0.02f));
im.setTranslation(vector3df(matManager.vFields[0].Pos.X - (matManager.vFields[0].Pos.X - matManager.vFields[1].Pos.X)/2,
matManager.vFields[0].Pos.Y - (matManager.vFields[0].Pos.Y - matManager.vFields[3].Pos.Y)/2, dField.deck[0].size() * 0.01f + 0.02f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
if(dField.grave_act) {
im.setTranslation(vector3df(7.3f, 1.7f, dField.grave[0].size() * 0.01f + 0.02f));
im.setTranslation(vector3df(matManager.vFields[4].Pos.X - (matManager.vFields[4].Pos.X - matManager.vFields[5].Pos.X)/2,
matManager.vFields[4].Pos.Y - (matManager.vFields[4].Pos.Y - matManager.vFields[6].Pos.Y)/2, dField.grave[0].size() * 0.01f + 0.02f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
if(dField.remove_act) {
im.setTranslation(vector3df(7.3f, 0.4f, dField.remove[0].size() * 0.01f + 0.02f));
im.setTranslation(vector3df(matManager.vFields[12].Pos.X - (matManager.vFields[12].Pos.X - matManager.vFields[13].Pos.X)/2,
matManager.vFields[12].Pos.Y - (matManager.vFields[12].Pos.Y - matManager.vFields[14].Pos.Y)/2, dField.remove[0].size() * 0.01f + 0.02f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
if(dField.extra_act) {
im.setTranslation(vector3df(0.6f, 3.0f, dField.extra[0].size() * 0.01f + 0.02f));
im.setTranslation(vector3df(matManager.vFields[8].Pos.X - (matManager.vFields[8].Pos.X - matManager.vFields[9].Pos.X)/2,
matManager.vFields[8].Pos.Y - (matManager.vFields[8].Pos.Y - matManager.vFields[10].Pos.Y)/2, dField.extra[0].size() * 0.01f + 0.02f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
if(dField.pzone_act) {
im.setTranslation(vector3df(-0.4f, 1.7f, 0.03f));
im.setTranslation(vector3df(matManager.vFields[60].Pos.X - (matManager.vFields[60].Pos.X - matManager.vFields[61].Pos.X)/2,
matManager.vFields[60].Pos.Y - (matManager.vFields[60].Pos.Y - matManager.vFields[62].Pos.Y)/2, 0.03f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
......@@ -356,92 +361,92 @@ void Game::DrawMisc() {
for(int i = 0; i < 5; ++i) {
pcard = dField.mzone[0][i];
if(pcard && pcard->code != 0) {
int m = 483 + i * 90;
adFont->draw(L"/", recti(m - 4, 396, m + 4, 416), 0xff000000, true, false, 0);
adFont->draw(L"/", recti(m - 3, 397, m + 5, 417), 0xffffffff, true, false, 0);
int m = 463 + i * 90;
adFont->draw(L"/", recti(m - 4, 416, m + 4, 436), 0xff000000, true, false, 0);
adFont->draw(L"/", recti(m - 3, 417, m + 5, 437), 0xffffffff, true, false, 0);
int w = adFont->getDimension(pcard->atkstring).Width;
adFont->draw(pcard->atkstring, recti(m - 5 - w, 396, m - 5, 416), 0xff000000, false, false, 0);
adFont->draw(pcard->atkstring, recti(m - 4 - w, 397, m - 4, 417),
adFont->draw(pcard->atkstring, recti(m - 5 - w, 416, m - 5, 436), 0xff000000, false, false, 0);
adFont->draw(pcard->atkstring, recti(m - 4 - w, 417, m - 4, 437),
pcard->attack > pcard->base_attack ? 0xffffff00 : pcard->attack < pcard->base_attack ? 0xffff2090 : 0xffffffff , false, false, 0);
w = adFont->getDimension(pcard->defstring).Width;
adFont->draw(pcard->defstring, recti(m + 4, 396, m + 4 + w, 416), 0xff000000, false, false, 0);
adFont->draw(pcard->defstring, recti(m + 5, 397, m + 5 + w, 417),
adFont->draw(pcard->defstring, recti(m + 4, 416, m + 4 + w, 436), 0xff000000, false, false, 0);
adFont->draw(pcard->defstring, recti(m + 5, 417, m + 5 + w, 437),
pcard->defence > pcard->base_defence ? 0xffffff00 : pcard->defence < pcard->base_defence ? 0xffff2090 : 0xffffffff , false, false, 0);
adFont->draw(pcard->lvstring, recti(463 + i * 85, 346, 495 + i * 85, 366), 0xff000000, false, false, 0);
adFont->draw(pcard->lvstring, recti(464 + i * 85, 347, 496 + i * 85, 367),
adFont->draw(pcard->lvstring, recti(443 + i * 85, 356, 475 + i * 85, 366), 0xff000000, false, false, 0);
adFont->draw(pcard->lvstring, recti(444 + i * 85, 357, 476 + i * 85, 367),
(pcard->type & TYPE_XYZ) ? 0xffff80ff : (pcard->type & TYPE_TUNER) ? 0xffffff00 : 0xffffffff, false, false, 0);
}
}
for(int i = 0; i < 5; ++i) {
pcard = dField.mzone[1][i];
if(pcard && (pcard->position & POS_FACEUP)) {
int m = 810 - i * 73;
adFont->draw(L"/", recti(m - 4, 245, m + 4, 265), 0xff000000, true, false, 0);
adFont->draw(L"/", recti(m - 3, 246, m + 5, 266), 0xffffffff, true, false, 0);
int m = 795 - i * 73;
adFont->draw(L"/", recti(m - 4, 235, m + 4, 255), 0xff000000, true, false, 0);
adFont->draw(L"/", recti(m - 3, 236, m + 5, 256), 0xffffffff, true, false, 0);
int w = adFont->getDimension(pcard->atkstring).Width;
adFont->draw(pcard->atkstring, recti(m - 5 - w, 245, m - 5, 265), 0xff000000, false, false, 0);
adFont->draw(pcard->atkstring, recti(m - 4 - w, 246, m - 4, 266),
adFont->draw(pcard->atkstring, recti(m - 5 - w, 235, m - 5, 255), 0xff000000, false, false, 0);
adFont->draw(pcard->atkstring, recti(m - 4 - w, 236, m - 4, 256),
pcard->attack > pcard->base_attack ? 0xffffff00 : pcard->attack < pcard->base_attack ? 0xffff2090 : 0xffffffff , false, false, 0);
w = adFont->getDimension(pcard->defstring).Width;
adFont->draw(pcard->defstring, recti(m + 4, 245, m + 4 + w, 265), 0xff000000, false, false, 0);
adFont->draw(pcard->defstring, recti(m + 5, 246, m + 5 + w, 266),
adFont->draw(pcard->defstring, recti(m + 4, 235, m + 4 + w, 255), 0xff000000, false, false, 0);
adFont->draw(pcard->defstring, recti(m + 5, 236, m + 5 + w, 256),
pcard->defence > pcard->base_defence ? 0xffffff00 : pcard->defence < pcard->base_defence ? 0xffff2090 : 0xffffffff , false, false, 0);
adFont->draw(pcard->lvstring, recti(789 - i * 76, 282, 820 - i * 76, 302), 0xff000000, false, false, 0);
adFont->draw(pcard->lvstring, recti(789 - i * 76, 283, 820 - i * 76, 303),
adFont->draw(pcard->lvstring, recti(769 - i * 76, 272, 800 - i * 76, 292), 0xff000000, false, false, 0);
adFont->draw(pcard->lvstring, recti(769 - i * 76, 273, 800 - i * 76, 293),
(pcard->type & TYPE_XYZ) ? 0xffff80ff : (pcard->type & TYPE_TUNER) ? 0xffffff00 : 0xffffffff, false, false, 0);
}
}
pcard = dField.szone[0][6];
if(pcard) {
adFont->draw(pcard->lscstring, recti(321, 378, 353, 398), 0xff000000, true, false, 0);
adFont->draw(pcard->lscstring, recti(322, 379, 354, 399), 0xffffffff, true, false, 0);
adFont->draw(pcard->lscstring, recti(386, 398, 398, 418), 0xff000000, true, false, 0);
adFont->draw(pcard->lscstring, recti(387, 399, 399, 419), 0xffffffff, true, false, 0);
}
pcard = dField.szone[0][7];
if(pcard) {
adFont->draw(pcard->rscstring, recti(975, 378, 1007, 398), 0xff000000, true, false, 0);
adFont->draw(pcard->rscstring, recti(976, 379, 1008, 399), 0xffffffff, true, false, 0);
adFont->draw(pcard->rscstring, recti(880, 398, 912, 418), 0xff000000, true, false, 0);
adFont->draw(pcard->rscstring, recti(881, 399, 913, 419), 0xffffffff, true, false, 0);
}
pcard = dField.szone[1][6];
if(pcard) {
adFont->draw(pcard->lscstring, recti(924, 255, 956, 275), 0xff000000, true, false, 0);
adFont->draw(pcard->lscstring, recti(925, 256, 957, 276), 0xffffffff, true, false, 0);
adFont->draw(pcard->lscstring, recti(834, 245, 866, 265), 0xff000000, true, false, 0);
adFont->draw(pcard->lscstring, recti(835, 246, 867, 266), 0xffffffff, true, false, 0);
}
pcard = dField.szone[1][7];
if(pcard) {
adFont->draw(pcard->rscstring, recti(373, 255, 405, 275), 0xff000000, true, false, 0);
adFont->draw(pcard->rscstring, recti(374, 256, 406, 276), 0xffffffff, true, false, 0);
adFont->draw(pcard->rscstring, recti(428, 245, 460, 265), 0xff000000, true, false, 0);
adFont->draw(pcard->rscstring, recti(429, 246, 461, 266), 0xffffffff, true, false, 0);
}
if(dField.extra[0].size()) {
numFont->draw(dataManager.GetNumString(dField.extra[0].size()), recti(305, 532, 381, 552), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.extra[0].size()), recti(305, 533, 383, 553), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.extra[0].size()), recti(245, 562, 381, 552), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.extra[0].size()), recti(245, 563, 383, 553), 0xffffff00, true, false, 0);
}
if(dField.deck[0].size()) {
numFont->draw(dataManager.GetNumString(dField.deck[0].size()), recti(942, 532, 1021, 552), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.deck[0].size()), recti(943, 533, 1023, 553), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.deck[0].size()), recti(912, 562, 1021, 552), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.deck[0].size()), recti(913, 563, 1023, 553), 0xffffff00, true, false, 0);
}
if(dField.grave[0].size()) {
numFont->draw(dataManager.GetNumString(dField.grave[0].size()), recti(917, 436, 984, 456), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.grave[0].size()), recti(917, 437, 986, 457), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.grave[0].size()), recti(837, 375, 984, 456), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.grave[0].size()), recti(837, 376, 986, 457), 0xffffff00, true, false, 0);
}
if(dField.remove[0].size()) {
numFont->draw(dataManager.GetNumString(dField.remove[0].size()), recti(895, 360, 957, 380), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.remove[0].size()), recti(895, 361, 959, 381), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.remove[0].size()), recti(1025, 375, 957, 380), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.remove[0].size()), recti(1025, 376, 959, 381), 0xffffff00, true, false, 0);
}
if(dField.extra[1].size()) {
numFont->draw(dataManager.GetNumString(dField.extra[1].size()), recti(848, 212, 908, 232), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.extra[1].size()), recti(848, 213, 910, 233), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.extra[1].size()), recti(808, 207, 908, 232), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.extra[1].size()), recti(808, 208, 910, 233), 0xffffff00, true, false, 0);
}
if(dField.deck[1].size()) {
numFont->draw(dataManager.GetNumString(dField.deck[1].size()), recti(421, 212, 481, 232), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.deck[1].size()), recti(421, 213, 483, 233), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.deck[1].size()), recti(391, 207, 481, 232), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.deck[1].size()), recti(391, 208, 483, 233), 0xffffff00, true, false, 0);
}
if(dField.grave[1].size()) {
numFont->draw(dataManager.GetNumString(dField.grave[1].size()), recti(408, 261, 462, 281), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.grave[1].size()), recti(408, 262, 464, 282), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.grave[1].size()), recti(348, 310, 462, 281), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.grave[1].size()), recti(348, 311, 464, 282), 0xffffff00, true, false, 0);
}
if(dField.remove[1].size()) {
numFont->draw(dataManager.GetNumString(dField.remove[1].size()), recti(386, 320, 443, 340), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.remove[1].size()), recti(386, 321, 445, 341), 0xffffff00, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.remove[1].size()), recti(216, 310, 443, 340), 0xff000000, true, false, 0);
numFont->draw(dataManager.GetNumString(dField.remove[1].size()), recti(216, 311, 445, 341), 0xffffff00, true, false, 0);
}
}
void Game::DrawGUI() {
......@@ -661,11 +666,12 @@ void Game::DrawSpec() {
auto pos = lpcFont->getDimension(lstr);
if(showcardp < 10) {
int alpha = (showcardp * 25) << 24;
lpcFont->draw(lstr, recti(671 - pos.Width / 2 - (9 - showcardp) * 40, 271, 970, 350), alpha);
lpcFont->draw(lstr, recti(670 - pos.Width / 2 - (9 - showcardp) * 40, 270, 970, 350), alpha | 0xffffff);
lpcFont->draw(lstr, recti(651 - pos.Width / 2 - (9 - showcardp) * 40, 291, 950, 370), alpha);
lpcFont->draw(lstr, recti(650 - pos.Width / 2 - (9 - showcardp) * 40, 290, 950, 370), alpha | 0xffffff);
} else if(showcardp < showcarddif) {
lpcFont->draw(lstr, recti(671 - pos.Width / 2, 271, 970, 350), 0xff000000);
lpcFont->draw(lstr, recti(670 - pos.Width / 2, 270, 970, 350), 0xffffffff);
recti loc = recti(650 - pos.Width / 2, 290, 950, 370);
lpcFont->draw(lstr, recti(651 - pos.Width / 2, 291, 950, 370), 0xff000000);
lpcFont->draw(lstr, loc, 0xffffffff);
if(dInfo.vic_string && (showcardcode == 1 || showcardcode == 2)) {
driver->draw2DRectangle(0xa0000000, recti(540, 320, 800, 340));
guiFont->draw(dInfo.vic_string, recti(502, 321, 840, 340), 0xff000000, true, true);
......@@ -673,8 +679,8 @@ void Game::DrawSpec() {
}
} else if(showcardp < showcarddif + 10) {
int alpha = ((showcarddif + 10 - showcardp) * 25) << 24;
lpcFont->draw(lstr, recti(671 - pos.Width / 2 + (showcardp - showcarddif) * 40, 271, 970, 350), alpha);
lpcFont->draw(lstr, recti(670 - pos.Width / 2 + (showcardp - showcarddif) * 40, 270, 970, 350), alpha | 0xffffff);
lpcFont->draw(lstr, recti(651 - pos.Width / 2 + (showcardp - showcarddif) * 40, 291, 950, 370), alpha);
lpcFont->draw(lstr, recti(650 - pos.Width / 2 + (showcardp - showcarddif) * 40, 290, 950, 370), alpha | 0xffffff);
}
showcardp++;
break;
......
......@@ -7,6 +7,7 @@
#include "image_manager.h"
#include "replay_mode.h"
#include "single_mode.h"
#include "materials.h"
#include "../ocgcore/field.h"
namespace ygo {
......@@ -1488,15 +1489,15 @@ bool ClientField::OnEvent(const irr::SEvent& event) {
return false;
}
void ClientField::GetHoverField(int x, int y) {
irr::core::recti sfRect(416, 504, 900, 600);
irr::core::recti ofRect(516, 135, 805, 191);
irr::core::recti sfRect(393, 504, 875, 600);
irr::core::recti ofRect(501, 135, 790, 191);
irr::core::position2di pos(x, y);
if(sfRect.isPointInside(pos)) {
int hc = hand[0].size();
if(hc == 0)
hovered_location = 0;
else if(hc < 7) {
int left = 416 + 82 * (6 - hc) / 2;
int left = 393 + 82 * (6 - hc) / 2;
if(x < left)
hovered_location = 0;
else {
......@@ -1511,17 +1512,17 @@ void ClientField::GetHoverField(int x, int y) {
} else {
hovered_controler = 0;
hovered_location = LOCATION_HAND;
if(x >= 829)
if(x >= 804)
hovered_sequence = hc - 1;
else
hovered_sequence = (x - 416) * (hc - 1) / 413;
hovered_sequence = (x - 393) * (hc - 1) / 411;
}
} else if(ofRect.isPointInside(pos)) {
int hc = hand[1].size();
if(hc == 0)
hovered_location = 0;
else if(hc < 7) {
int left = 516 + 49 * (6 - hc) / 2;
int left = 501 + 49 * (6 - hc) / 2;
if(x < left)
hovered_location = 0;
else {
......@@ -1536,95 +1537,95 @@ void ClientField::GetHoverField(int x, int y) {
} else {
hovered_controler = 1;
hovered_location = LOCATION_HAND;
if(x >= 756)
if(x >= 748)
hovered_sequence = 0;
else
hovered_sequence = hc - 1 - (x - 516) * (hc - 1) / 247;
hovered_sequence = hc - 1 - (x - 501) * (hc - 1) / 247;
}
} else {
double screenx = x / 1024.0 * 1.25 - 0.81;
double screeny = y / 640.0 * 0.84 - 0.42;
double angle = 0.798056 - atan(screeny); //0.798056 = arctan(8.0/7.8)
double vlen = sqrt(1.0 + screeny * screeny);
double boardx = 3.95 + 7.8 * screenx / vlen / cos(angle);
double boardx = 4.2 + 7.8 * screenx / vlen / cos(angle);
double boardy = 8.0 - 7.8 * tan(angle);
hovered_location = 0;
if(boardx >= 0.2 && boardx <= 1.0) {
if(boardy >= 2.4 && boardy <= 3.6) {
if(boardx >= matManager.vFields[8].Pos.X && boardx <= matManager.vFields[9].Pos.X) {
if(boardy >= matManager.vFields[8].Pos.Y && boardy <= matManager.vFields[10].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_EXTRA;
} else if(boardy >= 1.1 && boardy <= 2.3) {
} else if(boardy >= matManager.vFields[56].Pos.Y && boardy <= matManager.vFields[58].Pos.Y) {//field
hovered_controler = 0;
hovered_location = LOCATION_SZONE;
hovered_sequence = 5;
} else if(boardy >= -1.0 && boardy <= 0.2) {
} else if(boardy >= matManager.vFields[60].Pos.Y && boardy <= matManager.vFields[62].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_SZONE;
hovered_sequence = 6;
} else if(boardy >= matManager.vFields[134].Pos.Y && boardy <= matManager.vFields[132].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_REMOVED;
} else if(boardy >= -2.3 && boardy <= -1.1) {
hovered_location = LOCATION_SZONE;
hovered_sequence = 7;
} else if(boardy >= matManager.vFields[74].Pos.Y && boardy <= matManager.vFields[72].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_GRAVE;
} else if(boardy >= -3.6 && boardy <= -2.4) {
} else if(boardy >= matManager.vFields[70].Pos.Y && boardy <= matManager.vFields[68].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_DECK;
}
} else if(boardx >= -0.7 && boardx <= 0.1) {
if(boardy >= -2.3 && boardy <= -1.1) {
} else if(boardx >= matManager.vFields[81].Pos.X && boardx <= matManager.vFields[80].Pos.X) {
if(boardy >= matManager.vFields[82].Pos.Y && boardy <= matManager.vFields[80].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_SZONE;
hovered_sequence = 7;
} else if(boardy >= 1.1 && boardy <= 2.3) {
hovered_controler = 0;
hovered_location = LOCATION_SZONE;
hovered_sequence = 6;
hovered_location = LOCATION_REMOVED;
}
} else if(boardx >= 6.9 && boardx <= 7.7) {
if(boardy >= 2.4 && boardy <= 3.6) {
} else if(boardx >= matManager.vFields[0].Pos.X && boardx <= matManager.vFields[1].Pos.X) {
if(boardy >= matManager.vFields[0].Pos.Y && boardy <= matManager.vFields[2].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_DECK;
} else if(boardy >= 1.1 && boardy <= 2.3) {
} else if(boardy >= matManager.vFields[4].Pos.Y && boardy <= matManager.vFields[6].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_GRAVE;
} else if(boardy >= -0.2 && boardy <= 1.0) {
} else if(boardy >= matManager.vFields[130].Pos.Y && boardy <= matManager.vFields[128].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_SZONE;
hovered_sequence = 6;
} else if(boardy >= matManager.vFields[64].Pos.Y && boardy <= matManager.vFields[66].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_REMOVED;
} else if(boardy >= -2.3 && boardy <= -1.1) {
hovered_location = LOCATION_SZONE;
hovered_sequence = 7;
} else if(boardy >= matManager.vFields[126].Pos.Y && boardy <= matManager.vFields[124].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_SZONE;
hovered_sequence = 5;
} else if(boardy >= -3.6 && boardy <= -2.4) {
} else if(boardy >= matManager.vFields[78].Pos.Y && boardy <= matManager.vFields[76].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_EXTRA;
}
} else if(boardx >= 7.8 && boardx <= 8.6) {
if(boardy >= -2.3 && boardy <= -1.1) {
hovered_controler = 1;
hovered_location = LOCATION_SZONE;
hovered_sequence = 6;
} else if(boardy >= 1.1 && boardy <= 2.3) {
} else if(boardx >= matManager.vFields[12].Pos.X && boardx <= matManager.vFields[13].Pos.X) {
if(boardy >= matManager.vFields[12].Pos.Y && boardy <= matManager.vFields[14].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_SZONE;
hovered_sequence = 7;
hovered_location = LOCATION_REMOVED;
}
} else if(boardx >= 1.2 && boardx <= 6.7) {
if(boardy > 1.7 && boardy <= 2.9) {
} else if(boardx >= matManager.vFields[36].Pos.X && boardx <= matManager.vFields[55].Pos.X) {
if(boardy > matManager.vFields[36].Pos.Y && boardy <= matManager.vFields[38].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_SZONE;
hovered_sequence = (boardx - 1.2) / 1.1;
if(hovered_sequence > 4)
hovered_sequence = 4;
} else if(boardy >= 0.5 && boardy <= 1.7) {
} else if(boardy >= matManager.vFields[16].Pos.Y && boardy <= matManager.vFields[35].Pos.Y) {
hovered_controler = 0;
hovered_location = LOCATION_MZONE;
hovered_sequence = (boardx - 1.2) / 1.1;
if(hovered_sequence > 4)
hovered_sequence = 4;
} else if(boardy >= -1.7 && boardy <= -0.5) {
} else if(boardy >= matManager.vFields[103].Pos.Y && boardy <= matManager.vFields[84].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_MZONE;
hovered_sequence = 4 - (int)((boardx - 1.2) / 1.1);
if(hovered_sequence < 0)
hovered_sequence = 0;
} else if(boardy >= -2.9 && boardy < -1.7) {
} else if(boardy >= matManager.vFields[123].Pos.Y && boardy < matManager.vFields[104].Pos.Y) {
hovered_controler = 1;
hovered_location = LOCATION_SZONE;
hovered_sequence = 4 - (int)((boardx - 1.2) / 1.1);
......@@ -1632,7 +1633,7 @@ void ClientField::GetHoverField(int x, int y) {
hovered_sequence = 0;
}
}
}
}
}
void ClientField::ShowMenu(int flag, int x, int y) {
if(!flag) {
......
......@@ -176,7 +176,7 @@ bool Game::Initialize() {
imgCard = env->addImage(rect<s32>(9, 9, 187, 262), wCardImg);
imgCard->setUseAlphaChannel(true);
//phase
wPhase = env->addStaticText(L"", rect<s32>(475, 310, 850, 330));
wPhase = env->addStaticText(L"", rect<s32>(455, 310, 830, 330));
wPhase->setVisible(false);
btnDP = env->addButton(rect<s32>(0, 0, 50, 20), wPhase, -1, L"\xff24\xff30");
btnDP->setEnabled(false);
......@@ -500,7 +500,7 @@ void Game::MainLoop() {
BuildProjectionMatrix(mProjection, -0.81f, 0.44f, -0.42f, 0.42f, 1.0f, 100.0f);
camera->setProjectionMatrix(mProjection);
mProjection.buildCameraLookAtMatrixLH(vector3df(3.95f, 8.0f, 7.8f), vector3df(3.95f, 0, 0), vector3df(0, 0, 1));
mProjection.buildCameraLookAtMatrixLH(vector3df(4.2f, 8.0f, 7.8f), vector3df(4.2f, 0, 0), vector3df(0, 0, 1));
camera->setViewMatrixAffector(mProjection);
smgr->setAmbientLight(SColorf(1.0f, 1.0f, 1.0f));
float atkframe = 0.1f;
......
......@@ -197,153 +197,154 @@ Materials::Materials() {
iRectangle[5] = 3;
//deck0
vFields[0] = S3DVertex(vector3df(6.9f, 2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[1] = S3DVertex(vector3df(7.7f, 2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[2] = S3DVertex(vector3df(6.9f, 3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[3] = S3DVertex(vector3df(7.7f, 3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[0] = S3DVertex(vector3df(6.9f, 2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[1] = S3DVertex(vector3df(7.7f, 2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[2] = S3DVertex(vector3df(6.9f, 3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[3] = S3DVertex(vector3df(7.7f, 3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//grave0
vFields[4] = S3DVertex(vector3df(6.9f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[5] = S3DVertex(vector3df(7.7f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[6] = S3DVertex(vector3df(6.9f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[7] = S3DVertex(vector3df(7.7f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[4] = S3DVertex(vector3df(6.9f, 0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[5] = S3DVertex(vector3df(7.7f, 0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[6] = S3DVertex(vector3df(6.9f, 1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[7] = S3DVertex(vector3df(7.7f, 1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//extra0
vFields[8] = S3DVertex(vector3df(0.2f, 2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[9] = S3DVertex(vector3df(1.0f, 2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[10] = S3DVertex(vector3df(0.2f, 3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[11] = S3DVertex(vector3df(1.0f, 3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[8] = S3DVertex(vector3df(0.2f, 2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[9] = S3DVertex(vector3df(1.0f, 2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[10] = S3DVertex(vector3df(0.2f, 3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[11] = S3DVertex(vector3df(1.0f, 3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//remove0
vFields[12] = S3DVertex(vector3df(6.9f, -0.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[13] = S3DVertex(vector3df(7.7f, -0.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[14] = S3DVertex(vector3df(6.9f, 1.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[15] = S3DVertex(vector3df(7.7f, 1.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[12] = S3DVertex(vector3df(7.9f, 0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[13] = S3DVertex(vector3df(8.7f, 0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[14] = S3DVertex(vector3df(7.9f, 1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[15] = S3DVertex(vector3df(8.7f, 1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//mzone0
vFields[16] = S3DVertex(vector3df(1.2f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[17] = S3DVertex(vector3df(2.3f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[18] = S3DVertex(vector3df(1.2f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[19] = S3DVertex(vector3df(2.3f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[20] = S3DVertex(vector3df(2.3f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[21] = S3DVertex(vector3df(3.4f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[22] = S3DVertex(vector3df(2.3f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[23] = S3DVertex(vector3df(3.4f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[24] = S3DVertex(vector3df(3.4f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[25] = S3DVertex(vector3df(4.5f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[26] = S3DVertex(vector3df(3.4f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[27] = S3DVertex(vector3df(4.5f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[28] = S3DVertex(vector3df(4.5f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[29] = S3DVertex(vector3df(5.6f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[30] = S3DVertex(vector3df(4.5f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[31] = S3DVertex(vector3df(5.6f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[32] = S3DVertex(vector3df(5.6f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[33] = S3DVertex(vector3df(6.7f, 0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[34] = S3DVertex(vector3df(5.6f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[35] = S3DVertex(vector3df(6.7f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[16] = S3DVertex(vector3df(1.2f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[17] = S3DVertex(vector3df(2.3f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[18] = S3DVertex(vector3df(1.2f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[19] = S3DVertex(vector3df(2.3f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[20] = S3DVertex(vector3df(2.3f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[21] = S3DVertex(vector3df(3.4f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[22] = S3DVertex(vector3df(2.3f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[23] = S3DVertex(vector3df(3.4f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[24] = S3DVertex(vector3df(3.4f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[25] = S3DVertex(vector3df(4.5f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[26] = S3DVertex(vector3df(3.4f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[27] = S3DVertex(vector3df(4.5f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[28] = S3DVertex(vector3df(4.5f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[29] = S3DVertex(vector3df(5.6f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[30] = S3DVertex(vector3df(4.5f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[31] = S3DVertex(vector3df(5.6f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[32] = S3DVertex(vector3df(5.6f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[33] = S3DVertex(vector3df(6.7f, 0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[34] = S3DVertex(vector3df(5.6f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[35] = S3DVertex(vector3df(6.7f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//szone0
vFields[36] = S3DVertex(vector3df(1.2f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[37] = S3DVertex(vector3df(2.3f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[38] = S3DVertex(vector3df(1.2f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[39] = S3DVertex(vector3df(2.3f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[40] = S3DVertex(vector3df(2.3f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[41] = S3DVertex(vector3df(3.4f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[42] = S3DVertex(vector3df(2.3f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[43] = S3DVertex(vector3df(3.4f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[44] = S3DVertex(vector3df(3.4f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[45] = S3DVertex(vector3df(4.5f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[46] = S3DVertex(vector3df(3.4f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[47] = S3DVertex(vector3df(4.5f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[48] = S3DVertex(vector3df(4.5f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[49] = S3DVertex(vector3df(5.6f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[50] = S3DVertex(vector3df(4.5f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[51] = S3DVertex(vector3df(5.6f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[52] = S3DVertex(vector3df(5.6f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[53] = S3DVertex(vector3df(6.7f, 1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[54] = S3DVertex(vector3df(5.6f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[55] = S3DVertex(vector3df(6.7f, 2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[56] = S3DVertex(vector3df(0.2f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[57] = S3DVertex(vector3df(1.0f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[58] = S3DVertex(vector3df(0.2f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[59] = S3DVertex(vector3df(1.0f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[60] = S3DVertex(vector3df(-0.8f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[61] = S3DVertex(vector3df(0.0f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[62] = S3DVertex(vector3df(-0.8f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[63] = S3DVertex(vector3df(0.0f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[64] = S3DVertex(vector3df(7.9f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[65] = S3DVertex(vector3df(8.7f, 1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[66] = S3DVertex(vector3df(7.9f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[67] = S3DVertex(vector3df(8.7f, 2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[36] = S3DVertex(vector3df(1.2f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[37] = S3DVertex(vector3df(2.3f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[38] = S3DVertex(vector3df(1.2f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[39] = S3DVertex(vector3df(2.3f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[40] = S3DVertex(vector3df(2.3f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[41] = S3DVertex(vector3df(3.4f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[42] = S3DVertex(vector3df(2.3f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[43] = S3DVertex(vector3df(3.4f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[44] = S3DVertex(vector3df(3.4f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[45] = S3DVertex(vector3df(4.5f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[46] = S3DVertex(vector3df(3.4f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[47] = S3DVertex(vector3df(4.5f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[48] = S3DVertex(vector3df(4.5f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[49] = S3DVertex(vector3df(5.6f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[50] = S3DVertex(vector3df(4.5f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[51] = S3DVertex(vector3df(5.6f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[52] = S3DVertex(vector3df(5.6f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[53] = S3DVertex(vector3df(6.7f, 2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[54] = S3DVertex(vector3df(5.6f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[55] = S3DVertex(vector3df(6.7f, 3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[56] = S3DVertex(vector3df(0.2f, 0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));//field
vFields[57] = S3DVertex(vector3df(1.0f, 0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[58] = S3DVertex(vector3df(0.2f, 1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[59] = S3DVertex(vector3df(1.0f, 1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[60] = S3DVertex(vector3df(0.2f, 1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));//LScale
vFields[61] = S3DVertex(vector3df(1.0f, 1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[62] = S3DVertex(vector3df(0.2f, 2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[63] = S3DVertex(vector3df(1.0f, 2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[64] = S3DVertex(vector3df(6.9f, 1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));//RScale
vFields[65] = S3DVertex(vector3df(7.7f, 1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[66] = S3DVertex(vector3df(6.9f, 2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[67] = S3DVertex(vector3df(7.7f, 2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//deck1
vFields[68] = S3DVertex(vector3df(1.0f, -2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[69] = S3DVertex(vector3df(0.2f, -2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[70] = S3DVertex(vector3df(1.0f, -3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[71] = S3DVertex(vector3df(0.2f, -3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[68] = S3DVertex(vector3df(1.0f, -2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[69] = S3DVertex(vector3df(0.2f, -2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[70] = S3DVertex(vector3df(1.0f, -3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[71] = S3DVertex(vector3df(0.2f, -3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//grave1
vFields[72] = S3DVertex(vector3df(1.0f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[73] = S3DVertex(vector3df(0.2f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[74] = S3DVertex(vector3df(1.0f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[75] = S3DVertex(vector3df(0.2f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[72] = S3DVertex(vector3df(1.0f, -0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[73] = S3DVertex(vector3df(0.2f, -0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[74] = S3DVertex(vector3df(1.0f, -1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[75] = S3DVertex(vector3df(0.2f, -1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//extra1
vFields[76] = S3DVertex(vector3df(7.7f, -2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[77] = S3DVertex(vector3df(6.9f, -2.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[78] = S3DVertex(vector3df(7.7f, -3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[79] = S3DVertex(vector3df(6.9f, -3.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[76] = S3DVertex(vector3df(7.7f, -2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[77] = S3DVertex(vector3df(6.9f, -2.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[78] = S3DVertex(vector3df(7.7f, -3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[79] = S3DVertex(vector3df(6.9f, -3.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//remove1
vFields[80] = S3DVertex(vector3df(1.0f, 0.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[81] = S3DVertex(vector3df(0.2f, 0.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[82] = S3DVertex(vector3df(1.0f, -1.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[83] = S3DVertex(vector3df(0.2f, -1.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[80] = S3DVertex(vector3df(0.0f, -0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[81] = S3DVertex(vector3df(-0.8f, -0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[82] = S3DVertex(vector3df(0.0f, -1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[83] = S3DVertex(vector3df(-0.8f, -1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//mzone1
vFields[84] = S3DVertex(vector3df(6.7f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[85] = S3DVertex(vector3df(5.6f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[86] = S3DVertex(vector3df(6.7f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[87] = S3DVertex(vector3df(5.6f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[88] = S3DVertex(vector3df(5.6f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[89] = S3DVertex(vector3df(4.5f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[90] = S3DVertex(vector3df(5.6f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[91] = S3DVertex(vector3df(4.5f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[92] = S3DVertex(vector3df(4.5f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[93] = S3DVertex(vector3df(3.4f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[94] = S3DVertex(vector3df(4.5f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[95] = S3DVertex(vector3df(3.4f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[96] = S3DVertex(vector3df(3.4f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[97] = S3DVertex(vector3df(2.3f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[98] = S3DVertex(vector3df(3.4f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[99] = S3DVertex(vector3df(2.3f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[100] = S3DVertex(vector3df(2.3f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[101] = S3DVertex(vector3df(1.2f, -0.5f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[102] = S3DVertex(vector3df(2.3f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[103] = S3DVertex(vector3df(1.2f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[84] = S3DVertex(vector3df(6.7f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[85] = S3DVertex(vector3df(5.6f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[86] = S3DVertex(vector3df(6.7f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[87] = S3DVertex(vector3df(5.6f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[88] = S3DVertex(vector3df(5.6f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[89] = S3DVertex(vector3df(4.5f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[90] = S3DVertex(vector3df(5.6f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[91] = S3DVertex(vector3df(4.5f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[92] = S3DVertex(vector3df(4.5f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[93] = S3DVertex(vector3df(3.4f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[94] = S3DVertex(vector3df(4.5f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[95] = S3DVertex(vector3df(3.4f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[96] = S3DVertex(vector3df(3.4f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[97] = S3DVertex(vector3df(2.3f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[98] = S3DVertex(vector3df(3.4f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[99] = S3DVertex(vector3df(2.3f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[100] = S3DVertex(vector3df(2.3f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[101] = S3DVertex(vector3df(1.2f, -0.8f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[102] = S3DVertex(vector3df(2.3f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[103] = S3DVertex(vector3df(1.2f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
//szone1
vFields[104] = S3DVertex(vector3df(6.7f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[105] = S3DVertex(vector3df(5.6f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[106] = S3DVertex(vector3df(6.7f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[107] = S3DVertex(vector3df(5.6f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[108] = S3DVertex(vector3df(5.6f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[109] = S3DVertex(vector3df(4.5f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[110] = S3DVertex(vector3df(5.6f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[111] = S3DVertex(vector3df(4.5f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[112] = S3DVertex(vector3df(4.5f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[113] = S3DVertex(vector3df(3.4f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[114] = S3DVertex(vector3df(4.5f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[115] = S3DVertex(vector3df(3.4f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[116] = S3DVertex(vector3df(3.4f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[117] = S3DVertex(vector3df(2.3f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[118] = S3DVertex(vector3df(3.4f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[119] = S3DVertex(vector3df(2.3f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[120] = S3DVertex(vector3df(2.3f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[121] = S3DVertex(vector3df(1.2f, -1.7f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[122] = S3DVertex(vector3df(2.3f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[123] = S3DVertex(vector3df(1.2f, -2.9f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[124] = S3DVertex(vector3df(7.7f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[125] = S3DVertex(vector3df(6.9f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[126] = S3DVertex(vector3df(7.7f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[127] = S3DVertex(vector3df(6.9f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[128] = S3DVertex(vector3df(8.7f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[129] = S3DVertex(vector3df(7.9f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[130] = S3DVertex(vector3df(8.7f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[131] = S3DVertex(vector3df(7.9f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[132] = S3DVertex(vector3df(0.0f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[133] = S3DVertex(vector3df(-0.8f, -1.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[134] = S3DVertex(vector3df(0.0f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[135] = S3DVertex(vector3df(-0.8f, -2.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[104] = S3DVertex(vector3df(6.7f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[105] = S3DVertex(vector3df(5.6f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[106] = S3DVertex(vector3df(6.7f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[107] = S3DVertex(vector3df(5.6f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[108] = S3DVertex(vector3df(5.6f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[109] = S3DVertex(vector3df(4.5f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[110] = S3DVertex(vector3df(5.6f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[111] = S3DVertex(vector3df(4.5f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[112] = S3DVertex(vector3df(4.5f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[113] = S3DVertex(vector3df(3.4f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[114] = S3DVertex(vector3df(4.5f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[115] = S3DVertex(vector3df(3.4f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[116] = S3DVertex(vector3df(3.4f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[117] = S3DVertex(vector3df(2.3f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[118] = S3DVertex(vector3df(3.4f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[119] = S3DVertex(vector3df(2.3f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[120] = S3DVertex(vector3df(2.3f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[121] = S3DVertex(vector3df(1.2f, -2.0f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[122] = S3DVertex(vector3df(2.3f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[123] = S3DVertex(vector3df(1.2f, -3.2f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[124] = S3DVertex(vector3df(7.7f, -0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));//field
vFields[125] = S3DVertex(vector3df(6.9f, -0.1f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[126] = S3DVertex(vector3df(7.7f, -1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[127] = S3DVertex(vector3df(6.9f, -1.3f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[128] = S3DVertex(vector3df(7.7f, -1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));//lscale
vFields[129] = S3DVertex(vector3df(6.9f, -1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[130] = S3DVertex(vector3df(7.7f, -2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[131] = S3DVertex(vector3df(6.9f, -2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[132] = S3DVertex(vector3df(1.0f, -1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));//rscale
vFields[133] = S3DVertex(vector3df(0.2f, -1.4f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[134] = S3DVertex(vector3df(1.0f, -2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
vFields[135] = S3DVertex(vector3df(0.2f, -2.6f, 0.0f), vector3df(0, 0, 1), SColor(255, 255, 255, 255), vector2df(0, 0));
for(int i = 0; i < 40; ++i)
iArrow[i] = i;
......
......@@ -273,7 +273,7 @@ uint32 card::get_type() {
return assume_value;
if(!(current.location & 0x1e))
return data.type;
if((current.location == LOCATION_SZONE) && (current.position >= 6))
if((current.location == LOCATION_SZONE) && (current.sequence >= 6))
return TYPE_PENDULUM + TYPE_SPELL;
if (temp.type != 0xffffffff)
return temp.type;
......@@ -767,14 +767,14 @@ void card::xyz_overlay(card_set* materials) {
xyz_add(pcard, &des);
} else {
field::card_vector cv;
for(auto cit : *materials)
cv.push_back(cit);
for(auto cit = materials->begin(); cit != materials->end(); ++cit)
cv.push_back(*cit);
std::sort(cv.begin(), cv.end(), card::card_operation_sort);
for(auto pcard : cv) {
pcard->reset(RESET_LEAVE + RESET_OVERLAY, RESET_EVENT);
if(pcard->unique_code)
pduel->game_field->remove_unique_card(pcard);
xyz_add(pcard, &des);
for(auto cvit = cv.begin(); cvit != cv.end(); ++cvit) {
(*cvit)->reset(RESET_LEAVE + RESET_OVERLAY, RESET_EVENT);
if((*cvit)->unique_code)
pduel->game_field->remove_unique_card(*cvit);
xyz_add(*cvit, &des);
}
}
if(des.size())
......
......@@ -105,8 +105,9 @@ void duel::release_script_group() {
sgroups.clear();
}
void duel::restore_assumes() {
for(auto pcard : assumes)
pcard->assume_type = 0;
std::set<card*>::iterator sit;
for(sit = assumes.begin(); sit != assumes.end(); ++sit)
(*sit)->assume_type = 0;
assumes.clear();
}
void duel::write_buffer32(uint32 value) {
......
......@@ -3325,7 +3325,10 @@ int32 field::move_to_field(uint16 step, card * target, uint32 enable, uint32 ret
target->overlay_target->xyz_remove(target);
move_card(playerid, target, location, target->temp.sequence);
target->current.position = returns.ivalue[0];
target->set_status(STATUS_LEAVE_CONFIRMED | STATUS_ACTIVATED, FALSE);
if((target->previous.location & LOCATION_ONFIELD) && (location & LOCATION_ONFIELD))
target->set_status(STATUS_LEAVE_CONFIRMED, FALSE);
else
target->set_status(STATUS_LEAVE_CONFIRMED | STATUS_ACTIVATED, FALSE);
pduel->write_buffer32(target->get_info_location());
pduel->write_buffer32(target->current.reason);
if((target->current.location != LOCATION_MZONE)) {
......
--ラインモンスター スピア・ホイール
function c32476434.initial_effect(c)
--lv
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(32476434,0))
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1)
e1:SetTarget(c32476434.target)
e1:SetOperation(c32476434.operation)
c:RegisterEffect(e1)
end
function c32476434.filter(c)
return c:IsFaceup() and c:GetLevel()==3 and c:IsRace(RACE_BEASTWARRIOR)
end
function c32476434.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c32476434.filter(chkc) and chkc~=e:GetHandler() end
if chk==0 then return Duel.IsExistingTarget(c32476434.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c32476434.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
end
function c32476434.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if c:IsRelateToEffect(e) and c:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsFaceup() then
local lv=c:GetLevel()+tc:GetLevel()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CHANGE_LEVEL)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetValue(lv)
e1:SetReset(RESET_EVENT+0x1fe0000)
c:RegisterEffect(e1)
local e2=e1:Clone()
tc:RegisterEffect(e2)
end
end
......@@ -11,7 +11,7 @@ function c50323155.initial_effect(c)
c:RegisterEffect(e1)
end
function c50323155.condition(e,tp,eg,ep,ev,re,r,rp)
return tp~=ep and Duel.GetCurrentChain()==0
return tp~=ep and eg:GetCount()==1 and Duel.GetCurrentChain()==0
end
function c50323155.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
......
--天輪の葬送士
function c69865139.initial_effect(c)
--spsummon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(69865139,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetTarget(c69865139.target)
e1:SetOperation(c69865139.operation)
c:RegisterEffect(e1)
end
function c69865139.filter(c,e,tp)
return c:GetLevel()==1 and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c69865139.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c69865139.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c69865139.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c69865139.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function c69865139.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
......@@ -21,7 +21,7 @@ function c71564252.initial_effect(c)
c:RegisterEffect(e2)
end
function c71564252.condition(e,tp,eg,ep,ev,re,r,rp)
return tp~=ep and Duel.GetCurrentChain()==0
return tp~=ep and eg:GetCount()==1 and Duel.GetCurrentChain()==0
end
function c71564252.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
......
......@@ -34,11 +34,11 @@ function c91078716.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c91078716.target1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_DISABLE_SUMMON,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DISABLE_SUMMON,eg,eg:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,eg:GetCount(),0,0)
end
function c91078716.activate1(e,tp,eg,ep,ev,re,r,rp)
Duel.NegateSummon(eg:GetFirst())
Duel.NegateSummon(eg)
Duel.Destroy(eg,REASON_EFFECT)
end
function c91078716.condition2(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -27,10 +27,10 @@ function c98069388.cost(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c98069388.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_DISABLE_SUMMON,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DISABLE_SUMMON,eg,eg:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,eg,eg:GetCount(),0,0)
end
function c98069388.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.NegateSummon(eg:GetFirst())
Duel.NegateSummon(eg)
Duel.Destroy(eg,REASON_EFFECT)
end
textures/field2.png

1.86 KB | W: | H:

textures/field2.png

3.99 KB | W: | H:

textures/field2.png
textures/field2.png
textures/field2.png
textures/field2.png
  • 2-up
  • Swipe
  • Onion skin
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment