-
Notifications
You must be signed in to change notification settings - Fork 34
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add Sabine unit (partial) and Salacious Crumb (#14)
Some more units to validate various engine mechanics. Added Sabine unit (partially) which has a passive ongoing effect, and added the Crumb unit which has a when-played triggered event. Both systems now working, with some outstanding caveats or cleanup tasks that will be addressed soon.
- Loading branch information
1 parent
44f0462
commit a856930
Showing
71 changed files
with
1,610 additions
and
1,334 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
{ | ||
"files": [ | ||
{ | ||
"path": "server/game/core/Game.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 686, | ||
"column": 8, | ||
"label": "Game setup and start" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "server/game/core/event/EventWindow.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 25, | ||
"column": 26, | ||
"label": "Event resolution steps" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "server/game/core/gameSteps/abilityWindow/ForcedTriggeredAbilityWindow.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 40, | ||
"column": 7, | ||
"label": "Simultaneous reaction resolver" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "server/game/core/gameSteps/ActionWindow.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 23, | ||
"column": 14, | ||
"label": "Card click entrypoint" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "server/game/core/card/Card.ts", | ||
"bookmarks": [ | ||
{ | ||
"line": 298, | ||
"column": 64, | ||
"label": "EVENT CARDS: play action filter #1" | ||
}, | ||
{ | ||
"line": 610, | ||
"column": 151, | ||
"label": "EVENT CARDS: bluff window reaction re-registration" | ||
}, | ||
{ | ||
"line": 636, | ||
"column": 43, | ||
"label": "UPGRADES: effect management" | ||
}, | ||
{ | ||
"line": 1013, | ||
"column": 43, | ||
"label": "EVENT CARDS: play action filter #2" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "server/game/core/ability/CardAbility.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 33, | ||
"column": 37, | ||
"label": "EVENT CARDS: manual cost handling for play" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "server/game/core/Player.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 636, | ||
"column": 105, | ||
"label": "EVENT CARDS: register for bluff window" | ||
}, | ||
{ | ||
"line": 1180, | ||
"column": 42, | ||
"label": "EVENT CARDS: being played zone rules" | ||
} | ||
] | ||
}, | ||
{ | ||
"path": "legacy_jigoku/server/game/cards/08-MotC/ChukanNobue.js", | ||
"bookmarks": [ | ||
{ | ||
"line": 3, | ||
"column": 15, | ||
"label": "L5R persistent effect example" | ||
} | ||
] | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
27 changes: 27 additions & 0 deletions
27
server/game/cardImplementations/01_SOR/SabineWrenExplosivesArtist.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
import AbilityDsl from '../../AbilityDsl'; | ||
import Card from '../../core/card/Card'; | ||
import { countUniqueAspects } from '../../core/utils/Helpers'; | ||
|
||
export default class SabineWrenExplosivesArtist extends Card { | ||
protected override getImplementationId() { | ||
return { | ||
id: '3646264648', | ||
internalName: 'sabine-wren#explosives-artist', | ||
}; | ||
} | ||
|
||
override setupCardAbilities() { | ||
this.constantAbility({ | ||
// UP NEXT: helper fn on Card to get all friendly units in play | ||
condition: () => countUniqueAspects(this.controller.getUnitsInPlay((card) => card !== this)) >= 3, | ||
|
||
// UP NEXT: convert this to a named effect | ||
effect: AbilityDsl.ongoingEffects.cardCannot('beAttacked') | ||
}); | ||
} | ||
} | ||
|
||
// sabine is only partially implemented, still need to handle: | ||
// - the effect override if she gains sentinel | ||
// - her active ability | ||
SabineWrenExplosivesArtist.implemented = false; |
Oops, something went wrong.