Skip to content

Latest commit

 

History

History
492 lines (379 loc) · 41.2 KB

CHANGES.md

File metadata and controls

492 lines (379 loc) · 41.2 KB

Modifications in this fork

Changes in the LBSExtremeContraction branch

This branch addresses instances of extreme contraction in identifiers/variable names

Desired modifications:

In the current project, there are multiple instances of extremely shortened words in variable names, or extreme contractions. The changes include refactoring these identifier names to be more understandable.

Modified files:

The following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the LongMethods branch

This branch addresses instances of long methods or bloated methods

Desired modifications:

In the current project, there are multiple instances of long methods. The changes include refactoring these methods to be a more sensible length and separate functionality.

Modified files:

The following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the LackOfComments branch

This branch addresses instances of lacking comments.

Desired modifications:

In the current project, there are few comments describing general functionality. The changes include refactoring to include header comments above major, non-simple methods (no comments above getters/setters).

Modified files:

The following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the Long Parameter List branch

This branch addresses the issues of long parameter lists.

Desired modifications:

Fix the long parameter list code smell by introducing a parameter object. The parameter object that is passed to the Quest class constructor will be from a QuestBuilder class that is created when implementing a builder pattern. The poor encapsulation will be fixed by implementing getter and setter methods that will enable testing for the class.

Modified files:

The following files were modified in the change:

Added files:

The following files were created in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the duplicateCodeRefactor branch

This branch addresses instances of duplicate code fragments

Desired modifications:

In the current project, there are multiple instances of unnecessary duplicate code. The changes include refactoring these instances to reduce redundancy.

Modified files:

The following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

See below for more changes from the main branch

Changes in the ShowSpecificPotionStats branch

This branch addresses the following issue:

