All pastes #819556 Raw Edit

Player.java

public java v1 · immutable
#819556 ·published 2007-12-17 01:23 UTC
rendered paste body
/**	Player class for Text Fighter	- 20070928, Cheung Ho Yin	*/import java.util.Random;public class Player {	// Instance variables	private String name = "Somebody";	private int power = 10;	private static Random r = new Random();	// Constructors	public Player( String name ){ this.name = name; }	// Methods	public String getName() { return name; }	public int getPower() { return power; }	public void addPower( int x ) { power += x; }	public boolean isDead() { return power>=0?false:true; }	public void attack( Player victim ) {		// Attack other players		System.out.printf( "%s attacks %s!\n", getName(), victim.getName() );		int diff = Math.abs( victim.getPower() - getPower() );		if(diff==0) diff=1;		if(r.nextDouble() < 0.5){ // Win! Swap power.			System.out.printf( "%s wins", getName() );			addPower( diff );			victim.addPower( -diff );		} else { // Lose! Give power difference to the other party			System.out.printf( "%s loses", getName() );			addPower( -diff );			victim.addPower( diff );		}		System.out.println();		// Is somebody dead after this turn?		if(isDead()) System.out.printf( "%s is killed!\n", getName() );		if(victim.isDead()) System.out.printf( "%s is killed!\n", victim.getName() );	}	// Test main program	public static void main( String [] args ) {		int counter=0;		System.out.print("Java Text Fighter! v20070928\n\n");		// Define new players		Player p1 = new Player("Ho Yin");		Player p2 = new Player("Justin");		do {			System.out.printf("== Round %d ==\n", ++counter);			System.out.println("Player " + p1.getName() + "'s power = " + p1.getPower());			System.out.println("Player " + p2.getName() + "'s power = " + p2.getPower());			p2.attack(p1);		} while ( !p1.isDead() && !p2.isDead() );		System.out.println("== Game over ==");		System.out.println("Player " + p1.getName() + "'s power = " + p1.getPower());		System.out.println("Player " + p2.getName() + "'s power = " + p2.getPower());	}}