27 lines
596 B
Haxe
27 lines
596 B
Haxe
|
package iron.data;
|
||
|
|
||
|
import iron.data.SceneFormat;
|
||
|
|
||
|
class CameraData {
|
||
|
|
||
|
public var name: String;
|
||
|
public var raw: TCameraData;
|
||
|
|
||
|
public function new(raw: TCameraData, done: CameraData->Void) {
|
||
|
this.raw = raw;
|
||
|
this.name = raw.name;
|
||
|
done(this);
|
||
|
}
|
||
|
|
||
|
public static function parse(name: String, id: String, done: CameraData->Void) {
|
||
|
Data.getSceneRaw(name, function(format: TSceneFormat) {
|
||
|
var raw: TCameraData = Data.getCameraRawByName(format.camera_datas, id);
|
||
|
if (raw == null) {
|
||
|
trace('Camera data "$id" not found!');
|
||
|
done(null);
|
||
|
}
|
||
|
new CameraData(raw, done);
|
||
|
});
|
||
|
}
|
||
|
}
|