Added submodule tscommon, shared with Succession
This commit is contained in:
parent
d82f89aeb5
commit
92764542df
|
@ -0,0 +1,3 @@
|
|||
[submodule "src/common"]
|
||||
path = src/common
|
||||
url = https://code.thunderk.net/michael/tscommon.git
|
|
@ -31,7 +31,7 @@
|
|||
<script>
|
||||
window.oncontextmenu = function (e) { e.preventDefault(); };
|
||||
window.onload = function () {
|
||||
new SpaceTac.GameUI();
|
||||
new TS.SpaceTac.GameUI();
|
||||
};
|
||||
</script>
|
||||
</body>
|
||||
|
|
|
@ -4,7 +4,7 @@ if (typeof window != "undefined") {
|
|||
(<any>window).describe = (<any>window).describe || function () { };
|
||||
}
|
||||
|
||||
module SpaceTac {
|
||||
module TS.SpaceTac {
|
||||
// Router between game views
|
||||
export class GameUI extends Phaser.Game {
|
||||
// Current game session
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Subproject commit c79c6fa24da6b065163a45139722d368f0ca6d0f
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
describe("Attribute", function () {
|
||||
it("is initially not limited", function () {
|
||||
var attr = new Attribute();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Code to identify
|
||||
export enum AttributeCode {
|
||||
// Initiative level
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
describe("AttributeCollection", function () {
|
||||
it("sets and gets an attribute value", function () {
|
||||
var coll = new AttributeCollection();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Collection of several attributes
|
||||
export class AttributeCollection extends Serializable {
|
||||
// Attributes
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
describe("Battle", function () {
|
||||
it("defines play order by initiative throws", function () {
|
||||
var fleet1 = new Fleet(null);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A turn-based battle between fleets
|
||||
export class Battle extends Serializable {
|
||||
// Flag indicating if the battle is ended
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="events/BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Check a single game log event
|
||||
function checkEvent(got: BaseLogEvent, ship: Ship, code: string,
|
||||
target_ship: Ship = null, target_x: number = null, target_y: number = null): void {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Log of a battle
|
||||
// This keeps track of all events in a battle
|
||||
// It also allows to register a callback to receive these events
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("BattleOutcome", () => {
|
||||
it("generates loot from dead ships, for the winner to take", () => {
|
||||
var fleet1 = new Fleet();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Result of an ended battle
|
||||
export class BattleOutcome extends Serializable {
|
||||
// Indicates if the battle is a draw (no winner)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("EffectTemplate", () => {
|
||||
it("interpolates between weak and strong effects", () => {
|
||||
var base_effect = new AttributeMaxEffect(AttributeCode.Hull, 6);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Modifier for a value of a BaseEffect subclass
|
||||
export class EffectTemplateModifier {
|
||||
// Value name
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("Equipment", () => {
|
||||
it("checks capabilities requirements", function () {
|
||||
var equipment = new Equipment();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Piece of equipment to attach in slots
|
||||
export class Equipment extends Serializable {
|
||||
// Actual slot this equipment is attached to
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
describe("Fleet", function () {
|
||||
it("get average level", function () {
|
||||
var fleet = new Fleet();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A fleet of ships
|
||||
export class Fleet extends Serializable {
|
||||
// Fleet owner
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Generator of balanced ships to form a fleet
|
||||
export class FleetGenerator {
|
||||
// Random generator to use
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
function applyGameSteps(session: GameSession): void {
|
||||
var battle = session.getBattle();
|
||||
battle.advanceToNextShip();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A game session, binding a universe and a player
|
||||
export class GameSession extends Serializable {
|
||||
// Game universe
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="LootTemplate.ts" />
|
||||
|
||||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
class TestTemplate extends LootTemplate {
|
||||
constructor() {
|
||||
super(SlotType.Shield, "Hexagrid Shield");
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Equipment generator from loot templates
|
||||
export class LootGenerator {
|
||||
// List of available templates
|
||||
|
@ -21,9 +21,9 @@ module SpaceTac.Game {
|
|||
// Fill the list of templates
|
||||
populate(): void {
|
||||
var templates: LootTemplate[] = [];
|
||||
for (var template_name in SpaceTac.Game.Equipments) {
|
||||
for (var template_name in TS.SpaceTac.Game.Equipments) {
|
||||
if (template_name) {
|
||||
var template_class = SpaceTac.Game.Equipments[template_name];
|
||||
var template_class = TS.SpaceTac.Game.Equipments[template_name];
|
||||
var template: LootTemplate = new template_class();
|
||||
templates.push(template);
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("LootTemplate", () => {
|
||||
it("interpolates between weak and strong loot", () => {
|
||||
var template = new LootTemplate(SlotType.Weapon, "Bulletator");
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Template used to generate a loot equipment
|
||||
export class LootTemplate extends Serializable {
|
||||
// Type of slot this equipment will fit in
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("NameGenerator", () => {
|
||||
it("generates unique names", () => {
|
||||
var random = new RandomGenerator(0.48, 0.9, 0.1);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A unique name generator
|
||||
export class NameGenerator {
|
||||
// List of available choices
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// One player (human or IA)
|
||||
export class Player extends Serializable {
|
||||
// Universe in which we are playing
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Random generator, used in all throws
|
||||
export class RandomGenerator extends Serializable {
|
||||
// Array of next values, empty for a correct generator
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
function checkProportional(range: Range, value1: number, value2: number) {
|
||||
expect(range.getProportional(value1)).toEqual(value2);
|
||||
expect(range.getReverseProportional(value2)).toEqual(value1);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Range of number values
|
||||
export class Range extends Serializable {
|
||||
// Minimal value
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Base class for serializable objects
|
||||
export class Serializable {
|
||||
static _next_sid: number = 0;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
export class SerializableTestObj3 extends Serializable {
|
||||
a: boolean;
|
||||
b: SerializableTestObj1;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Serializer to cascade through Serializable objects
|
||||
export class Serializer {
|
||||
// Mapping of IDs to objects
|
||||
|
@ -29,7 +29,7 @@ module SpaceTac.Game {
|
|||
}
|
||||
return result;
|
||||
} else {
|
||||
return this.collectSerializableClasses(SpaceTac.Game, "SpaceTac.Game");
|
||||
return this.collectSerializableClasses(TS.SpaceTac.Game, "SpaceTac.Game");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("Ship", function () {
|
||||
it("moves and computes facing angle", function () {
|
||||
var ship = new Ship(null, "Test");
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A single ship in a Fleet
|
||||
export class Ship extends Serializable {
|
||||
// Fleet this ship is a member of
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("ShipGenerator", function () {
|
||||
it("can use ship model", function () {
|
||||
var gen = new ShipGenerator();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Generator of random ship
|
||||
export class ShipGenerator {
|
||||
// Random number generator used
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A model of ship
|
||||
// It defines the ship looks, and available slots for equipment
|
||||
export class ShipModel {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("Slot", () => {
|
||||
it("checks equipment type", () => {
|
||||
var ship = new Ship();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Types of slots
|
||||
export enum SlotType {
|
||||
Armor,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("Star", () => {
|
||||
it("lists links to other stars", () => {
|
||||
var universe = new Universe();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// A star system
|
||||
export class Star extends Serializable {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("StarLink", () => {
|
||||
it("checks link intersection", () => {
|
||||
var star1 = new Star(null, 0, 0);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// An hyperspace link between two star systems
|
||||
export class StarLink extends Serializable {
|
||||
// Stars
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("StarLocation", () => {
|
||||
it("removes generated encounters that lose", function () {
|
||||
var location = new StarLocation(null, StarLocationType.PLANET, 0, 0);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
export enum StarLocationType {
|
||||
STAR,
|
||||
WARP,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("Target", () => {
|
||||
it("initializes from ship or location", () => {
|
||||
var target: Target;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Find the nearest intersection between a line and a circle
|
||||
// Circle is supposed to be centered at (0,0)
|
||||
// Nearest intersection to (x1,y1) is returned
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// unit testing utilities
|
||||
export class TestTools {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
class TestObj {
|
||||
a: string;
|
||||
b: any;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Generic tools functions
|
||||
export class Tools {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("Universe", () => {
|
||||
it("generates star systems", () => {
|
||||
var universe = new Universe();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Main game universe
|
||||
export class Universe extends Serializable {
|
||||
// List of star systems
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
describe("BaseAction", function () {
|
||||
it("check if equipment can be used with remaining AP", function () {
|
||||
var equipment = new Equipment(SlotType.Armor);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Base class for action definitions
|
||||
export class BaseAction extends Serializable {
|
||||
// Identifier code for the type of action
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("EndTurnAction", () => {
|
||||
it("can't be applied to non-playing ship", () => {
|
||||
var battle = Battle.newQuickRandom();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Action to end the ship's turn
|
||||
export class EndTurnAction extends BaseAction {
|
||||
constructor() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseAction.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Action to fire a weapon on another ship, or in space
|
||||
export class FireWeaponAction extends BaseAction {
|
||||
// Boolean set to true if the weapon can target space
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
describe("MoveAction", function () {
|
||||
it("checks movement against remaining AP", function () {
|
||||
var ship = new Ship();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Action to move to a given location
|
||||
export class MoveAction extends BaseAction {
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game.AI {
|
||||
module TS.SpaceTac.Game.AI {
|
||||
// Base class for all Artificial Intelligence interaction
|
||||
export class AbstractAI extends Serializable {
|
||||
// The fleet controlled by this AI
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.AI.Specs {
|
||||
module TS.SpaceTac.Game.AI.Specs {
|
||||
describe("BullyAI", function () {
|
||||
it("lists enemies", function () {
|
||||
var battle = new Battle();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/// <reference path="AbstractAI.ts"/>
|
||||
module SpaceTac.Game.AI {
|
||||
module TS.SpaceTac.Game.AI {
|
||||
// Combination of a move action and a fire action
|
||||
export class BullyManeuver {
|
||||
// Move action to position the ship before firing
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.AI {
|
||||
module TS.SpaceTac.Game.AI {
|
||||
// Ship maneuver for an artifical intelligence
|
||||
// A maneuver is like a human player action, choosing an equipment and using it
|
||||
export class Maneuver {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.AI {
|
||||
module TS.SpaceTac.Game.AI {
|
||||
// A chain of Maneuver to execute sequentially
|
||||
export class ManeuverSequence {
|
||||
// Concerned ship
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseEffect.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Hard limitation on attribute value
|
||||
// For example, this could be used to slow a target by limiting its action points
|
||||
export class AttributeLimitEffect extends BaseEffect {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseEffect.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Effect on attribute maximum
|
||||
// Typically, these effects are summed up to define an attribute maximum
|
||||
export class AttributeMaxEffect extends BaseEffect {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseEffect.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Effect on attribute value
|
||||
// Typically, these effects are summed up to define an attribute value
|
||||
export class AttributeValueEffect extends BaseEffect {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Base class for effects of actions
|
||||
// Effects are typically one shot, but sticky effects can be used to apply effects over a period
|
||||
export class BaseEffect extends Serializable {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseEffect.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Apply damage to a ship
|
||||
export class DamageEffect extends BaseEffect {
|
||||
// Base damage points
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseEffect.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
/**
|
||||
* Wrapper around another effect, to make it stick to a ship.
|
||||
*
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("AbstractWeapon", function () {
|
||||
it("has fire action, and damage effects on target", function () {
|
||||
var weapon = new Equipments.AbstractWeapon("Super Fire Weapon", 50, 60);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../LootTemplate.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
// Base convenience class for weapons
|
||||
export class AbstractWeapon extends LootTemplate {
|
||||
// Boolean set to true if the weapon can target space
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../LootTemplate.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
export class BasicForceField extends LootTemplate {
|
||||
constructor() {
|
||||
super(SlotType.Shield, "Basic Force Field");
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../LootTemplate.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
export class BasicPowerCore extends LootTemplate {
|
||||
constructor() {
|
||||
super(SlotType.Power, "Basic Power Core");
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../LootTemplate.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
// Equipment: Conventional Engine
|
||||
export class ConventionalEngine extends LootTemplate {
|
||||
constructor() {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("EnergyDepleter", () => {
|
||||
it("limits target's AP", () => {
|
||||
var template = new Equipments.EnergyDepleter();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="AbstractWeapon.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
export class EnergyDepleter extends AbstractWeapon {
|
||||
constructor() {
|
||||
super("Energy Depleter");
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="AbstractWeapon.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
export class GatlingGun extends AbstractWeapon {
|
||||
constructor() {
|
||||
super("Gatling Gun", 50, 100);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../LootTemplate.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
export class IronHull extends LootTemplate {
|
||||
constructor() {
|
||||
super(SlotType.Armor, "IronHull");
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.Game.Specs {
|
||||
module TS.SpaceTac.Game.Specs {
|
||||
describe("SubMunitionMissile", () => {
|
||||
it("hits several targets in circle", () => {
|
||||
var battle = TestTools.createBattle(1, 2);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="AbstractWeapon.ts"/>
|
||||
|
||||
module SpaceTac.Game.Equipments {
|
||||
module TS.SpaceTac.Game.Equipments {
|
||||
export class SubMunitionMissile extends AbstractWeapon {
|
||||
constructor() {
|
||||
super("SubMunition Missile", 30, 50);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a ship moves
|
||||
export class AttributeChangeEvent extends BaseLogEvent {
|
||||
// Saved version of the attribute
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="../Serializable.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Base class for a BattleLog event
|
||||
export class BaseLogEvent extends Serializable {
|
||||
// Code of the event (its type)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a ship takes damage
|
||||
export class DamageEvent extends BaseLogEvent {
|
||||
// Damage to hull
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a ship is dead
|
||||
export class DeathEvent extends BaseLogEvent {
|
||||
constructor(ship: Ship) {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a sticky effect is added to a ship
|
||||
export class EffectAddedEvent extends BaseLogEvent {
|
||||
// Pointer to the effect
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a sticky effect is added to a ship
|
||||
export class EffectDurationChangedEvent extends BaseLogEvent {
|
||||
// Pointer to the effect
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a sticky effect is removed from a ship
|
||||
export class EffectRemovedEvent extends BaseLogEvent {
|
||||
// Pointer to the effect
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when the battle ended
|
||||
// This is always the last event of a battle log
|
||||
export class EndBattleEvent extends BaseLogEvent {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a weapon is used on a target
|
||||
export class FireEvent extends BaseLogEvent {
|
||||
// Weapon used
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Event logged when a ship moves
|
||||
export class MoveEvent extends BaseLogEvent {
|
||||
// New facing angle, in radians
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseLogEvent.ts"/>
|
||||
|
||||
module SpaceTac.Game {
|
||||
module TS.SpaceTac.Game {
|
||||
// Battle event, when a ship turn ended, and advanced to a new one
|
||||
export class ShipChangeEvent extends BaseLogEvent {
|
||||
constructor(ship: Ship, new_ship: Ship) {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.View {
|
||||
module TS.SpaceTac.View {
|
||||
// Base class for all game views
|
||||
export class BaseView extends Phaser.State {
|
||||
// Link to the root UI
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
module SpaceTac.View {
|
||||
module TS.SpaceTac.View {
|
||||
export class Boot extends Phaser.State {
|
||||
preload() {
|
||||
this.load.image("preload-background", "assets/images/preload/bar-background.png");
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseView.ts"/>
|
||||
|
||||
module SpaceTac.View {
|
||||
module TS.SpaceTac.View {
|
||||
export class MainMenu extends BaseView {
|
||||
group: Phaser.Group;
|
||||
button_new_game: Phaser.Button;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/// <reference path="BaseView.ts"/>
|
||||
|
||||
module SpaceTac.View {
|
||||
module TS.SpaceTac.View {
|
||||
export class Preload extends BaseView {
|
||||
private preloadBar: Phaser.Image;
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue