1
0
Fork 0

Refactored namespaces

This commit is contained in:
Michaël Lemaire 2017-02-09 01:00:35 +01:00
parent eb75658a10
commit bee43583ca
141 changed files with 305 additions and 302 deletions

3
TODO
View file

@ -1,6 +1,9 @@
* Restore serialization
* Drones: add tooltip
* Drones: add hull points and take area damage
* Drones: change the sprite angle for deploy animation
* Better display of effects over ship sprite (repairs, sticky effects...)
* Add a battle log display
* Organize arena objects and information in layers
* Allow to cancel last moves
* Add more visual effects to weapons, hits and explosions

View file

@ -31,7 +31,7 @@
<script>
window.oncontextmenu = function (e) { e.preventDefault(); };
window.onload = function () {
new TS.SpaceTac.GameUI();
new TS.SpaceTac.MainUI();
};
</script>
</body>

View file

@ -6,30 +6,30 @@ if (typeof window != "undefined") {
module TS.SpaceTac {
// Router between game views
export class GameUI extends Phaser.Game {
export class MainUI extends Phaser.Game {
// Current game session
session: Game.GameSession;
session: GameSession;
// Current focused star system
star: Game.Star;
star: Star;
// Audio manager
audio: View.Audio;
audio: UI.Audio;
constructor(headless: boolean = false) {
super(1920, 1080, headless ? Phaser.HEADLESS : Phaser.AUTO, '-space-tac');
this.audio = new View.Audio(this);
this.audio = new UI.Audio(this);
this.session = new Game.GameSession();
this.session = new GameSession();
this.star = null;
this.state.add('boot', View.Boot);
this.state.add('preload', View.Preload);
this.state.add('mainmenu', View.MainMenu);
this.state.add('router', View.Router);
this.state.add('battle', View.BattleView);
this.state.add('universe', View.UniverseMapView);
this.state.add('boot', UI.Boot);
this.state.add('preload', UI.Preload);
this.state.add('mainmenu', UI.MainMenu);
this.state.add('router', UI.Router);
this.state.add('battle', UI.BattleView);
this.state.add('universe', UI.UniverseMapView);
this.state.start('boot');
}
@ -38,10 +38,10 @@ module TS.SpaceTac {
saveGame(): boolean {
if (typeof (Storage) !== "undefined") {
localStorage.setItem("spacetac-savegame", this.session.saveToString());
(<View.BaseView>this.state.getCurrentState()).messages.addMessage("Game saved");
(<UI.BaseView>this.state.getCurrentState()).messages.addMessage("Game saved");
return true;
} else {
(<View.BaseView>this.state.getCurrentState()).messages.addMessage("Your browser does not support saving");
(<UI.BaseView>this.state.getCurrentState()).messages.addMessage("Your browser does not support saving");
return false;
}
}
@ -51,7 +51,7 @@ module TS.SpaceTac {
if (typeof (Storage) !== "undefined") {
var loaded = localStorage.getItem("spacetac-savegame");
if (loaded) {
this.session = Game.GameSession.loadFromString(loaded);
this.session = GameSession.loadFromString(loaded);
console.log("Game loaded");
return true;
} else {
@ -65,7 +65,7 @@ module TS.SpaceTac {
}
// Get the focuses star system
getFocusedStar(): Game.Star {
getFocusedStar(): Star {
if (this.star && this.star.universe === this.session.universe) {
return this.star;
} else {

@ -1 +1 @@
Subproject commit 6d16fc0a5b50aa53c68c09fda2d0d3c5ec22b02d
Subproject commit 795267025bbe1f67c33645af12096dd57a8f1109

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("Battle", function () {
it("defines play order by initiative throws", function () {
var fleet1 = new Fleet(null);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// A turn-based battle between fleets
export class Battle {
// Flag indicating if the battle is ended

View file

@ -1,6 +1,6 @@
/// <reference path="events/BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// 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 {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Log of a battle
// This keeps track of all events in a battle
// It also allows to register a callback to receive these events

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("BattleOutcome", () => {
it("generates loot from dead ships, for the winner to take", () => {
var fleet1 = new Fleet();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Result of an ended battle
export class BattleOutcome {
// Indicates if the battle is a draw (no winner)

View file

@ -1,6 +1,6 @@
/// <reference path="effects/BaseEffect.ts" />
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Fake effect to capture apply requests
*/

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Drones are static objects that apply effects in a circular zone around themselves.
*/

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("EffectTemplate", () => {
it("interpolates between weak and strong effects", () => {
var base_effect = new AttributeEffect("hull_capacity", 6);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Modifier for a value of a BaseEffect subclass
export class EffectTemplateModifier {
// Value name

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("Equipment", () => {
it("checks capabilities requirements", function () {
var equipment = new Equipment();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Piece of equipment to attach in slots
export class Equipment {
// Actual slot this equipment is attached to

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("Fleet", function () {
it("get average level", function () {
var fleet = new Fleet();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// A fleet of ships
export class Fleet {
// Fleet owner

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Generator of balanced ships to form a fleet
export class FleetGenerator {
// Random generator to use

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
function applyGameSteps(session: GameSession): void {
var battle = session.getBattle();
battle.advanceToNextShip();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// A game session, binding a universe and a player
export class GameSession {
// Game universe
@ -14,13 +14,13 @@ module TS.SpaceTac.Game {
// Load a game state from a string
static loadFromString(serialized: string): GameSession {
var serializer = new Serializer();
var serializer = new Serializer(TS.SpaceTac);
return <GameSession>serializer.unserialize(serialized);
}
// Serializes the game state to a string
saveToString(): string {
var serializer = new Serializer();
var serializer = new Serializer(TS.SpaceTac);
return serializer.serialize(this);
}
@ -35,14 +35,14 @@ module TS.SpaceTac.Game {
start_location.encounter_gen = true;
start_location.encounter = null;
this.player = new Game.Player(this.universe);
this.player = new Player(this.universe);
this.player.fleet = fleet_generator.generate(1, this.player);
this.player.fleet.setLocation(start_location);
}
// Start a new "quick battle" game
startQuickBattle(with_ai: boolean = false): void {
var battle = Game.Battle.newQuickRandom(with_ai);
var battle = Battle.newQuickRandom(with_ai);
this.player = battle.fleets[0].player;
this.player.setBattle(battle);
}

View file

@ -1,6 +1,6 @@
/// <reference path="LootTemplate.ts" />
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
class TestTemplate extends LootTemplate {
constructor() {
super(SlotType.Shield, "Hexagrid Shield");

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Equipment generator from loot templates
export class LootGenerator {
// List of available templates
@ -21,9 +21,9 @@ module TS.SpaceTac.Game {
// Fill the list of templates
populate(): void {
var templates: LootTemplate[] = [];
for (var template_name in TS.SpaceTac.Game.Equipments) {
for (var template_name in TS.SpaceTac.Equipments) {
if (template_name && template_name.indexOf("Abstract") != 0) {
var template_class = TS.SpaceTac.Game.Equipments[template_name];
var template_class = TS.SpaceTac.Equipments[template_name];
var template: LootTemplate = new template_class();
templates.push(template);
}

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("LootTemplate", () => {
it("interpolates between weak and strong loot", () => {
var template = new LootTemplate(SlotType.Weapon, "Bulletator");

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Template used to generate a loot equipment
export class LootTemplate {
// Type of slot this equipment will fit in

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("MoveFireSimulator", function () {
function simpleWeaponCase(distance = 10, ship_ap = 5, weapon_ap = 3, engine_distance = 5): [Ship, MoveFireSimulator, BaseAction] {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* A single action in the sequence result from the simulator

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("NameGenerator", () => {
it("generates unique names", () => {
var random = new RandomGenerator(0.48, 0.9, 0.1);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// A unique name generator
export class NameGenerator {
// List of available choices

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("Player", function () {
it("keeps track of visited locations", function () {
let player = new Player();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// One player (human or IA)
export class Player {
// Universe in which we are playing

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Random generator, used in all throws
export class RandomGenerator {
// Array of next values, empty for a correct generator

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
function checkProportional(range: Range, value1: number, value2: number) {
expect(range.getProportional(value1)).toEqual(value2);
expect(range.getReverseProportional(value2)).toEqual(value1);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Range of number values
export class Range {
// Minimal value

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("Ship", function () {
it("moves and computes facing angle", function () {
var ship = new Ship(null, "Test");

View file

@ -1,7 +1,7 @@
/// <reference path="ShipAttribute.ts"/>
/// <reference path="ShipValue.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Set of ShipAttribute for a ship

View file

@ -1,6 +1,6 @@
/// <reference path="ShipValue.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* A ship attribute is a value computed by a sum of contributions from equipments and sticky effects.
*

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("ShipGenerator", function () {
it("can use ship model", function () {
var gen = new ShipGenerator();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Generator of random ship
export class ShipGenerator {
// Random number generator used

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// A model of ship
// It defines the ship looks, and available slots for equipment
export class ShipModel {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("ShipValue", function () {
it("is initially not limited", function () {
var attr = new ShipValue("test");

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* A ship value is a number that may vary and be constrained in a given range.
*/

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("Slot", () => {
it("checks equipment type", () => {
var ship = new Ship();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Types of slots
export enum SlotType {
Armor,

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("Star", () => {
it("lists links to other stars", () => {
var universe = new Universe();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// A star system
export class Star {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("StarLink", () => {
it("checks link intersection", () => {
var star1 = new Star(null, 0, 0);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// An hyperspace link between two star systems
export class StarLink {
// Stars

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("StarLocation", () => {
it("removes generated encounters that lose", function () {
var location = new StarLocation(null, StarLocationType.PLANET, 0, 0);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
export enum StarLocationType {
STAR,
WARP,

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("Target", () => {
it("initializes from ship or location", () => {
var target: Target;

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// 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

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// unit testing utilities
export class TestTools {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("Universe", () => {
it("generates star systems", () => {
var universe = new Universe();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Main game universe
export class Universe {
// List of star systems

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("BaseAction", function () {
it("check if equipment can be used with remaining AP", function () {
var equipment = new Equipment(SlotType.Armor);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Base class for action definitions
export class BaseAction {
// Identifier code for the type of action

View file

@ -1,6 +1,6 @@
/// <reference path="../effects/BaseEffect.ts" />
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("DeployDroneAction", function () {
it("stores useful information", function () {
let equipment = new Equipment(SlotType.Weapon, "testdrone");

View file

@ -1,6 +1,6 @@
/// <reference path="BaseAction.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Action to deploy a drone in space
*/

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("EndTurnAction", () => {
it("can't be applied to non-playing ship", () => {
var battle = Battle.newQuickRandom();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Action to end the ship's turn
export class EndTurnAction extends BaseAction {
constructor() {

View file

@ -1,6 +1,6 @@
/// <reference path="BaseAction.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// 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

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("MoveAction", function () {
it("checks movement against remaining AP", function () {
var ship = new Ship();

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Action to move to a given location
export class MoveAction extends BaseAction {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.AI {
module TS.SpaceTac.AI {
// Base class for all Artificial Intelligence interaction
export class AbstractAI {
// The fleet controlled by this AI

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.AI.Specs {
module TS.SpaceTac.AI.Specs {
describe("BullyAI", function () {
it("lists enemies", function () {
var battle = new Battle();

View file

@ -1,5 +1,5 @@
/// <reference path="AbstractAI.ts"/>
module TS.SpaceTac.Game.AI {
module TS.SpaceTac.AI {
// Combination of a move action and a fire action
export class BullyManeuver {
// Move action to position the ship before firing

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.AI {
module TS.SpaceTac.AI {
// Ship maneuver for an artifical intelligence
// A maneuver is like a human player action, choosing an equipment and using it
export class Maneuver {

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.AI {
module TS.SpaceTac.AI {
// A chain of Maneuver to execute sequentially
export class ManeuverSequence {
// Concerned ship

View file

@ -1,6 +1,6 @@
/// <reference path="BaseEffect.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Effect to modify an attribute.
*

View file

@ -1,6 +1,6 @@
/// <reference path="BaseEffect.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Enforce a limitation on ship attribute final value
*

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// 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 {

View file

@ -1,6 +1,6 @@
/// <reference path="BaseEffect.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Apply damage on a ship.
*

View file

@ -1,6 +1,6 @@
/// <reference path="BaseEffect.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Wrapper around another effect, to make it stick to a ship.
*

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
describe("ValueEffect", function () {
it("adds an amount to a ship value", function () {
let effect = new ValueEffect("shield", 20);

View file

@ -1,6 +1,6 @@
/// <reference path="BaseEffect.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
/**
* Effect to add (or subtract if negative) an amount to a ship value.
*

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
describe("AbstractDrone", function () {
it("can be configured", function () {
let template = new AbstractDrone("test");

View file

@ -1,6 +1,6 @@
/// <reference path="../LootTemplate.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
/**
* Base class for all weapon equipment that deploys a drone.
*/

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("AbstractWeapon", function () {
it("has fire action, and damage effects on target", function () {
var weapon = new Equipments.AbstractWeapon("Super Fire Weapon", 50, 60);

View file

@ -1,6 +1,6 @@
/// <reference path="../LootTemplate.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
// Base convenience class for weapons
export class AbstractWeapon extends LootTemplate {
// Boolean set to true if the weapon can target space

View file

@ -1,6 +1,6 @@
/// <reference path="../LootTemplate.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
export class BasicForceField extends LootTemplate {
constructor() {
super(SlotType.Shield, "Basic Force Field");

View file

@ -1,6 +1,6 @@
/// <reference path="../LootTemplate.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
export class BasicPowerCore extends LootTemplate {
constructor() {
super(SlotType.Power, "Basic Power Core");

View file

@ -1,6 +1,6 @@
/// <reference path="../LootTemplate.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
// Equipment: Conventional Engine
export class ConventionalEngine extends LootTemplate {
constructor() {

View file

@ -1,6 +1,6 @@
/// <reference path="AbstractWeapon.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
export class GatlingGun extends AbstractWeapon {
constructor() {
super("Gatling Gun", 50, 100);

View file

@ -1,6 +1,6 @@
/// <reference path="../LootTemplate.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
export class IronHull extends LootTemplate {
constructor() {
super(SlotType.Armor, "IronHull");

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("PowerDepleter", () => {
it("limits target's AP", () => {
var template = new Equipments.PowerDepleter();

View file

@ -1,6 +1,6 @@
/// <reference path="AbstractWeapon.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
export class PowerDepleter extends AbstractWeapon {
constructor() {
super("Power Depleter");

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
describe("RepairDrone", function () {
it("generates a drone that may repair ships hull", function () {
let template = new RepairDrone();

View file

@ -1,6 +1,6 @@
/// <reference path="AbstractDrone.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
/**
* Drone that repairs damage done to the hull.
*/

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game.Specs {
module TS.SpaceTac.Specs {
describe("SubMunitionMissile", () => {
it("hits several targets in circle", () => {
var battle = TestTools.createBattle(1, 2);

View file

@ -1,6 +1,6 @@
/// <reference path="AbstractWeapon.ts"/>
module TS.SpaceTac.Game.Equipments {
module TS.SpaceTac.Equipments {
export class SubMunitionMissile extends AbstractWeapon {
constructor() {
super("SubMunition Missile", 30, 50);

View file

@ -1,4 +1,4 @@
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Base class for a BattleLog event
export class BaseLogEvent {
// Code of the event (its type)

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a ship takes damage
export class DamageEvent extends BaseLogEvent {
// Damage to hull

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a ship is dead
export class DeathEvent extends BaseLogEvent {
constructor(ship: Ship) {

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a drone is deployed by a ship
export class DroneDeployedEvent extends BaseLogEvent {
// Pointer to the drone

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a drone is destroyed
export class DroneDestroyedEvent extends BaseLogEvent {
// Pointer to the drone

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a sticky effect is added to a ship
export class EffectAddedEvent extends BaseLogEvent {
// Pointer to the effect

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a sticky effect is added to a ship
export class EffectDurationChangedEvent extends BaseLogEvent {
// Pointer to the effect

View file

@ -1,6 +1,6 @@
/// <reference path="BaseLogEvent.ts"/>
module TS.SpaceTac.Game {
module TS.SpaceTac {
// Event logged when a sticky effect is removed from a ship
export class EffectRemovedEvent extends BaseLogEvent {
// Pointer to the effect

Some files were not shown because too many files have changed in this diff Show more