Added undo for additional LP/AE/KP
This commit is contained in:
Vendored
+70
-22
@@ -29548,10 +29548,16 @@
|
||||
|
||||
var _RequirementsStore2 = _interopRequireDefault(_RequirementsStore);
|
||||
|
||||
var _secondaryAttributes = __webpack_require__(336);
|
||||
|
||||
var secondaryAttributes = _interopRequireWildcard(_secondaryAttributes);
|
||||
|
||||
var _Store = __webpack_require__(281);
|
||||
|
||||
var _Store2 = _interopRequireDefault(_Store);
|
||||
|
||||
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
var _history = [];
|
||||
@@ -29723,6 +29729,16 @@
|
||||
}
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.ADD_MAX_ENERGY_POINT:
|
||||
if (_RequirementsStore2.default.isValid()) {
|
||||
const id = payload.id;
|
||||
const oldValue = secondaryAttributes.get(id);
|
||||
const newValue = oldValue + 1;
|
||||
const cost = _RequirementsStore2.default.getCurrentCost();
|
||||
_add(payload.actionType, cost, { id, value: newValue }, { value: oldValue });
|
||||
}
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.REMOVE_ATTRIBUTE_POINT:
|
||||
case _ActionTypes2.default.REMOVE_TALENT_POINT:
|
||||
case _ActionTypes2.default.REMOVE_COMBATTECHNIQUE_POINT:
|
||||
@@ -31130,6 +31146,10 @@
|
||||
|
||||
var _Categories2 = _interopRequireDefault(_Categories);
|
||||
|
||||
var _HistoryStore = __webpack_require__(327);
|
||||
|
||||
var _HistoryStore2 = _interopRequireDefault(_HistoryStore);
|
||||
|
||||
var _RaceStore = __webpack_require__(331);
|
||||
|
||||
var _RaceStore2 = _interopRequireDefault(_RaceStore);
|
||||
@@ -31168,6 +31188,20 @@
|
||||
}
|
||||
}
|
||||
|
||||
function _removeMaxEnergyPoint(id) {
|
||||
switch (id) {
|
||||
case 'LP':
|
||||
_le_add--;
|
||||
break;
|
||||
case 'AE':
|
||||
_ae_add--;
|
||||
break;
|
||||
case 'KP':
|
||||
_ke_add--;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function _clear() {
|
||||
_le = 0;
|
||||
_le_add = 0;
|
||||
@@ -31243,35 +31277,49 @@
|
||||
|
||||
AttributeStore.dispatchToken = _AppDispatcher2.default.register(payload => {
|
||||
|
||||
_AppDispatcher2.default.waitFor([_RequirementsStore2.default.dispatchToken]);
|
||||
_AppDispatcher2.default.waitFor([_RequirementsStore2.default.dispatchToken, _HistoryStore2.default.dispatchToken]);
|
||||
|
||||
switch (payload.actionType) {
|
||||
if (payload.undoAction) {
|
||||
switch (payload.actionType) {
|
||||
case _ActionTypes2.default.ADD_ATTRIBUTE_POINT:
|
||||
case _ActionTypes2.default.REMOVE_ATTRIBUTE_POINT:
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.CLEAR_HERO:
|
||||
case _ActionTypes2.default.CREATE_NEW_HERO:
|
||||
_clear();
|
||||
break;
|
||||
case _ActionTypes2.default.ADD_MAX_ENERGY_POINT:
|
||||
_removeMaxEnergyPoint(payload.options.id);
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.RECEIVE_HERO:
|
||||
_updateAll(payload.attr);
|
||||
break;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
switch (payload.actionType) {
|
||||
case _ActionTypes2.default.CLEAR_HERO:
|
||||
case _ActionTypes2.default.CREATE_NEW_HERO:
|
||||
_clear();
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.ADD_ATTRIBUTE_POINT:
|
||||
case _ActionTypes2.default.REMOVE_ATTRIBUTE_POINT:
|
||||
break;
|
||||
case _ActionTypes2.default.RECEIVE_HERO:
|
||||
_updateAll(payload.attr);
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.ADD_MAX_ENERGY_POINT:
|
||||
if (_RequirementsStore2.default.isValid()) {
|
||||
_addMaxEnergyPoint(payload.id);
|
||||
}
|
||||
break;
|
||||
case _ActionTypes2.default.ADD_ATTRIBUTE_POINT:
|
||||
case _ActionTypes2.default.REMOVE_ATTRIBUTE_POINT:
|
||||
break;
|
||||
|
||||
case _ActionTypes2.default.ASSIGN_RCP_ENTRIES:
|
||||
_assignRCP(payload.selections);
|
||||
break;
|
||||
case _ActionTypes2.default.ADD_MAX_ENERGY_POINT:
|
||||
if (_RequirementsStore2.default.isValid()) {
|
||||
_addMaxEnergyPoint(payload.id);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
return true;
|
||||
case _ActionTypes2.default.ASSIGN_RCP_ENTRIES:
|
||||
_assignRCP(payload.selections);
|
||||
break;
|
||||
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
AttributeStore.emitChange();
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+53
-23
@@ -2,6 +2,7 @@ import { getAllByCategory } from './ListStore';
|
||||
import ActionTypes from '../constants/ActionTypes';
|
||||
import AppDispatcher from '../dispatcher/AppDispatcher';
|
||||
import Categories from '../constants/Categories';
|
||||
import HistoryStore from './HistoryStore';
|
||||
import RaceStore from './RaceStore';
|
||||
import RequirementsStore from './RequirementsStore';
|
||||
import Store from './Store';
|
||||
@@ -30,6 +31,20 @@ function _addMaxEnergyPoint(id) {
|
||||
}
|
||||
}
|
||||
|
||||
function _removeMaxEnergyPoint(id) {
|
||||
switch (id) {
|
||||
case 'LP':
|
||||
_le_add--;
|
||||
break;
|
||||
case 'AE':
|
||||
_ae_add--;
|
||||
break;
|
||||
case 'KP':
|
||||
_ke_add--;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function _clear() {
|
||||
_le = 0;
|
||||
_le_add = 0;
|
||||
@@ -105,35 +120,50 @@ const AttributeStore = new _AttributeStore();
|
||||
|
||||
AttributeStore.dispatchToken = AppDispatcher.register(payload => {
|
||||
|
||||
AppDispatcher.waitFor([RequirementsStore.dispatchToken]);
|
||||
AppDispatcher.waitFor([RequirementsStore.dispatchToken, HistoryStore.dispatchToken]);
|
||||
|
||||
switch( payload.actionType ) {
|
||||
if (payload.undoAction) {
|
||||
switch(payload.actionType) {
|
||||
case ActionTypes.ADD_ATTRIBUTE_POINT:
|
||||
case ActionTypes.REMOVE_ATTRIBUTE_POINT:
|
||||
break;
|
||||
|
||||
case ActionTypes.CLEAR_HERO:
|
||||
case ActionTypes.CREATE_NEW_HERO:
|
||||
_clear();
|
||||
break;
|
||||
case ActionTypes.ADD_MAX_ENERGY_POINT:
|
||||
_removeMaxEnergyPoint(payload.options.id);
|
||||
break;
|
||||
|
||||
case ActionTypes.RECEIVE_HERO:
|
||||
_updateAll(payload.attr);
|
||||
break;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else {
|
||||
switch(payload.actionType) {
|
||||
case ActionTypes.CLEAR_HERO:
|
||||
case ActionTypes.CREATE_NEW_HERO:
|
||||
_clear();
|
||||
break;
|
||||
|
||||
case ActionTypes.ADD_ATTRIBUTE_POINT:
|
||||
case ActionTypes.REMOVE_ATTRIBUTE_POINT:
|
||||
break;
|
||||
case ActionTypes.RECEIVE_HERO:
|
||||
_updateAll(payload.attr);
|
||||
break;
|
||||
|
||||
case ActionTypes.ADD_MAX_ENERGY_POINT:
|
||||
if (RequirementsStore.isValid()) {
|
||||
_addMaxEnergyPoint(payload.id);
|
||||
}
|
||||
break;
|
||||
case ActionTypes.ADD_ATTRIBUTE_POINT:
|
||||
case ActionTypes.REMOVE_ATTRIBUTE_POINT:
|
||||
break;
|
||||
|
||||
case ActionTypes.ASSIGN_RCP_ENTRIES:
|
||||
_assignRCP(payload.selections);
|
||||
break;
|
||||
|
||||
default:
|
||||
return true;
|
||||
case ActionTypes.ADD_MAX_ENERGY_POINT:
|
||||
if (RequirementsStore.isValid()) {
|
||||
_addMaxEnergyPoint(payload.id);
|
||||
}
|
||||
break;
|
||||
|
||||
case ActionTypes.ASSIGN_RCP_ENTRIES:
|
||||
_assignRCP(payload.selections);
|
||||
break;
|
||||
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
AttributeStore.emitChange();
|
||||
|
||||
@@ -7,6 +7,7 @@ import ProfessionStore from './ProfessionStore';
|
||||
import ProfessionVariantStore from './ProfessionVariantStore';
|
||||
import RaceStore from './RaceStore';
|
||||
import RequirementsStore from './RequirementsStore';
|
||||
import * as secondaryAttributes from '../utils/secondaryAttributes';
|
||||
import Store from './Store';
|
||||
|
||||
var _history = [];
|
||||
@@ -164,6 +165,16 @@ HistoryStore.dispatchToken = AppDispatcher.register(payload => {
|
||||
_add(payload.actionType, cost, { id, value: newValue }, { value: oldValue });
|
||||
}
|
||||
break;
|
||||
|
||||
case ActionTypes.ADD_MAX_ENERGY_POINT:
|
||||
if (RequirementsStore.isValid()) {
|
||||
const id = payload.id;
|
||||
const oldValue = secondaryAttributes.get(id);
|
||||
const newValue = oldValue + 1;
|
||||
const cost = RequirementsStore.getCurrentCost();
|
||||
_add(payload.actionType, cost, { id, value: newValue }, { value: oldValue });
|
||||
}
|
||||
break;
|
||||
|
||||
case ActionTypes.REMOVE_ATTRIBUTE_POINT:
|
||||
case ActionTypes.REMOVE_TALENT_POINT:
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
> .short {
|
||||
font: bold 14px/28px Alegreya;
|
||||
color: #f1e6d4;
|
||||
color: $font-color1;
|
||||
letter-spacing: 0.05em;
|
||||
text-transform: uppercase;
|
||||
text-align: center;
|
||||
@@ -36,20 +36,20 @@
|
||||
> .value {
|
||||
border: 2px solid transparent;
|
||||
padding: 2px;
|
||||
background: #0d141c;
|
||||
background: $background4;
|
||||
|
||||
> div {
|
||||
border: 1px solid #3c3c41;
|
||||
border: 1px solid $font-color3;
|
||||
padding: 1px;
|
||||
|
||||
> div {
|
||||
@include size(45px);
|
||||
text-align: center;
|
||||
font: bold 28px/45px Alegreya Sans;
|
||||
color: #f1e6d4;
|
||||
color: $font-color1;
|
||||
letter-spacing: 0.05em;
|
||||
text-transform: uppercase;
|
||||
background: $pane-background-color;
|
||||
background: $background2;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
@@ -106,6 +106,10 @@
|
||||
top: 70px;
|
||||
right: -6px;
|
||||
width: 24px;
|
||||
|
||||
+ .btn-round {
|
||||
margin-top: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -123,7 +127,8 @@
|
||||
|
||||
> .calculated {
|
||||
.value {
|
||||
border-color: $pane-background-color;
|
||||
border-color: transparent;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.number-box {
|
||||
|
||||
Reference in New Issue
Block a user