forked from External/mage
* Fixed a problem that Emblems created by permanents where its owner left the game caused errors in clients. Some handling cganges of emblems.
This commit is contained in:
parent
81caed134f
commit
8075ea2e50
56 changed files with 894 additions and 850 deletions
|
|
@ -1426,19 +1426,21 @@ public abstract class GameImpl implements Game, Serializable {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void addEmblem(Emblem emblem, Ability source) {
|
||||
addEmblem(emblem, source, null);
|
||||
public void addEmblem(Emblem emblem, MageObject sourceObject, Ability source) {
|
||||
addEmblem(emblem, sourceObject, source.getControllerId());
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param emblem
|
||||
* @param sourceObject
|
||||
* @param toPlayerId controller and owner of the emblem
|
||||
*/
|
||||
@Override
|
||||
public void addEmblem(Emblem emblem, Ability source, UUID toPlayerId) {
|
||||
public void addEmblem(Emblem emblem, MageObject sourceObject, UUID toPlayerId) {
|
||||
Emblem newEmblem = emblem.copy();
|
||||
newEmblem.setSourceId(source.getSourceId());
|
||||
if (toPlayerId == null) {
|
||||
newEmblem.setControllerId(source.getControllerId());
|
||||
} else {
|
||||
newEmblem.setControllerId(toPlayerId);
|
||||
}
|
||||
newEmblem.setSourceObject(sourceObject);
|
||||
newEmblem.setControllerId(toPlayerId);
|
||||
newEmblem.assignNewId();
|
||||
newEmblem.getAbilities().newId();
|
||||
for (Ability ability : newEmblem.getAbilities()) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue