//npc.java // Purpose: Dump out bare minimum Gurps NPC characters for combat // Author: Tim Jnes // Date: February 19, 2000 // Get needed class libraries import java.awt.*; import java.applet.Applet; import java.util.Random; public class npc extends Applet { Label prompt; TextField input; int number; int face; int st; int dx; int iq; int ht; int frequency[]; Random r; Button GenerateButton = new Button("Generate"); public void init() { // Setup the GUI components and initialize variables prompt = new Label("Input number of NPC's needed and press Enter:"); input = new TextField(10); frequency = new int[7]; number = 0; add(prompt); add(input); add(GenerateButton); } public void paint(Graphics g) { // Put data on screen int yPosition; yPosition = 75; g.drawString("ST", 25, 75); g.drawString(String.valueOf(st), 50, 75); g.drawString("DX", 25, 90); g.drawString(String.valueOf(dx), 50, 90); g.drawString("IQ", 25, 105); g.drawString(String.valueOf(iq), 50, 105); g.drawString("HT", 25, 120); g.drawString(String.valueOf(ht), 50, 120); input.setText(""); } public boolean action(Event event, Object o) { // Process user's action and roll die if (event.target == GenerateButton) { // User pressed return inside input field // number = Integer.parseInt(input.getText()); r = new Random(); st = 4 + Math.abs(r.nextInt() % 15); dx = 4 + Math.abs(r.nextInt() % 15); iq = 4 + Math.abs(r.nextInt() % 15); ht = 4 + Math.abs(r.nextInt() % 15); repaint(); // Post new data } return true; } }