IN JAVA PLEASE There is a 2D-rectangular MxN Terrain. On each square of the terrain, there may or may not be some gold and a Monster. Each monster has a name and damage (a numeric value between 1- 10). Some Heroes are traversing on the terrain. Each Hero has a name, health (a numeric value between 0-100), and a wallet that contains the golds he has collected. When a hero steps onto a square on the terrain, first he collects all of the golds placed on that square. Then, If there is a monster on the current square, Hero must fight with the monster and kill it. This fight decreases Hero’s health by the monster’s damage. If the Hero’s health drops below 0 after the battle, both Hero and monster die, and his/her golds disappear. When two or more heroes step on the same square simultaneously, the one with more health survives, and the other Hero dies. If there is gold on the square, the surviving Hero collects the gold. If there is a monster on the same square, the surviving Hero fights with the monster. At each turn, each Hero is moving one step randomly in one of 4 directions (i.e., up, down, left, right) Model the scenario above in OOP Terrain Info 5 / M 4 / N 0 0 1 2 / number of golds at each position in the terrain 2 3 4 1 1 1 0 0 0 2 2 1 2 1 1 0 Monster info 2 / number of monsters 0 2 Monster1 2 / row col name damage 3 1 Monster2 5 Hero info 1 / number of heroes 1 2 Hero1 100 / row col name health : The above is just an example input file. Your program should be working with any input file that has the same format Write a Main class that has only the main () function. In the main, read the input file create the terrain and heroes accordingly. Simulate the terrain for a given number of turns (Ask the user to read from the keyboard). Print out the terrain, the positions, and the golds of each hero and monster at each turn. Also, print out any fights happening at each turn. If the format of the input file is wrong throw an Exception that indicates the problem.
IN JAVA PLEASE
There is a 2D-rectangular MxN Terrain. On each square of the terrain, there may or may not be some gold and a Monster. Each monster has a name and damage (a numeric value between 1- 10). Some Heroes are traversing on the terrain. Each Hero has a name, health (a numeric value between 0-100), and a wallet that contains the golds he has collected. When a hero steps onto a square on the terrain, first he collects all of the golds placed on that square. Then, If there is a monster on the current square, Hero must fight with the monster and kill it. This fight decreases Hero’s health by the monster’s damage. If the Hero’s health drops below 0 after the battle, both Hero and monster die, and his/her golds disappear. When two or more heroes step on the same square simultaneously, the one with more health survives, and the other Hero dies. If there is gold on the square, the surviving Hero collects the gold. If there is a monster on the same square, the surviving Hero fights with the monster. At each turn, each Hero is moving one step randomly in one of 4 directions (i.e., up, down, left, right) Model the scenario above in OOP
Terrain Info
5 / M
4 / N
0 0 1 2 / number of golds at each position in the terrain
2 3 4 1
1 1 0 0
0 2 2 1
2 1 1 0
Monster info
2 / number of monsters
0 2 Monster1 2 / row col name damage
3 1 Monster2 5
Hero info
1 / number of heroes
1 2 Hero1 100 / row col name health
: The above is just an example input file. Your program should be working with any input file that
has the same format
Write a Main class that has only the main () function. In the main, read the input file create the terrain
and heroes accordingly. Simulate the terrain for a given number of turns (Ask the user to read from the
keyboard). Print out the terrain, the positions, and the golds of each hero and monster at each turn.
Also, print out any fights happening at each turn.
If the format of the input file is wrong throw an Exception that indicates the problem.
Step by step
Solved in 2 steps