ported game data
This commit is contained in:
3
src/app/components/game/data/GdEnemy.ts
Normal file
3
src/app/components/game/data/GdEnemy.ts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
export interface GdEnemy {
|
||||||
|
speed: number;
|
||||||
|
}
|
||||||
12
src/app/components/game/data/GdLevel.ts
Normal file
12
src/app/components/game/data/GdLevel.ts
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import { Hex } from "../util/Hex";
|
||||||
|
import { GdWave } from "./GdWave";
|
||||||
|
|
||||||
|
export interface GdLevel {
|
||||||
|
radius: number;
|
||||||
|
currency: number;
|
||||||
|
walls: Hex[];
|
||||||
|
enemySpawns: Hex[];
|
||||||
|
enemyTargets: Hex[];
|
||||||
|
enemyRoutes: number[][];
|
||||||
|
waves: GdWave[];
|
||||||
|
}
|
||||||
7
src/app/components/game/data/GdProjectileEffect.ts
Normal file
7
src/app/components/game/data/GdProjectileEffect.ts
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
import { EProjectileEffectType } from "./EProjectileEffectType";
|
||||||
|
|
||||||
|
export interface GdProjectileEffect {
|
||||||
|
type: EProjectileEffectType;
|
||||||
|
amount: number;
|
||||||
|
speed: number;
|
||||||
|
}
|
||||||
11
src/app/components/game/data/GdRoot.ts
Normal file
11
src/app/components/game/data/GdRoot.ts
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import { GdEnemy } from "./GdEnemy";
|
||||||
|
import { GdLevel } from "./GdLevel";
|
||||||
|
import { GdSimulation } from "./GdSimulation";
|
||||||
|
import { GdTower } from "./GdTower";
|
||||||
|
|
||||||
|
export interface GdRoot {
|
||||||
|
enemies: GdEnemy[];
|
||||||
|
towers: GdTower[];
|
||||||
|
levels: GdLevel[];
|
||||||
|
simulation: GdSimulation;
|
||||||
|
}
|
||||||
5
src/app/components/game/data/GdSimulation.ts
Normal file
5
src/app/components/game/data/GdSimulation.ts
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
export interface GdSimulation {
|
||||||
|
stepsPerSecond: number;
|
||||||
|
waveDuration: number;
|
||||||
|
spawnDelay: number;
|
||||||
|
}
|
||||||
12
src/app/components/game/data/GdTower.ts
Normal file
12
src/app/components/game/data/GdTower.ts
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import { GdProjectileEffect } from "./GdProjectileEffect";
|
||||||
|
|
||||||
|
export interface GdTower {
|
||||||
|
cost: number;
|
||||||
|
projectileEffect: GdProjectileEffect | null;
|
||||||
|
projectileRange: number;
|
||||||
|
projectileRate: number;
|
||||||
|
projectileSize: number;
|
||||||
|
aoeEffect: GdProjectileEffect | null;
|
||||||
|
aoeRange: number;
|
||||||
|
aoeRate: number;
|
||||||
|
}
|
||||||
9
src/app/components/game/data/GdWave.ts
Normal file
9
src/app/components/game/data/GdWave.ts
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
import { EEnemySize } from "./EEnemySize";
|
||||||
|
|
||||||
|
export interface GdWave {
|
||||||
|
enemy: number;
|
||||||
|
size: EEnemySize;
|
||||||
|
amount: number;
|
||||||
|
gain: number;
|
||||||
|
hitpoints: number;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user