Skip to content

Commit

Permalink
Loadout update (#57)
Browse files Browse the repository at this point in the history
* Loadout sorting and description

- When loadouts are assigning a leader, the most experienced kittens will be prioritized.
- Loadout description now shows leader job saved.
- Comment cleanup

* Fix Comments

assing is replaced with assign
  • Loading branch information
SilenceFactor authored Apr 20, 2024
1 parent bcc5e18 commit 341803e
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 10 deletions.
18 changes: 11 additions & 7 deletions js/village.js
Original file line number Diff line number Diff line change
Expand Up @@ -3043,7 +3043,7 @@ dojo.declare("com.nuclearunicorn.game.village.Loadout", null, {

var freeKittens = this.game.village.getFreeKittens();

if(freeKittens && jobsFiltered.length) { //Assign remaining kittens due to Math.floor, adding to the lowest values first
if(freeKittens && jobsFiltered.length) { //Assign remaining kittens due to Math.floor being used
for (var i in jobsFiltered) {
if (freeKittens > 0){
job = jobsFiltered[i];
Expand Down Expand Up @@ -3087,7 +3087,7 @@ dojo.declare("com.nuclearunicorn.game.village.Loadout", null, {

var freeEngineers = this.game.village.getFreeEngineers();

if(freeEngineers && craftsFiltered.length) { //Assign remaining kittens due to Math.floor, adding to the lowest values first
if(freeEngineers && craftsFiltered.length) { //Assign remaining kittens due to Math.floor.
for (var i in craftsFiltered) {
if (freeEngineers > 0){
this.assignCraftJob(this.game.workshop.getCraft(craftsFiltered[i].craft), 1);
Expand All @@ -3101,9 +3101,10 @@ dojo.declare("com.nuclearunicorn.game.village.Loadout", null, {
//Assign leader

if(setLeader && this.leaderTrait && !this.game.challenges.isActive("anarchy")) {
this.game.village.sim.sortKittensByExp();
var theocracy = this.game.science.getPolicy("theocracy");
var tempKitten = null;
for(var i in kittens) {
for(var i = kittens.length - 1; i >= 0; i--) {
if (kittens[i].trait.name == this.leaderTrait.name) {
if((theocracy.researched) && (kittens[i].job != theocracy.requiredLeaderJob)){
continue;
Expand All @@ -3119,7 +3120,7 @@ dojo.declare("com.nuclearunicorn.game.village.Loadout", null, {

}
}
if(tempKitten){
if(tempKitten){ // If there is no kitten that has the saved job and trait together, assign the first kitten with the trait.
this.makeLeader(tempKitten);
}
}
Expand Down Expand Up @@ -3209,7 +3210,10 @@ dojo.declare("com.nuclearunicorn.game.ui.LoadoutButtonController", com.nuclearun
var textToDisplay = "";

if(loadout.leaderTrait){
textToDisplay += $I("village.loadout.desc", [loadout.leaderTrait.title]);
textToDisplay += $I("village.loadout.desc", [loadout.leaderTrait.title]) + "<br>";
}
if(loadout.leaderJob){
textToDisplay += $I("village.loadout.desc2", [this.game.village.getJob(loadout.leaderJob).title]) + "<br>";
}

var loadoutJobsSum = loadout.getLoadoutJobsSum();
Expand All @@ -3219,7 +3223,7 @@ dojo.declare("com.nuclearunicorn.game.ui.LoadoutButtonController", com.nuclearun
jobText += "<br>" + this.game.village.getJob(job.name).title + ": " + this.game.getDisplayValueExt(job.value / loadoutJobsSum * 1e2, "", false, 2, "%");
}
}
textToDisplay += $I("village.loadout.desc2", [jobText]);
textToDisplay += "<br>" + $I("village.loadout.desc3", [jobText]);

var engineerText = "";
for(var i in loadout.engineerJobs){
Expand All @@ -3231,7 +3235,7 @@ dojo.declare("com.nuclearunicorn.game.ui.LoadoutButtonController", com.nuclearun
}

if(engineerText) {
textToDisplay += $I("village.loadout.desc3", [engineerText]);
textToDisplay += $I("village.loadout.desc4", [engineerText]);
}

return textToDisplay;
Expand Down
7 changes: 4 additions & 3 deletions res/i18n/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -1929,9 +1929,10 @@
"village.kittens.promotion.nogold": "Not enough gold to promote kittens",
"village.leader.promoted.one.kitten": "Your leader has promoted one kitten",
"village.leader.promoted.many.kittens": "Your leader has promoted {0} kittens",
"village.loadout.desc": "Leader: {0}<br><br>",
"village.loadout.desc2": "Jobs{0}",
"village.loadout.desc3": "<br><br>Engineer Crafts{0}",
"village.loadout.desc": "Leader: {0}",
"village.loadout.desc2": "Leader job: {0}",
"village.loadout.desc3": "Jobs{0}",
"village.loadout.desc4": "<br><br>Engineer Crafts{0}",
"village.loadout.title": "Loadouts",
"village.loadout.create": "Create Loadout",
"village.loadout.delete.all": "Delete all loadouts",
Expand Down

0 comments on commit 341803e

Please sign in to comment.