Refactored names

This commit is contained in:
2016-02-28 15:08:19 +08:00
parent 637341f15a
commit 844ef71cdb
8 changed files with 59 additions and 1122 deletions
+2 -2
View File
@@ -302,7 +302,7 @@ h1 br {
.ui-draggable {
cursor: move;
}
.element {
.card {
font-size: 3em;
border: 0px;
padding: 1px;
@@ -310,7 +310,7 @@ h1 br {
min-width: 50px;
min-height: 50px;
}
.element.empty {
.card.empty {
opacity: 0.2;
}
.white-badge.empty {
+1 -1
View File
@@ -15,7 +15,7 @@ require("assets/mobile/icon.png");
require("assets/pc32sw.png");
// json
// var element = require("json/elements.json");
// var cards = require("json/cards.json");
// var acheivements = require("json/achievements.json");
// deps
+15 -15
View File
@@ -59,18 +59,18 @@
</h4>
</div>
<div class="panel-body large" id="elementLarge"
ng-controller="ElementController as rc"
<div class="panel-body large" id="cardsLarge"
ng-controller="CardController as rc"
>
<div id="elementContent">
<div id="handContent">
<div class="row" ng-cloak>
<div class="col-xs-2 col-no-padding " ng-repeat="r in rc.elements|orderBy:'key'" ng-show="rc.isAvailable(r)">
<div class="col-xs-2 col-no-padding " ng-repeat="r in rc.cards|orderBy:'key'" ng-show="rc.isAvailable(r)">
<span ng-show="rc.isAvailable(r)"
id="{{r.key}}"
class="{{r.key}} element element-store {{ r.state.interesting ? 'blink' : '' }} {{r.color}} {{rc.isAvailable(r) ? ' ui-draggable': 'empty'}}"
class="{{r.key}} card cards-store {{ r.state.interesting ? 'blink' : '' }} {{r.color}} {{rc.isAvailable(r) ? ' ui-draggable': 'empty'}}"
ng-click="rc.onClick(r,$event)"
data-element="{{r.key}}"
data-cards="{{r.key}}"
data-drag="rc.isAvailable(r)"
jqyoui-draggable="rc.jqyouiDraggable"
data-jqyoui-options="rc.dataJqyouiOptions"
@@ -102,10 +102,10 @@
<div class=""><strong> Correct cards. Which card is next?</strong><br></div>
<div id="detector-holder">
<div id="detector" ng-controller="DetectorController as dc">
<div id="detector" ng-controller="TableController as dc">
<div id="detector-element-container"
<div id="detector-cards-container"
ng-cloak
jqyoui-droppable="dc.jqyouiDroppable"
data-jqyoui-options="dc.dataJqyouiOptions"
@@ -115,8 +115,8 @@
<div class="row" >
<div class="col-xs-1 col-no-padding add-from-top" ng-repeat="r in dc.lastCards | limitTo: -10" ng-cloak>
<span
class="{{r.key}} element {{r.color}}"
data-element="{{r.key}}"
class="{{r.key}} card {{r.color}}"
data-cards="{{r.key}}"
data-hashkey={{r.$$hashKey}}
>
{{r.key}}
@@ -131,8 +131,8 @@
<div class="row">
<div ng-repeat="r in rr| limitTo: -10" class="col-md-12 col-no-padding add-from-right ">
<span
class="{{r.key}} element {{r.color}}"
data-element="{{r.key}}"
class="{{r.key}} card {{r.color}}"
data-cards="{{r.key}}"
data-hashkey={{r.$$hashKey}}
>
{{r.key}}
@@ -187,7 +187,7 @@
</h4>
</div>
<div class="panel-body scrollable large" id="upgradesLarge">
<div id="upgradesContent" class="left-list" ng-controller="UpgradesController as uc">
<div id="upgradesContent" class="left-list" ng-controller="RulesController as uc">
<!-- A more complicated hypothesis display... too complicated I guess -->
<!-- <label>Search: <input ng-model="searchText"></label> -->
@@ -215,12 +215,12 @@
<div id="column-tabs" class="col-xs-6 visible-xs-block visible-sm-block col-no-padding">
<ul id="TabList" class="nav nav-tabs" role="tablist">
<li class="active"><a href="#element" role="tab" data-toggle="tab"><i class="fa fa-cogs"></i> Elements </a></li>
<li class="active"><a href="#cards" role="tab" data-toggle="tab"><i class="fa fa-cogs"></i> Elements </a></li>
<li><a href="#hr" role="tab" data-toggle="tab"><i class="fa fa-users"></i> HR</a></li>
<li><a href="#upgrades" role="tab" data-toggle="tab"><i class="fa fa-wrench"></i> Upgrades</a></li>
</ul>
<div id="TabContent" class="tab-content">
<div class="tab-pane active scrollable" id="element">
<div class="tab-pane active scrollable" id="cards">
</div>
<div class="tab-pane scrollable" id="hr">
+17 -17
View File
@@ -134,16 +134,16 @@ var app = (function (Helpers,analytics,Game,Rules) {
// factories to provide services. They serve shared game objects
// app.factory('elements', function () {
// var elements = Helpers.loadFile('json/elements.json');
// elements = elements.map(
// app.factory('cards', function () {
// var cards = Helpers.loadFile('json/cards.json');
// cards = cards.map(
// function (r) {
// return new GameObjects.Card(r);
// });
// // put in extended array with helper methods
// Card = new GameObjects.Cards();
// Card.push.apply(Card,elements);
// return Card;
// Cards = new GameObjects.Cards();
// Cards.push.apply(Cards,cards);
// return Cards;
// });
@@ -206,10 +206,10 @@ var app = (function (Helpers,analytics,Game,Rules) {
app.filter('reverse', reverse);
// controllers
app.controller('ElementController', ElementController);
ElementController.$inject = ['$scope', '$compile', 'game', 'lab'];
app.controller('CardController', CardController);
CardController.$inject = ['$scope', '$compile', 'game', 'lab'];
function ElementController($scope, $compile, game, lab) {
function CardController($scope, $compile, game, lab) {
var vm = this;
vm.dataJqyouiOptions = {
revert: "invalid",
@@ -238,7 +238,7 @@ var app = (function (Helpers,analytics,Game,Rules) {
card.state.lastDragged=new Date();
console.log('endDrag');
};
vm.elements = game.elements;
vm.cards = game.cards;
vm.isVisible = function (item) {
return item.isVisible(lab);
};
@@ -248,9 +248,9 @@ var app = (function (Helpers,analytics,Game,Rules) {
};
function DetectorController($scope, game, lab, $filter) {
function TableController($scope, game, lab, $filter) {
var vm = this;
vm.elements = detector.elements;
vm.cards = detector.cards;
vm.rule = '';
vm.hints = [];
vm.limit = -12;
@@ -282,8 +282,8 @@ var app = (function (Helpers,analytics,Game,Rules) {
}
};
};
DetectorController.$inject = ['$scope', 'game', 'lab', '$filter'];
app.controller('DetectorController', DetectorController);
TableController.$inject = ['$scope', 'game', 'lab', '$filter'];
app.controller('TableController', TableController);
function LabController($interval, game, lab) {
@@ -301,7 +301,7 @@ var app = (function (Helpers,analytics,Game,Rules) {
app.controller('LabController', LabController);
function UpgradesController($scope, game, lab) {
function RulesController($scope, game, lab) {
var vm = this;
// present just a few hypothesis
var rules = Rules.rules.map(function (r) {
@@ -379,8 +379,8 @@ var app = (function (Helpers,analytics,Game,Rules) {
console.log('guess', arguments);
};
};
UpgradesController.$inject = ['$scope', 'game', 'lab'];
app.controller('UpgradesController', UpgradesController);
RulesController.$inject = ['$scope', 'game', 'lab'];
app.controller('RulesController', RulesController);
function AchievementsController($scope, game, lab) {
var vm = this;
+21 -21
View File
@@ -5,15 +5,15 @@ var ObjectStorage = require("js/storage");
var Helpers = require("js/helpers");
var GameObjects = require("js/gameobjects");
var Rules = require("js/rules.js");
var elements = require("json/elements.json");
var cards = require("json/cards.json");
var achievements = require("json/achievements.json");
var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,elements,achievements) {
var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,cards,achievements) {
'use strict';
var Game = function () {
this.lab = null;
this.elements = null;
this.cards = null;
this.workers = null;
this.upgrades = null;
this.achievements = null;
@@ -38,7 +38,7 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
// However, I don't see any other reasonable way to do this in order to
// make it work with Angular. If you know a way, let me know, and I'll
// give you a beer. - Kevin
this.elements = elements; //Helpers.loadFile('json/elements.json');
this.cards = cards; //Helpers.loadFile('json/cards.json');
this.achievements = require("json/achievements.json"); //Helpers.loadFile('./json/achievements.json');
// function successCallback(response) {
@@ -49,11 +49,11 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
// return console.error('Could not get url', response.statusText, response);
// }
// return $q.all(
// $http.get('json/elements.json', {
// $http.get('json/cards.json', {
// transformResponse: angular.fromJson
// })
// .then(function (response) {
// return self.elements = response.data;
// return self.cards = response.data;
// }),
// $http.get('json/workers.json', {
// transformResponse: angular.fromJson
@@ -92,7 +92,7 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
self.allObjects[o.key] = o;
return o;
};
self.elements = self.elements.map(
self.cards = self.cards.map(
function (r) {
return makeGameObject(GameObjects.Card, r);
});
@@ -106,10 +106,10 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
o.loadState(ObjectStorage.load(key));
}
// put elements in extended array with utility methods
// put cards in extended array with utility methods
self.Card = new GameObjects.Cards();
self.Card.push.apply(self.Card, self.elements);
self.elements = self.Card;
self.Card.push.apply(self.Card, self.cards);
self.cards = self.Card;
self.loaded = true;
return self;
@@ -121,13 +121,13 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
this.rule.randomize();
// check if we have any cards in hand
// var totalElements = _(self.elements).map('state.amount').sum();
// var totalElements = _(self.cards).map('state.amount').sum();
// if (totalElements<1) self.dealHand();
this.dealHand();
// deal first card
// TODO make sure these follow rule
this.lastCards.push.apply(this.lastCards,_.sampleSize(this.elements,3));
this.lastCards.push.apply(this.lastCards,_.sampleSize(this.cards,3));
for (var i = 0; i < this.lastCards.length; i++) {
this.incorrectCards[i]=[];
}
@@ -139,13 +139,13 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
Game.prototype.dealHand = function (n) {
n=n||12;
var hand=_.sampleSize(this.elements,n);
this.elements.map(function(card){
var hand=_.sampleSize(this.cards,n);
this.cards.map(function(card){
card.state.amount=0;
});
for (var i = 0; i < hand.length; i++) {
var card = hand[i];
this.elements.get(card.key).state.amount++;
this.cards.get(card.key).state.amount++;
}
};
@@ -154,7 +154,7 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
console.debug('onClick',arguments);
var cardType = angular.element(ui.draggable).data('element');
var card = _.find(this.elements,{key:cardType});
var card = _.find(this.cards,{key:cardType});
return this.play(card);
};
Game.prototype.onDrop = function (event, ui) {
@@ -162,7 +162,7 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
console.debug('onDrop',arguments);
var cardType = angular.element(ui.draggable).data('element');
var card = _.find(this.elements,{key:cardType});
var card = _.find(this.cards,{key:cardType});
return this.play(card);
};
Game.prototype.play = function (card) {
@@ -182,15 +182,15 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
this.incorrectCards[turn].push(angular.copy(card));
// deal 2 random cards
_.sample(this.elements).state.amount+=1;
_.sample(this.elements).state.amount+=1;
_.sample(this.cards).state.amount+=1;
_.sample(this.cards).state.amount+=1;
this.lab.state.score-=2;
}
return correct;
};
/** Test the rule **/
Game.prototype.test = function (card) {
return this.rule.test(card,this.lastCards,this.elements);
return this.rule.test(card,this.lastCards,this.cards);
};
Game.prototype.save = function () {
// Save every object's state to local storage
@@ -200,4 +200,4 @@ var Game = module.exports =(function (Helpers, GameObjects, ObjectStorage,Rules,
};
return Game;
}(Helpers, GameObjects, ObjectStorage,Rules,elements,achievements));
}(Helpers, GameObjects, ObjectStorage,Rules,cards,achievements));
+1 -1
View File
@@ -24,7 +24,7 @@ var UI = module.exports = (function (FastClick,Cookies) {
$modal.modal({show: true});
};
/** Display only the elements with data-min-level above a certain
/** Display only the cards with data-min-level above a certain
* threshold.
*/
var showLevels = function(level) {
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -25,12 +25,12 @@ describe('cardsForScience controllers', function () {
$controller = _$controller_;
}));
describe('ElementController', function () {
describe('CardController', function () {
var $scope, controller;
beforeEach(function () {
$scope = {};
controller = $controller('ElementController',{$scope:$scope});
controller = $controller('CardController',{$scope:$scope});
});
it('should have elements', function () {