Commit 3eb6e210 authored by mercury233's avatar mercury233

Merge branch 'master' of https://github.com/Fluorohydride/ygopro into link

parents eeec82d4 b5bae3aa
......@@ -3,7 +3,7 @@ A script engine for "yu-gi-oh!" and sample gui
[中文说明](https://github.com/Fluorohydride/ygopro/wiki/%E4%B8%AD%E6%96%87%E8%AF%B4%E6%98%8E)
###Keys:
### Keys:
* ESC: Minimize the window.
* A: Holding down this button will let the system stop at every timing.
* S: Holding down this button will let the system skip every timing.
......@@ -11,25 +11,25 @@ A script engine for "yu-gi-oh!" and sample gui
* F1~F4: Show the cards in your grave, banished zone, extra deck, xyz materials.
* F5~F8: Show the cards in your opponent's grave, banished zone, extra deck, xyz materials.
###Color in card list:
####Background:
### Color in card list:
#### Background:
* White = your card, Grey = your opponent's card
####Text:
#### Text:
Cards in deck, extra deck and banished zone:
* Black = face-up, Blue = face-down
Xyz materials:
* Black = default, Blue = the owner of the xyz material is different from its controller
###Sequence:
### Sequence:
* Monster Zone: 1~5, starting from the left hand side.
* Spell & Trap Zone: 1~5, starting from the left hand side.
* Field Zone: 6
* Pendulum Zone: 7~8, starting from the left hand side.
* The others: 1~n, starting from the bottom.
###Deck edit page:
### Deck edit page:
* All numeric textboxs: They support >, =, <, >=, <= signs.
* Card name: Search card names and texts by default, $foo will only search foo in card names, and @foo will search cards of "foo" archetype(due to translation, card name contains "foo" does not mean that card is "foo" card).
......
......@@ -342,14 +342,20 @@ void Game::DrawMisc() {
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
if(dField.pzone_act[0]) {
im.setTranslation(vector3df((matManager.vFieldSzone[0][6][0].Pos.X + matManager.vFieldSzone[0][6][1].Pos.X) / 2,
(matManager.vFieldSzone[0][6][0].Pos.Y + matManager.vFieldSzone[0][6][2].Pos.Y) / 2, 0.03f));
int seq = 0;
if(dField.szone[0][6] && dField.szone[0][6]->lscale)
seq = 6;
im.setTranslation(vector3df((matManager.vFieldSzone[0][seq][0].Pos.X + matManager.vFieldSzone[0][seq][1].Pos.X) / 2,
(matManager.vFieldSzone[0][seq][0].Pos.Y + matManager.vFieldSzone[0][seq][2].Pos.Y) / 2, 0.03f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
if(dField.pzone_act[1]) {
im.setTranslation(vector3df((matManager.vFieldSzone[0][7][0].Pos.X + matManager.vFieldSzone[0][7][1].Pos.X) / 2,
(matManager.vFieldSzone[0][7][0].Pos.Y + matManager.vFieldSzone[0][7][2].Pos.Y) / 2, 0.03f));
int seq = 0;
if(dField.szone[1][6] && dField.szone[1][6]->lscale)
seq = 6;
im.setTranslation(vector3df((matManager.vFieldSzone[1][seq][0].Pos.X + matManager.vFieldSzone[1][seq][1].Pos.X) / 2,
(matManager.vFieldSzone[1][seq][0].Pos.Y + matManager.vFieldSzone[1][seq][2].Pos.Y) / 2, 0.03f));
driver->setTransform(irr::video::ETS_WORLD, im);
driver->drawVertexPrimitiveList(matManager.vActivate, 4, matManager.iRectangle, 2);
}
......
......@@ -1013,7 +1013,7 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
mainGame->dField.remove_act = true;
else if (pcard->location == LOCATION_EXTRA)
mainGame->dField.extra_act = true;
else if (pcard->location == LOCATION_SZONE && pcard->sequence == 6)
else if (pcard->location == LOCATION_SZONE && (pcard->sequence == 0 || pcard->sequence == 6) && pcard->lscale)
mainGame->dField.pzone_act[pcard->controler] = true;
}
mainGame->dField.reposable_cards.clear();
......@@ -1289,9 +1289,14 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
mainGame->dField.selected_field = 0;
unsigned char respbuf[64];
int pzone = 0;
if (mainGame->dInfo.curMsg == MSG_SELECT_PLACE)
mainGame->stHintMsg->setText(dataManager.GetSysString(569));
else
if (mainGame->dInfo.curMsg == MSG_SELECT_PLACE) {
if (select_hint) {
myswprintf(textBuffer, dataManager.GetSysString(569), dataManager.GetName(select_hint));
} else
myswprintf(textBuffer, dataManager.GetSysString(560));
select_hint = 0;
mainGame->stHintMsg->setText(textBuffer);
} else
mainGame->stHintMsg->setText(dataManager.GetSysString(570));
mainGame->stHintMsg->setVisible(true);
if (mainGame->dInfo.curMsg == MSG_SELECT_PLACE && mainGame->chkAutoPos->isChecked()) {
......
......@@ -1769,7 +1769,7 @@ bool ClientField::OnEvent(const irr::SEvent& event) {
myswprintf(formatBuffer, L"\n(%ls)", dataManager.GetName(mcard->alias));
str.append(formatBuffer);
}
if(mcard->location == LOCATION_SZONE && (mcard->sequence == 6 || mcard->sequence == 7)) {
if(mcard->location == LOCATION_SZONE && mcard->lscale) {
myswprintf(formatBuffer, L"\n%d/%d", mcard->lscale, mcard->rscale);
str.append(formatBuffer);
}
......
......@@ -23,7 +23,7 @@ Materials::Materials() {
SetS3DVertex(vField, -1.0f, -4.0f, 9.0f, 4.0f, 0, 1, 0, 0, 1, 1);
SetS3DVertex(vFieldSpell, 1.2f, -3.2f, 6.7f, 3.2f, 0, 1, 0, 0, 1, 1);
SetS3DVertex(vFieldSpell1, 1.2f, 0.8f, 6.7f, 3.2f, 0, 1, 0, 0.2f, 1, 0.63636f);
SetS3DVertex(vFieldSpell2, 1.2f, -3.2f, 6.7f, -0.8f, 0, 1, 0, 0.63636f, 1, 0.2f);
SetS3DVertex(vFieldSpell2, 1.2f, -3.2f, 6.7f, -0.8f, 0, 1, 1, 0.63636f, 0, 0.2f);
/*
//background grids
......
Subproject commit ccf0e0902d9e05c533268f8980bcabb3dc62607d
Subproject commit 48300a55945a005f32d4e6cd4bcab271a5ff33f6
Subproject commit 9efd5a6eb49bce77a6b62251a0cf431a69a5ca81
Subproject commit d8436e71a911d62424fab83a06380ae06b8fca9a
......@@ -114,7 +114,7 @@
!system 566 请选择要发动效果的卡
!system 567 请宣言一个等级
!system 568 请选择要处理效果的卡
!system 569 请选择卡片的位置
!system 569 请选择[%ls]的位置
!system 570 请选择要变成不能使用的卡片区域
!system 1000 卡组
!system 1001 手卡
......
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