olistic / warriorjs

🏰 An exciting game of programming and Artificial Intelligence
https://warriorjs.com
MIT License
9.41k stars 489 forks source link

Blessed level UI #166

Closed jeroenrinzema closed 3 years ago

jeroenrinzema commented 6 years ago

New level UI build with Blessed. See #155 for more info. This PR is still a work in progress. The following tasks still need to be completed.

codecov-io commented 6 years ago

Codecov Report

Merging #166 into master will decrease coverage by 20.8%. The diff coverage is 0.69%.

Impacted file tree graph

@@             Coverage Diff             @@
##           master     #166       +/-   ##
===========================================
- Coverage   92.64%   71.84%   -20.81%     
===========================================
  Files          92       91        -1     
  Lines        1088     1250      +162     
  Branches      165      212       +47     
===========================================
- Hits         1008      898      -110     
- Misses         65      304      +239     
- Partials       15       48       +33
Impacted Files Coverage Ξ”
...warriorjs-cli/src/level/components/getUnitStyle.js 100% <ΓΈ> (ΓΈ)
...s/warriorjs-cli/src/level/components/totalScore.js 0% <0%> (ΓΈ)
...ages/warriorjs-cli/src/level/components/failure.js 0% <0%> (ΓΈ)
...es/warriorjs-cli/src/level/preform/confirmation.js 0% <0%> (ΓΈ)
.../warriorjs-cli/src/level/components/towerReport.js 0% <0%> (ΓΈ)
.../warriorjs-cli/src/level/components/levelHeader.js 0% <0%> (ΓΈ)
...ages/warriorjs-cli/src/level/components/success.js 0% <0%> (ΓΈ)
...s/warriorjs-cli/src/level/components/logMessage.js 0% <0%> (ΓΈ)
packages/warriorjs-cli/src/level/layout/base.js 0% <0%> (ΓΈ)
...arriorjs-cli/src/level/components/warriorStatus.js 0% <0%> (ΓΈ)
... and 67 more

Continue to review full report at Codecov.

Legend - Click here to learn more Ξ” = absolute <relative> (impact), ΓΈ = not affected, ? = missing data Powered by Codecov. Last update 04249d0...217c98b. Read the comment docs.

jeroenrinzema commented 6 years ago

Currently WarriorJS uses 2 different approaches to generating the interfaces. Is it an idea to use Blessed for all interfaces?

olistic commented 6 years ago

@jeroenrinzema I haven't looked at the code yet, but I saw you used npm to install blessed. You should use lerna because of how the project is set up (multi-package repo using yarn workspaces). The command you need is: lerna add blessed --scope=@warriorjs/cli.

olistic commented 6 years ago

@jeroenrinzema

Currently WarriorJS uses 2 different approaches to generating the interfaces. Is it an idea to use Blessed for all interfaces?

If you mean the dialogs using Inquirer.js on one side and the printPlay() function (and all functions derived from that one) on the other, the answer is no. The scope of this PR should be limited to replace only the latter (printPlay()). All Inquirer.js dialogs should be left as they are.