Show Specific Potion Stats, (issue #58 in the source hhaslam11/Text-Fighter repository, issue #7 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current functionality, when a player views their stats, they are only able to view a total number of potions used, but not individual totals for different types of potions that they have used. The changes include separating the totals for individual potion types to display each total, while also keeping a total of all potions used by the player.

Modified files:

As viewable in the Dependency References folder, the following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Resolution:

The branch was merged with master, closing issue #58:

Pull request #125

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the AddConstantArrayListAccessModifiers branch

This branch addresses the following issue:

Show Specific Potion Stats, (issue #46 in the source hhaslam11/Text-Fighter repository, issue #4 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current implementation, when accessing an array from a static class including Weapon, Enemy, and Food, the array is accessed directly. The changes include implementing an access modifier to these arrays.

Modified files:

As viewable in the Dependency References folder, the following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Resolution:

The branch was merged with master:

Pull request #127

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the CriticalHits branch

This branch addresses the following issue:

Critical Hits, (issue #25 in the source hhaslam11/Text-Fighter repository, issue #1 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current functionality, the damage that a weapon can do can be increased by a critical multiplier based upon the weapon's type. The changes include adding another critical modifier that increases the damage done by weapons with bullets only. This modifier has a 0.01% chance to activate and increases damage by a factor of 10.

Modified files:

As viewable in the Dependency References folder, the following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Resolution:

Pending

A pull request has been made to merge the change onto the master branch of the source repo.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the CheatsIndexOutOfBoundsFix

This branch addresses the following issue:

Critical Hits, (issue #130 in the source hhaslam11/Text-Fighter repository, issue #9 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current implementation, selecting the weaponstash cheat involves accessing an array of weapons in which the final index being referenced is the size of the array, which is out of the bounds of the array. The changes involve updating the condition of the loop that accesses the array to prevent the violation of the index.

Modified files:

As viewable in the Dependency References folder, the following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Resolution:

Pending

A pull request has been made to merge the change onto the master branch of the source repo.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the InlineDocumentation Branch

This branch addresses the following issue:

Add better in-line documentation, (issue #32 in the source hhaslam11/Text-Fighter repository, issue #2 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current implementation, there is no documentation throughout the project.

In the updated implementation, classes and methods will be documented.

Modified files:

The following packages were modified in the change:

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the HealthHelpSection

This branch addresses the following issue:

Add more health info in Help section, (issue #37 in the source hhaslam11/Text-Fighter repository, issue #3 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current implementation, the Health section of the Help Menus doesn't go into detail of the features available that affect player and enemies health.

In the updated implementation, the Health section describes all aspect of the game pertaining to player and enemy health.

Modified files:

The following files were modified in the change:

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the AddingPotions branch

This branch addresses the following issue:

Potion Brewing and more options, (issue #87 in the source hhaslam11/Text-Fighter repository, issue #8 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

In the current implementation, there are only two potion types and the player can only purchase potions. In the updated version there are now three types of potions and players can brew potions.

Modified files:

The following files were modified in the change:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

See here for more information on testing.

Additional resources:

Please view the following to find additional documentation of the changes and the code involved in the changes.

Changes in the AddTimeFeatures branch

This branch addresses the following issue:

Time, (issue #72 in the source hhaslam11/Text-Fighter repository, issue #5 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

Add a game clock that would keep track of time, days, months, and years. The game time would be faster than real world time by a certain amount.

Modified files:

Added Files:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

Changes in the TrackGamePlayTime branch

This branch addresses the following issue:

Time, (issue #128 in the source hhaslam11/Text-Fighter repository, issue #10 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

Add a feature that will keep track of the total time played and the current session game play.

Modified files:

Added Files:

Testing:

The following tests were performed to ensure that behavior was preserved after refactoring/changes:

Changes in the UpdateReadme branch

This branch addresses the following issue:

Time, (issue #74 in the source hhaslam11/Text-Fighter repository, issue #6 in the forked emmamickas/Text-Fighter repository)

Desired modifications:

Update the README.md file since because it hasn't been updated for a while.

Modified files:

  • README
    • Updated running instructions for IntelliJ and Gradle.
    • Added a clip that shows game play.
    • Updated contributors.

Changes in the Achievements branch

This branch addresses the following issue:

Add More Achievements, (issue #94 in the source hhaslam11/Text-Fighter repository, issue #11 in the forked emmamickas/Text-Fighter repository)

Desired Modifications:

There are currently 21 achievements in the game. They are also not very creative (i.e. level up, kill a specific monster, etc.).

The changes to this issue is that a handful of more creative and desireable achievements were added. Some are easy to achieve, some are not.

Modified Files:

The following packages were modified in the change:

Testing:

The following tests were performed during TDD:

Changes in the MoreEnemies branch

This branch addresses the following issue:

Add way more enemies and monsters into the game, (issue #19 in the source hhaslam11/Text-Fighter repository, issue #13 in the forked emmamickas/Text-Fighter repository)

Desired Modifications:

In the current game, there are 10 enemies and monsters for the fighter to kill. The monsters typically come from a fantasy world. In the changes, the number of monsters have now more than doubled up to a total of 23 enemies and monsters spanning all genres of monsters (Greek mythology, Anglo Saxon legends, and good old folk stories).

Modified Files:

The following packages were modified in the change

Testing:

Testing for this issue was fairly straightforward. There wasn't much required for testing before the enemies were created, but regression testing and playtesting after implementation were both important to confirm accuracy and truancy.

Changes in the TipsHints branch:

This branch addresses the following issue:

Add tips and hints that would pop up at certain times during play. (issue #65 in the source hhaslam11/Text-Fighter repository, issue #12 in the forked emmamickas/Text-Fighter repository)

Desired Modifications:

In the current implementation, there are no tips or hints to help the fighter navigate their journey through the game. In the updated version (**under construction), the fighter will receive a helpful hint after every other enemy or monster they kill. This could be something as simple as "Some monsters may be too powerful to kill at low levels. Come back and fight them after you've gained some experience and gear."

Modified Files:

Testing:

The following tests were performed during TDD: **under construction

This issue is not quite completed, but the bones are there to flesh out. The idea is that when an enemy dies, the player's Stats.kill % 2 == 0. This makes it true on even number kills. When true, the function tipsHints() is called where a string array containing all of the tips lives. A random number is chosen and the message in that index is displayed on the screen.