-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
27 changed files
with
1,487 additions
and
38 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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
{ | ||
"payload": "[{\"type\":\"SET_RANK\",\"payload\":{\"category\":\"attributes\",\"trait\":\"physical\",\"dotsFromRank\":7}},{\"type\":\"SET_RANK\",\"payload\":{\"category\":\"attributes\",\"trait\":\"social\",\"dotsFromRank\":5}},{\"type\":\"SET_RANK\",\"payload\":{\"category\":\"attributes\",\"trait\":\"mental\",\"dotsFromRank\":3}},{\"type\":\"SET_FOCUS\",\"payload\":{\"attribute\":\"physical\",\"focus\":\"Strength\"}},{\"type\":\"SET_FOCUS\",\"payload\":{\"attribute\":\"social\",\"focus\":\"Manipulation\"}},{\"type\":\"SET_FOCUS\",\"payload\":{\"attribute\":\"mental\",\"focus\":\"Intelligence\"}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"performance\",\"startingDots\":4}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"performance2\",\"startingDots\":3}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"performance3\",\"startingDots\":3}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"science\",\"startingDots\":2}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"science2\",\"startingDots\":2}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"science3\",\"startingDots\":2}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"subterfuge\",\"startingDots\":1}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"academics\",\"startingDots\":1}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"animalKen\",\"startingDots\":1}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"skills\",\"trait\":\"crafts\",\"startingDots\":1}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"skills\",\"trait\":\"crafts2\"}},{\"type\":\"ADD_MERIT\",\"payload\":{\"name\":\"Skill Aptitude\",\"points\":2}},{\"type\":\"ADD_MERIT\",\"payload\":{\"name\":\"Skill Aptitude\",\"points\":2}},{\"type\":\"ADD_MERIT\",\"payload\":{\"name\":\"Emissary to the Camarilla\",\"points\":1}},{\"type\":\"ADD_FLAW\",\"payload\":{\"name\":\"Cannot Cross Running Water\",\"points\":2}},{\"type\":\"ADD_FLAW\",\"payload\":{\"name\":\"Beacon of the Unholy\",\"points\":3}},{\"type\":\"ADD_FLAW\",\"payload\":{\"name\":\"Sectarian\",\"points\":2}},{\"type\":\"REMOVE_MERIT\",\"payload\":{\"name\":\"Skill Aptitude\"}},{\"type\":\"REMOVE_MERIT\",\"payload\":{\"name\":\"Skill Aptitude\"}},{\"type\":\"ADD_MERIT\",\"payload\":{\"name\":\"Expanded Consciousness\",\"points\":1}},{\"type\":\"UPDATE_MORALITY\",\"payload\":{\"path\":\"Path of Power & the Inner Voice\",\"meritPoints\":3}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"disciplines.inClan\",\"trait\":\"Auspex\",\"startingDots\":2}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"disciplines.inClan\",\"trait\":\"Dominate\",\"startingDots\":1}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"disciplines.inClan\",\"trait\":\"Obfuscate\",\"startingDots\":1}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"disciplines.outOfClan\",\"trait\":\"Animalism\"}},{\"type\":\"TOGGLE_PENCIL_ERASER_MODE\"},{\"type\":\"UNPURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"UNPURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"UNPURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"UNPURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"UNPURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"UNPURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"TOGGLE_PENCIL_ERASER_MODE\"},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\",\"startingDots\":3}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"influence_underworld\",\"startingDots\":2}},{\"type\":\"SET_STARTING_DOTS\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"influence_elite\",\"startingDots\":1}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"generation\"}},{\"type\":\"PURCHASE_DOT\",\"payload\":{\"category\":\"backgrounds\",\"trait\":\"alternateIdentity\"}}]", | ||
"preloadedState": "{\"mode\":{\"isEraser\":false},\"setting\":{\"name\":\"Camarilla\"},\"character\":{\"basicInfo\":{\"archetype\":\"Type-A Personality\",\"clan\":{\"name\":\"Malkavian\",\"bloodline\":\"Knights of the Moon\",\"meritPoints\":2}},\"attributes\":{\"physical\":{},\"social\":{},\"mental\":{}},\"skills\":{\"availableStartingDots\":[{\"dots\":4,\"count\":1},{\"dots\":3,\"count\":2},{\"dots\":2,\"count\":3},{\"dots\":1,\"count\":4}]},\"backgrounds\":{\"availableStartingDots\":[{\"dots\":3,\"count\":1},{\"dots\":2,\"count\":1},{\"dots\":1,\"count\":0}],\"generation\":{\"startingDots\":1}},\"disciplines\":{\"inClan\":{\"availableStartingDots\":[{\"dots\":2,\"count\":1},{\"dots\":1,\"count\":2}]},\"outOfClan\":{\"availableStartingDots\":[]}},\"merits\":[],\"flaws\":[],\"morality\":{\"path\":\"Humanity\",\"startingDots\":5}}}" | ||
"preloadedState": "{\"mode\":{\"isEraser\":false},\"setting\":{\"name\":\"Camarilla\"},\"character\":{\"basicInfo\":{\"archetype\":\"Type-A Personality\",\"clan\":{\"name\":\"Malkavian\",\"bloodline\":\"Knights of the Moon\",\"meritPoints\":2}},\"attributes\":{\"physical\":{},\"social\":{},\"mental\":{}},\"skills\":{\"availableStartingDots\":[{\"dots\":4,\"count\":1},{\"dots\":3,\"count\":2},{\"dots\":2,\"count\":3},{\"dots\":1,\"count\":4}]},\"backgrounds\":{\"availableStartingDots\":[{\"dots\":3,\"count\":1},{\"dots\":2,\"count\":1},{\"dots\":1,\"count\":0}],\"generation\":{\"startingDots\":1}},\"disciplines\":{\"inClan\":{\"availableStartingDots\":[{\"dots\":2,\"count\":1},{\"dots\":1,\"count\":2}]},\"outOfClan\":{\"availableStartingDots\":[]},\"rituals\":{\"necromantic\":[],\"thaumaturgic\":[]}},\"merits\":[],\"flaws\":[],\"morality\":{\"path\":\"Humanity\",\"startingDots\":5}}}" | ||
} |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
import React from 'react'; | ||
import PropTypes from 'prop-types'; | ||
import RitualsForType from './RitualsForType'; | ||
import Section from './Section'; | ||
|
||
export default function Rituals({ rituals, updateRituals }) { | ||
if (rituals.length === 0) { | ||
return null; | ||
} | ||
|
||
const ritualsForTypes = rituals.map(r => ( | ||
<RitualsForType | ||
key={r.ritualType} | ||
ritualType={r.ritualType} | ||
displayName={r.displayName} | ||
permutations={r.permutations} | ||
selected={r.selected} | ||
updateRituals={updateRituals} | ||
/> | ||
)); | ||
|
||
return <Section header="Rituals">{ritualsForTypes}</Section>; | ||
} | ||
|
||
Rituals.propTypes = { | ||
rituals: PropTypes.arrayOf( | ||
PropTypes.shape({ | ||
ritualType: PropTypes.string.isRequired, | ||
displayName: PropTypes.string.isRequired, | ||
permutations: PropTypes.arrayOf( | ||
PropTypes.shape({ | ||
description: PropTypes.string.isRequired, | ||
value: PropTypes.arrayOf(PropTypes.number).isRequired | ||
}) | ||
).isRequired, | ||
selected: PropTypes.arrayOf(PropTypes.number).isRequired | ||
}) | ||
).isRequired, | ||
updateRituals: PropTypes.func.isRequired | ||
}; |
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,56 @@ | ||
import React from 'react'; | ||
import PropTypes from 'prop-types'; | ||
|
||
export default function RitualsForType({ | ||
ritualType, | ||
displayName, | ||
permutations, | ||
selected, | ||
updateRituals | ||
}) { | ||
const handleChange = e => { | ||
const rituals = JSON.parse(e.target.value); | ||
|
||
updateRituals(ritualType, rituals); | ||
}; | ||
|
||
const options = permutations.map(p => { | ||
const valueAsString = JSON.stringify(p.value); | ||
|
||
return ( | ||
<option value={valueAsString} key={valueAsString}> | ||
{p.description} | ||
</option> | ||
); | ||
}); | ||
|
||
return ( | ||
<div className="row"> | ||
<div className="col-sm-12"> | ||
<div className="row"> | ||
<div className="col-sm-12">{displayName}</div> | ||
</div> | ||
<div className="row"> | ||
<div className="col-sm-12"> | ||
<select value={JSON.stringify(selected)} onChange={handleChange}> | ||
{options} | ||
</select> | ||
</div> | ||
</div> | ||
</div> | ||
</div> | ||
); | ||
} | ||
|
||
RitualsForType.propTypes = { | ||
ritualType: PropTypes.string.isRequired, | ||
displayName: PropTypes.string.isRequired, | ||
permutations: PropTypes.arrayOf( | ||
PropTypes.shape({ | ||
description: PropTypes.string.isRequired, | ||
value: PropTypes.arrayOf(PropTypes.number).isRequired | ||
}) | ||
).isRequired, | ||
selected: PropTypes.arrayOf(PropTypes.number).isRequired, | ||
updateRituals: PropTypes.func.isRequired | ||
}; |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
// General application constants. | ||
export const version = '0.9.4'; | ||
export const version = '0.10.0'; | ||
export const docUrl = 'https://github.com/TrueWill/embracer'; |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
import { connect } from 'react-redux'; | ||
import { updateRituals } from '../actions/characterCreationActions'; | ||
import getRituals from '../selectors/getRituals'; | ||
import Rituals from '../components/Rituals'; | ||
|
||
const mapStateToProps = state => ({ | ||
rituals: getRituals(state) | ||
}); | ||
|
||
const mapDispatchToProps = { | ||
updateRituals | ||
}; | ||
|
||
export default connect( | ||
mapStateToProps, | ||
mapDispatchToProps | ||
)(Rituals); |
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
Oops, something went wrong.