fix blades data cloning on c++
This commit is contained in:
@@ -121,7 +121,11 @@ class CreatureData {
|
||||
public function clone():CreatureData {
|
||||
var cd = new CreatureData();
|
||||
for (field in CreatureData.getInstanceFields()) {
|
||||
cd.setField(field, this.field(field));
|
||||
try {
|
||||
cd.setField(field, this.field(field));
|
||||
} catch (e) {
|
||||
// can't set functions in c++
|
||||
}
|
||||
}
|
||||
return cd;
|
||||
}
|
||||
|
@@ -34,7 +34,11 @@ class FloorData {
|
||||
public function clone():FloorData {
|
||||
var fd = new FloorData();
|
||||
for (field in FloorData.getInstanceFields()) {
|
||||
fd.setField(field, this.field(field));
|
||||
try {
|
||||
fd.setField(field, this.field(field));
|
||||
} catch (e) {
|
||||
// can't set functions in c++
|
||||
}
|
||||
}
|
||||
return fd;
|
||||
}
|
||||
|
@@ -37,7 +37,11 @@ class ItemData {
|
||||
public function clone():ItemData {
|
||||
var id = new ItemData();
|
||||
for (field in ItemData.getInstanceFields()) {
|
||||
id.setField(field, this.field(field));
|
||||
try {
|
||||
id.setField(field, this.field(field));
|
||||
} catch (e) {
|
||||
// can't set functions in c++
|
||||
}
|
||||
}
|
||||
return id;
|
||||
}
|
||||
|
@@ -255,9 +255,10 @@ class ScenData {
|
||||
|
||||
try {
|
||||
interp.execute(parser.parseString(line));
|
||||
} catch (e) {
|
||||
}
|
||||
catch (e) {
|
||||
trace('line `$line` failed because $e');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -66,7 +66,11 @@ class TerrainData {
|
||||
public function clone():TerrainData {
|
||||
var td = new TerrainData();
|
||||
for (field in TerrainData.getInstanceFields()) {
|
||||
td.setField(field, this.field(field));
|
||||
try {
|
||||
td.setField(field, this.field(field));
|
||||
} catch (e) {
|
||||
// can't set functions in c++
|
||||
}
|
||||
}
|
||||
return td;
|
||||
}
|
||||
|
Reference in New Issue
Block a user