Legger til en del fremdeles uimplementerte items
This commit is contained in:
52
src/inf101/v18/rogue101/items/Bow.java
Normal file
52
src/inf101/v18/rogue101/items/Bow.java
Normal file
@ -0,0 +1,52 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.game.IGame;
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class Bow implements IRangedWeapon {
|
||||
private static final Random random = new Random();
|
||||
private final int damage = 3 + random.nextInt(20);
|
||||
private final int hp = getMaxHealth();
|
||||
|
||||
@Override
|
||||
public int getWeaponDamage() {
|
||||
return damage;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCurrentHealth() {
|
||||
return hp;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDefence() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxHealth() {
|
||||
return 110;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Unknown bow";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSize() {
|
||||
return 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSymbol() {
|
||||
return "B";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int handleDamage(IGame game, IItem source, int amount) {
|
||||
return 0;
|
||||
}
|
||||
}
|
33
src/inf101/v18/rogue101/items/IBuffItem.java
Normal file
33
src/inf101/v18/rogue101/items/IBuffItem.java
Normal file
@ -0,0 +1,33 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
interface IBuffItem extends IItem {
|
||||
/**
|
||||
* Retrieve damage increase done by the buff item.
|
||||
*
|
||||
* @return An int, May be 0
|
||||
*/
|
||||
int getBuffDamage();
|
||||
|
||||
/**
|
||||
* Retrieve defence increase done by the buff item.
|
||||
*
|
||||
* @return An int, May be 0
|
||||
*/
|
||||
int getBuffDefence();
|
||||
|
||||
/**
|
||||
* Retrieve defence increase done by the buff item.
|
||||
*
|
||||
* @return An int, May be 0
|
||||
*/
|
||||
int getBuffDamageReduction();
|
||||
|
||||
/**
|
||||
* Retrieve visibility increase done by the buff item.
|
||||
*
|
||||
* @return An int, May be 0
|
||||
*/
|
||||
int getBuffVisibility();
|
||||
}
|
9
src/inf101/v18/rogue101/items/IConsumable.java
Normal file
9
src/inf101/v18/rogue101/items/IConsumable.java
Normal file
@ -0,0 +1,9 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
public interface IConsumable extends IItem {
|
||||
void hpIncrease();
|
||||
void attackIncrease();
|
||||
void defenceIncrease();
|
||||
}
|
12
src/inf101/v18/rogue101/items/IMagicWeapon.java
Normal file
12
src/inf101/v18/rogue101/items/IMagicWeapon.java
Normal file
@ -0,0 +1,12 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
interface IMagicWeapon extends IItem {
|
||||
/**
|
||||
* Retrieves the damage points of a weapon.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
int getWeaponDamage();
|
||||
}
|
12
src/inf101/v18/rogue101/items/IMeleeWeapon.java
Normal file
12
src/inf101/v18/rogue101/items/IMeleeWeapon.java
Normal file
@ -0,0 +1,12 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
interface IMeleeWeapon extends IItem {
|
||||
/**
|
||||
* Retrieves the damage points of a weapon.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
int getWeaponDamage();
|
||||
}
|
12
src/inf101/v18/rogue101/items/IRangedWeapon.java
Normal file
12
src/inf101/v18/rogue101/items/IRangedWeapon.java
Normal file
@ -0,0 +1,12 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
interface IRangedWeapon extends IItem {
|
||||
/**
|
||||
* Retrieves the damage points of a weapon.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
int getWeaponDamage();
|
||||
}
|
@ -1,12 +1,10 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.gfx.gfxmode.ITurtle;
|
||||
import inf101.v18.rogue101.game.IGame;
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
import javafx.scene.paint.Color;
|
||||
|
||||
public class Manga implements IItem {
|
||||
int hp = getMaxHealth();
|
||||
private int hp = getMaxHealth();
|
||||
|
||||
/*@Override
|
||||
public boolean draw(ITurtle painter, double w, double h) {
|
||||
|
63
src/inf101/v18/rogue101/items/Shield.java
Normal file
63
src/inf101/v18/rogue101/items/Shield.java
Normal file
@ -0,0 +1,63 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.game.IGame;
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
public class Shield implements IBuffItem {
|
||||
private final int hp = getMaxHealth();
|
||||
|
||||
@Override
|
||||
public int getBuffDamage() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBuffDefence() {
|
||||
return 10;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBuffDamageReduction() {
|
||||
return 5;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBuffVisibility() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCurrentHealth() {
|
||||
return hp;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDefence() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxHealth() {
|
||||
return 150;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Unknown shield";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSize() {
|
||||
return 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSymbol() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int handleDamage(IGame game, IItem source, int amount) {
|
||||
return 0;
|
||||
}
|
||||
}
|
53
src/inf101/v18/rogue101/items/Staff.java
Normal file
53
src/inf101/v18/rogue101/items/Staff.java
Normal file
@ -0,0 +1,53 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.game.IGame;
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class Staff implements IMagicWeapon {
|
||||
private static final Random random = new Random();
|
||||
private final int damage = 5 + random.nextInt(25);
|
||||
private int hp = getMaxHealth();
|
||||
|
||||
@Override
|
||||
public int getWeaponDamage() {
|
||||
return damage;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCurrentHealth() {
|
||||
return hp;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDefence() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxHealth() {
|
||||
return 90;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Unknown staff";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSize() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSymbol() {
|
||||
return "s";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int handleDamage(IGame game, IItem source, int amount) {
|
||||
hp -= amount;
|
||||
return amount;
|
||||
}
|
||||
}
|
53
src/inf101/v18/rogue101/items/Sword.java
Normal file
53
src/inf101/v18/rogue101/items/Sword.java
Normal file
@ -0,0 +1,53 @@
|
||||
package inf101.v18.rogue101.items;
|
||||
|
||||
import inf101.v18.rogue101.game.IGame;
|
||||
import inf101.v18.rogue101.objects.IItem;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class Sword implements IMeleeWeapon {
|
||||
private static final Random random = new Random();
|
||||
private final int damage = 5 + random.nextInt(25);
|
||||
private int hp = getMaxHealth();
|
||||
|
||||
@Override
|
||||
public int getWeaponDamage() {
|
||||
return damage;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCurrentHealth() {
|
||||
return hp;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDefence() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxHealth() {
|
||||
return 100;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "Unknown sword";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSize() {
|
||||
return 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSymbol() {
|
||||
return "S";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int handleDamage(IGame game, IItem source, int amount) {
|
||||
hp -= amount;
|
||||
return amount;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user