@gamepark/mythologies 0.8.4 → 0.8.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { CustomMove, ItemMove, MaterialMove, PlayerTurnRule } from '@gamepark/rules-api';
|
|
2
|
+
import { PendingEffect } from '../material/entity/Effect';
|
|
2
3
|
import { RuleId } from './RuleId';
|
|
3
4
|
export declare class PlaceCardsRule extends PlayerTurnRule {
|
|
4
5
|
isInvoke: boolean;
|
|
5
6
|
getPlayerMoves(): MaterialMove<number, number, number, number>[];
|
|
6
|
-
get infiniteEffects():
|
|
7
|
+
get infiniteEffects(): PendingEffect<import("../material/entity/Effect").TriggerEvent>[];
|
|
7
8
|
isOncePerTurnAvailable(cardIndex: number): boolean;
|
|
8
9
|
get tokens(): import("@gamepark/rules-api").Material<number, number, number>;
|
|
9
10
|
beforeItemMove(move: ItemMove): MaterialMove<number, number, number, number>[];
|
|
@@ -169,7 +169,10 @@ var PlaceCardsRule = (function (_super) {
|
|
|
169
169
|
}
|
|
170
170
|
else if (move.type === CustomMoveType_1.CustomMoveType.PlayEffect) {
|
|
171
171
|
this.memorize(Memory_1.Memory.PendingRule, this.game.rule);
|
|
172
|
-
return new ResolveEffectsRule_1.ResolveEffectsRule(this.game).
|
|
172
|
+
return new ResolveEffectsRule_1.ResolveEffectsRule(this.game).onPlayEffect(move.data);
|
|
173
|
+
}
|
|
174
|
+
else if (move.type === CustomMoveType_1.CustomMoveType.EndEffect) {
|
|
175
|
+
return new ResolveEffectsRule_1.ResolveEffectsRule(this.game).onEndEffect();
|
|
173
176
|
}
|
|
174
177
|
return [];
|
|
175
178
|
};
|
|
@@ -6,6 +6,7 @@ export declare class ResolveEffectsRule extends PlayerTurnRule {
|
|
|
6
6
|
onRuleStart(_move: RuleMove, previousRule: RuleStep): CustomMove<number>[];
|
|
7
7
|
getPlayerMoves(): CustomMove<number>[];
|
|
8
8
|
onCustomMove(move: CustomMove): MaterialMove<number, number, number, number>[];
|
|
9
|
+
onPlayEffect(pendingEffect: PendingEffect): MaterialMove<number, number, number, number>[];
|
|
9
10
|
playEffect(pendingEffect: PendingEffect): MaterialMove<number, number, number, number>[];
|
|
10
11
|
onEndEffect(): MaterialMove<number, number, number, number>[];
|
|
11
12
|
}
|
|
@@ -83,21 +83,23 @@ var ResolveEffectsRule = (function (_super) {
|
|
|
83
83
|
};
|
|
84
84
|
ResolveEffectsRule.prototype.onCustomMove = function (move) {
|
|
85
85
|
if (move.type === CustomMoveType_1.CustomMoveType.PlayEffect) {
|
|
86
|
-
|
|
87
|
-
var pendingEffects = this.remind(Memory_1.Memory.PendingEffects);
|
|
88
|
-
if (pendingEffects.length) {
|
|
89
|
-
pendingEffects[0] = pendingEffects[0].filter(function (effect) { return !(0, lodash_1.isEqual)(effect, pendingEffect_1); });
|
|
90
|
-
if (pendingEffects[0].length === 0) {
|
|
91
|
-
pendingEffects.splice(0, 1);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return this.playEffect(pendingEffect_1);
|
|
86
|
+
return this.onPlayEffect(move.data);
|
|
95
87
|
}
|
|
96
88
|
else if (move.type === CustomMoveType_1.CustomMoveType.EndEffect) {
|
|
97
89
|
return this.onEndEffect();
|
|
98
90
|
}
|
|
99
91
|
return [];
|
|
100
92
|
};
|
|
93
|
+
ResolveEffectsRule.prototype.onPlayEffect = function (pendingEffect) {
|
|
94
|
+
var pendingEffects = this.remind(Memory_1.Memory.PendingEffects);
|
|
95
|
+
if (pendingEffects.length) {
|
|
96
|
+
pendingEffects[0] = pendingEffects[0].filter(function (effect) { return !(0, lodash_1.isEqual)(effect, pendingEffect); });
|
|
97
|
+
if (pendingEffects[0].length === 0) {
|
|
98
|
+
pendingEffects.splice(0, 1);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return this.playEffect(pendingEffect);
|
|
102
|
+
};
|
|
101
103
|
ResolveEffectsRule.prototype.playEffect = function (pendingEffect) {
|
|
102
104
|
this.memorize(Memory_1.Memory.OngoingEffect, pendingEffect);
|
|
103
105
|
var card = this.material(MaterialType_1.MaterialType.EntityCard).getItem(pendingEffect.cardIndex);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gamepark/mythologies",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.5",
|
|
4
4
|
"description": "The rules of Mythologies adapted for Game Park",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -29,5 +29,5 @@
|
|
|
29
29
|
"i18next": "^22.0.3",
|
|
30
30
|
"lodash": "^4.17.21"
|
|
31
31
|
},
|
|
32
|
-
"gitHead": "
|
|
32
|
+
"gitHead": "35ee3b29d2159234737292ee4e3eb42e884e3a38"
|
|
33
33
|
}
|