Files
esengine/source/src/Tiled/ObjectGroup.ts

86 lines
2.1 KiB
TypeScript
Raw Normal View History

2020-08-12 12:16:35 +08:00
module es {
export class TmxObjectGroup implements ITmxLayer {
public map: TmxMap;
public name: string;
public opacity: number;
public visible: boolean;
public offsetX: number;
public offsetY: number;
public color: number;
public drawOrder: DrawOrderType;
2020-08-13 17:39:24 +08:00
public objects: TmxObject[];
2020-08-12 12:16:35 +08:00
public properties: Map<string, string>;
}
export class TmxObject implements ITmxElement {
public id: number;
public name: string;
2020-08-13 17:39:24 +08:00
public shape: egret.Shape;
public textField: egret.TextField;
2020-08-12 12:16:35 +08:00
public objectType: TmxObjectType;
public type: string;
public x: number;
public y: number;
public width: number;
public height: number;
public rotation: number;
public tile: TmxLayerTile;
public visible: boolean;
public text: TmxText;
public points: Vector2[];
public properties: Map<string, string>;
2020-08-13 17:39:24 +08:00
constructor(){
this.shape = new egret.Shape();
this.textField = new egret.TextField();
}
2020-08-12 12:16:35 +08:00
}
export class TmxText {
public fontFamily: string;
public pixelSize: number;
public wrap: boolean;
public color: number;
public bold: boolean;
public italic: boolean;
public underline: boolean;
public strikeout: boolean;
public kerning: boolean;
public alignment: TmxAlignment;
public value: string;
}
export class TmxAlignment {
public horizontal: TmxHorizontalAlignment;
public vertical: TmxVerticalAlignment;
}
export enum TmxObjectType {
basic,
point,
tile,
ellipse,
polygon,
polyline,
text
}
export enum DrawOrderType {
unkownOrder = -1,
TopDown,
IndexOrder
}
export enum TmxHorizontalAlignment {
left,
center,
right,
justify
}
export enum TmxVerticalAlignment {
top,
center,
bottom
}
}