Merge pull request #881 from poixen/right_click_cast
Cast to target from hand
This commit is contained in:
commit
1cf7c71631
1 changed files with 76 additions and 69 deletions
|
@ -6,6 +6,7 @@
|
||||||
#include "carditem.h"
|
#include "carditem.h"
|
||||||
#include "cardzone.h"
|
#include "cardzone.h"
|
||||||
#include "player.h"
|
#include "player.h"
|
||||||
|
#include "settingscache.h"
|
||||||
#include <QPainter>
|
#include <QPainter>
|
||||||
#include <QGraphicsSceneMouseEvent>
|
#include <QGraphicsSceneMouseEvent>
|
||||||
#include <QGraphicsScene>
|
#include <QGraphicsScene>
|
||||||
|
@ -214,6 +215,8 @@ void ArrowDragItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
|
||||||
cmd.set_start_card_id(startCard->getId());
|
cmd.set_start_card_id(startCard->getId());
|
||||||
|
|
||||||
if (targetCard) {
|
if (targetCard) {
|
||||||
|
CardZone *startZone = startCard->getZone();
|
||||||
|
|
||||||
CardZone *targetZone = targetCard->getZone();
|
CardZone *targetZone = targetCard->getZone();
|
||||||
cmd.set_target_player_id(targetZone->getPlayer()->getId());
|
cmd.set_target_player_id(targetZone->getPlayer()->getId());
|
||||||
cmd.set_target_zone(targetZone->getName().toStdString());
|
cmd.set_target_zone(targetZone->getName().toStdString());
|
||||||
|
@ -222,6 +225,10 @@ void ArrowDragItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
|
||||||
PlayerTarget *targetPlayer = qgraphicsitem_cast<PlayerTarget *>(targetItem);
|
PlayerTarget *targetPlayer = qgraphicsitem_cast<PlayerTarget *>(targetItem);
|
||||||
cmd.set_target_player_id(targetPlayer->getOwner()->getId());
|
cmd.set_target_player_id(targetPlayer->getOwner()->getId());
|
||||||
}
|
}
|
||||||
|
if (startZone->getName().compare("hand") == 0) {
|
||||||
|
startCard->playCard(false);
|
||||||
|
cmd.set_start_zone(settingsCache->getPlayToStack() ? "stack" :"table");
|
||||||
|
}
|
||||||
player->sendGameCommand(cmd);
|
player->sendGameCommand(cmd);
|
||||||
}
|
}
|
||||||
delArrow();
|
delArrow();
|
||||||
|
|
Loading…
Reference in a new issue