91 if (cache_current !=
config->
Current || floorcache_firstrun ==
true)
94 cache_current_s =
ToString(cache_current);
96 if (cache_height != floor->
Height || floorcache_firstrun ==
true)
98 cache_height = floor->
Height;
99 cache_height_s =
ToString(cache_height);
101 if (cache_fullheight != floor->
FullHeight() || floorcache_firstrun ==
true)
104 cache_fullheight_s =
ToString(cache_fullheight);
106 if (cache_interfloorheight != floor->
InterfloorHeight || floorcache_firstrun ==
true)
109 cache_interfloorheight_s =
ToString(cache_interfloorheight);
111 if (cache_base != floor->
GetBase() || floorcache_firstrun ==
true)
114 cache_base_s =
ToString(cache_base);
117 floorcache_firstrun =
false;
131 if (parent->getfloordata ==
true)
143 if (parent->FunctionProc() ==
true)
148 std::string value = GetAfterEquals(
LineData, equals);
157 std::string str =
Calc(value);
170 std::string str =
Calc(value);
183 std::string str =
Calc(value);
243 int params = SplitAfterEquals(
LineData,
false);
250 if (GetRange(tempdata[
line], start, end) ==
true)
252 for (
int k = start; k <= end; k++)
258 std::string str =
Calc(tempdata[
line]);
289 int params = SplitData(
LineData, 9);
291 if (params != 12 && params != 14)
292 return ScriptError(
"Incorrect number of parameters");
301 for (
int i = 2; i <= 10; i++)
304 return ScriptError(
"Invalid value: " + tempdata[i]);
306 if (warn_deprecated ==
true)
311 for (
int i = 2; i <= 12; i++)
316 return ScriptError(
"Invalid value: " + tempdata[i]);
326 StoreCommand(floor->
AddFloor(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
config->
ReverseAxis,
false,
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToBool(tempdata[11]),
true));
328 StoreCommand(floor->
AddFloor(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToBool(tempdata[9]),
ToBool(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToBool(tempdata[13])));
336 int params = SplitData(
LineData, 14);
338 if (params != 12 && params != 14)
339 return ScriptError(
"Incorrect number of parameters");
348 for (
int i = 3; i <= 11; i++)
353 return ScriptError(
"Invalid value: " + tempdata[i]);
355 if (warn_deprecated ==
true)
360 for (
int i = 3; i <= 13; i++)
367 return ScriptError(
"Invalid value: " + tempdata[i]);
387 StoreCommand(level->
AddFloor(tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
config->
ReverseAxis,
false,
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
true));
389 StoreCommand(level->
AddFloor(tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToBool(tempdata[10]),
ToBool(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13])));
392 return ScriptError(
"Invalid shaft " + tempdata[0]);
400 int params = SplitData(
LineData, 14);
402 if (params != 12 && params != 14)
403 return ScriptError(
"Incorrect number of parameters");
412 for (
int i = 3; i <= 11; i++)
417 return ScriptError(
"Invalid value: " + tempdata[i]);
419 if (warn_deprecated ==
true)
424 for (
int i = 3; i <= 13; i++)
431 return ScriptError(
"Invalid value: " + tempdata[i]);
451 StoreCommand(level->
AddFloor(tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
config->
ReverseAxis,
false,
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
true));
453 StoreCommand(level->
AddFloor(tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToBool(tempdata[10]),
ToBool(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13])));
456 return ScriptError(
"Invalid stairwell " + tempdata[0]);
464 int params = SplitData(
LineData, 19);
466 if (params != 11 && params != 13)
467 return ScriptError(
"Incorrect number of parameters");
476 for (
int i = 2; i <= 10; i++)
479 return ScriptError(
"Invalid value: " + tempdata[i]);
481 if (warn_deprecated ==
true)
486 for (
int i = 2; i <= 12; i++)
491 return ScriptError(
"Invalid value: " + tempdata[i]);
501 StoreCommand(floor->
AddInterfloorFloor(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
config->
ReverseAxis,
false,
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
true));
503 StoreCommand(floor->
AddInterfloorFloor(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToBool(tempdata[9]),
ToBool(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12])));
511 int params = SplitData(
LineData, 8);
514 return ScriptError(
"Incorrect number of parameters");
517 for (
int i = 2; i <= 12; i++)
520 return ScriptError(
"Invalid value: " + tempdata[i]);
528 StoreCommand(floor->
AddWall(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToBool(tempdata[13])));
536 int params = SplitData(
LineData, 13);
539 return ScriptError(
"Incorrect number of parameters");
542 for (
int i = 0; i <= 13; i++)
547 return ScriptError(
"Invalid value: " + tempdata[i]);
565 StoreCommand(level->
AddWall(tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13])));
568 return ScriptError(
"Invalid shaft " + tempdata[0]);
576 int params = SplitData(
LineData, 14);
579 return ScriptError(
"Incorrect number of parameters");
582 for (
int i = 0; i <= 13; i++)
587 return ScriptError(
"Invalid value: " + tempdata[i]);
605 StoreCommand(level->
AddWall(tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13])));
608 return ScriptError(
"Invalid stairwell " + tempdata[0]);
616 int params = SplitData(
LineData, 18);
619 return ScriptError(
"Incorrect number of parameters");
622 for (
int i = 2; i <= 12; i++)
625 return ScriptError(
"Invalid value: " + tempdata[i]);
633 StoreCommand(floor->
AddInterfloorWall(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12])));
641 int params = SplitData(
LineData, 14);
644 return ScriptError(
"Incorrect number of parameters");
647 for (
int i = 2; i <= 9; i++)
650 return ScriptError(
"Invalid value: " + tempdata[i]);
657 StoreCommand(floor->
ColumnWallBox(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToBool(tempdata[10]),
ToBool(tempdata[11]),
ToBool(tempdata[12]),
ToBool(tempdata[13])));
665 int params = SplitData(
LineData, 15);
668 return ScriptError(
"Incorrect number of parameters");
671 for (
int i = 2; i <= 9; i++)
674 return ScriptError(
"Invalid value: " + tempdata[i]);
681 StoreCommand(floor->
ColumnWallBox2(tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToBool(tempdata[10]),
ToBool(tempdata[11]),
ToBool(tempdata[12]),
ToBool(tempdata[13])));
689 int params = SplitAfterEquals(
LineData,
false);
693 std::vector<int> callbutton_elevators;
698 if (GetRange(tempdata[
line], start, end))
700 for (
int k = start; k <= end; k++)
705 callbutton_elevators.emplace_back(k);
710 std::string str =
Calc(tempdata[
line]);
717 callbutton_elevators.emplace_back(data);
722 std::sort(callbutton_elevators.begin(), callbutton_elevators.end());
741 for (
size_t i = 0; i < callbutton_elevators.size(); i++)
745 callbutton_controller = controller->
Number;
753 if (callbutton_controller == 0)
757 int params = SplitData(
LineData, 18);
770 for (
int i = 3; i <= 11; i++)
772 if (i == 6 || i == 9)
775 return ScriptError(
"Invalid value: " + tempdata[i]);
777 if (warn_deprecated ==
true)
780 else if (compat == 2)
782 for (
int i = 5; i <= 13; i++)
784 if (i == 8 || i == 11)
787 return ScriptError(
"Invalid value: " + tempdata[i]);
789 if (warn_deprecated ==
true)
792 else if (compat == 3)
794 for (
int i = 6; i <= 14; i++)
796 if (i == 9 || i == 12)
799 return ScriptError(
"Invalid value: " + tempdata[i]);
801 if (warn_deprecated ==
true)
807 return ScriptError(
"Incorrect number of parameters");
809 for (
int i = 7; i <= 15; i++)
811 if (i == 10 || i == 13)
814 return ScriptError(
"Invalid value: " + tempdata[i]);
825 callstation = floor->
AddCallButtons(callbutton_controller,
"",
"", tempdata[0], tempdata[1], tempdata[1], tempdata[2], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]), tempdata[6],
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToBool(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]));
826 else if (compat == 2)
827 callstation = floor->
AddCallButtons(callbutton_controller,
"",
"", tempdata[0], tempdata[1], tempdata[2], tempdata[3], tempdata[4],
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]), tempdata[8],
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToBool(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]));
828 else if (compat == 3)
829 callstation = floor->
AddCallButtons(callbutton_controller, tempdata[0], tempdata[0], tempdata[1], tempdata[2], tempdata[3], tempdata[4], tempdata[5],
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]), tempdata[9],
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToBool(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]));
831 callstation = floor->
AddCallButtons(callbutton_controller, tempdata[0], tempdata[1], tempdata[2], tempdata[3], tempdata[4], tempdata[5], tempdata[6],
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]), tempdata[10],
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToBool(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]));
848 int params = SplitData(
LineData, 10);
850 if (params < 13 || params > 14)
851 return ScriptError(
"Incorrect number of parameters");
860 for (
int i = 0; i <= 12; i++)
865 return ScriptError(
"Invalid value: " + tempdata[i]);
868 if (warn_deprecated ==
true)
873 for (
int i = 0; i <= 13; i++)
878 return ScriptError(
"Invalid value: " + tempdata[i]);
898 StoreCommand(level->
AddStairs(tempdata[1], tempdata[2], tempdata[2], tempdata[3],
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToInt(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12])));
900 StoreCommand(level->
AddStairs(tempdata[1], tempdata[2], tempdata[3], tempdata[4],
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToInt(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13])));
903 return ScriptError(
"Invalid stairwell " + tempdata[0]);
911 int params = SplitData(
LineData, 8);
913 if (params < 10 || params == 11 || params == 15 || params == 16 || params > 17)
914 return ScriptError(
"Incorrect number of parameters");
921 for (
int i = 1; i <= 9; i++)
924 return ScriptError(
"Invalid value: " + tempdata[i]);
930 for (
int i = 3; i <= 11; i++)
933 return ScriptError(
"Invalid value: " + tempdata[i]);
939 for (
int i = 3; i <= 12; i++)
942 return ScriptError(
"Invalid value: " + tempdata[i]);
948 for (
int i = 4; i <= 13; i++)
951 return ScriptError(
"Invalid value: " + tempdata[i]);
957 for (
int i = 4; i <= 15; i++)
960 return ScriptError(
"Invalid value: " + tempdata[i]);
966 parent->CheckFile(
"data/" + tempdata[0]);
967 parent->CheckFile(
"data/" + tempdata[1]);
970 if (compat > 0 && warn_deprecated ==
true)
978 std::string face_direction;
979 std::string open_direction;
982 direction =
ToInt(tempdata[2]);
984 direction =
ToInt(tempdata[4]);
986 direction =
ToInt(tempdata[5]);
987 GetDirectionStrings(direction, face_direction, open_direction);
993 door = floor->
AddDoor(
"",
"",
"",
false, tempdata[0], tempdata[0],
ToFloat(tempdata[1]), face_direction, open_direction,
true, 0, 0,
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]), 0, 0);
995 door = floor->
AddDoor(
"", tempdata[0], tempdata[1],
false, tempdata[2], tempdata[2],
ToFloat(tempdata[3]), face_direction, open_direction,
true, 0, 0,
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]), 0, 0);
997 door = floor->
AddDoor(
"", tempdata[0], tempdata[1],
false, tempdata[2], tempdata[2],
ToFloat(tempdata[3]), face_direction, open_direction,
true,
ToFloat(tempdata[5]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]), 0, 0);
999 door = floor->
AddDoor(
"", tempdata[0], tempdata[1],
ToBool(tempdata[2]), tempdata[3], tempdata[3],
ToFloat(tempdata[4]), face_direction, open_direction,
true,
ToFloat(tempdata[6]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]), 0, 0);
1001 door = floor->
AddDoor(tempdata[16], tempdata[0], tempdata[1],
ToBool(tempdata[2]), tempdata[3], tempdata[3],
ToFloat(tempdata[4]), face_direction, open_direction,
true,
ToFloat(tempdata[6]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]));
1014 int params = SplitData(
LineData, 14);
1016 if (params < 11 || params == 12 || params == 16 || params == 17 || params > 18)
1017 return ScriptError(
"Incorrect number of parameters");
1024 for (
int i = 0; i <= 10; i++)
1029 return ScriptError(
"Invalid value: " + tempdata[i]);
1035 for (
int i = 0; i <= 12; i++)
1040 return ScriptError(
"Invalid value: " + tempdata[i]);
1046 for (
int i = 0; i <= 13; i++)
1051 return ScriptError(
"Invalid value: " + tempdata[i]);
1057 for (
int i = 0; i <= 14; i++)
1062 return ScriptError(
"Invalid value: " + tempdata[i]);
1068 for (
int i = 0; i <= 16; i++)
1073 return ScriptError(
"Invalid value: " + tempdata[i]);
1079 parent->CheckFile(
"data/" + tempdata[1]);
1080 parent->CheckFile(
"data/" + tempdata[2]);
1083 if (compat > 0 && warn_deprecated ==
true)
1102 std::string face_direction;
1103 std::string open_direction;
1106 direction =
ToInt(tempdata[3]);
1107 else if (compat == 2 || compat == 3)
1108 direction =
ToInt(tempdata[5]);
1110 direction =
ToInt(tempdata[6]);
1111 GetDirectionStrings(direction, face_direction, open_direction);
1116 door = level->
AddDoor(
"",
"",
"",
false, tempdata[1], tempdata[1],
ToFloat(tempdata[2]), face_direction, open_direction,
true, 0, 0,
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]), 0, 0);
1118 door = level->
AddDoor(
"", tempdata[1], tempdata[2],
false, tempdata[3], tempdata[3],
ToFloat(tempdata[4]), face_direction, open_direction,
true, 0, 0,
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]), 0, 0);
1120 door = level->
AddDoor(
"", tempdata[1], tempdata[2],
false, tempdata[3], tempdata[3],
ToFloat(tempdata[4]), face_direction, open_direction,
true,
ToFloat(tempdata[6]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]), 0, 0);
1122 door = level->
AddDoor(
"", tempdata[1], tempdata[2],
ToBool(tempdata[3]), tempdata[4], tempdata[4],
ToFloat(tempdata[5]), face_direction, open_direction,
true,
ToFloat(tempdata[7]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]), 0, 0);
1124 door = level->
AddDoor(tempdata[17], tempdata[1], tempdata[2],
ToBool(tempdata[3]), tempdata[4], tempdata[4],
ToFloat(tempdata[5]), face_direction, open_direction,
true,
ToFloat(tempdata[7]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToFloat(tempdata[16]));
1132 return ScriptError(
"Invalid stairwell " + tempdata[0]);
1140 int params = SplitData(
LineData, 16);
1142 if (params != 17 && params != 18)
1143 return ScriptError(
"Incorrect number of parameters");
1146 for (
int i = 0; i <= 16; i++)
1151 return ScriptError(
"Invalid value: " + tempdata[i]);
1155 parent->CheckFile(
"data/" + tempdata[1]);
1156 parent->CheckFile(
"data/" + tempdata[2]);
1174 std::string face_direction;
1175 std::string open_direction;
1176 int direction =
ToInt(tempdata[6]);
1177 GetDirectionStrings(direction, face_direction, open_direction);
1181 door = level->
AddDoor(
"", tempdata[1], tempdata[2],
ToBool(tempdata[3]), tempdata[4], tempdata[4],
ToFloat(tempdata[5]), face_direction, open_direction,
true,
ToFloat(tempdata[7]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToFloat(tempdata[16]));
1183 door = level->
AddDoor(tempdata[17], tempdata[1], tempdata[2],
ToBool(tempdata[3]), tempdata[4], tempdata[4],
ToFloat(tempdata[5]), face_direction, open_direction,
true,
ToFloat(tempdata[7]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToFloat(tempdata[16]));
1191 return ScriptError(
"Invalid shaft " + tempdata[0]);
1199 int params = SplitData(
LineData, 16);
1201 if (params != 14 && params != 17)
1202 return ScriptError(
"Incorrect number of parameters");
1207 for (
int i = 4; i <= 13; i++)
1210 return ScriptError(
"Invalid value: " + tempdata[i]);
1215 for (
int i = 4; i <= 15; i++)
1218 return ScriptError(
"Invalid value: " + tempdata[i]);
1223 parent->CheckFile(
"data/" + tempdata[0]);
1224 parent->CheckFile(
"data/" + tempdata[1]);
1231 std::string face_direction;
1232 std::string open_direction;
1233 int direction =
ToInt(tempdata[5]);
1234 GetDirectionStrings(direction, face_direction, open_direction);
1239 door = floor->
AddDoor(
"", tempdata[0], tempdata[1],
ToBool(tempdata[2]), tempdata[3], tempdata[3],
ToFloat(tempdata[4]), face_direction, open_direction,
true,
ToFloat(tempdata[6]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]), 0, 0,
true);
1241 door = floor->
AddDoor(tempdata[16], tempdata[0], tempdata[1],
ToBool(tempdata[2]), tempdata[3], tempdata[3],
ToFloat(tempdata[4]), face_direction, open_direction,
true,
ToFloat(tempdata[6]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
true);
1254 int params = SplitData(
LineData, 24);
1256 if (params != 18 && params != 19)
1257 return ScriptError(
"Incorrect number of parameters");
1259 bool compat =
false;
1264 for (
int i = 9; i <= 17; i++)
1271 return ScriptError(
"Invalid value: " + tempdata[i]);
1274 if (warn_deprecated ==
true)
1279 for (
int i = 10; i <= 18; i++)
1286 return ScriptError(
"Invalid value: " + tempdata[i]);
1291 if (!GetElevatorCar(tempdata[0], floor->
Number, elevator, car))
1299 StoreCommand(floor->
AddDirectionalIndicator(elevator, car,
ToBool(tempdata[1]),
false,
ToBool(tempdata[2]),
ToBool(tempdata[3]), tempdata[4], tempdata[5], tempdata[6], tempdata[7], tempdata[8],
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]), tempdata[12],
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToBool(tempdata[15]),
ToFloat(tempdata[16]),
ToFloat(tempdata[17])));
1301 StoreCommand(floor->
AddDirectionalIndicator(elevator, car,
ToBool(tempdata[1]),
ToBool(tempdata[2]),
ToBool(tempdata[3]),
ToBool(tempdata[4]), tempdata[5], tempdata[6], tempdata[7], tempdata[8], tempdata[9],
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]), tempdata[13],
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToBool(tempdata[16]),
ToFloat(tempdata[17]),
ToFloat(tempdata[18])));
1309 int params = SplitData(
LineData, 13);
1311 if (params != 5 && params != 6 && params != 10)
1312 return ScriptError(
"Incorrect number of parameters");
1322 return ScriptError(
"SetShaftDoors must be used before AddShaftDoor");
1327 for (
int i = 1; i <= 9; i++)
1332 return ScriptError(
"Invalid value: " + tempdata[i]);
1337 for (
int i = 1; i <= 4; i++)
1342 return ScriptError(
"Invalid value: " + tempdata[i]);
1347 for (
int i = 1; i <= 5; i++)
1352 return ScriptError(
"Invalid value: " + tempdata[i]);
1356 if (compat > 0 && warn_deprecated ==
true)
1359 int elevator, carnum;
1360 if (!GetElevatorCar(tempdata[0], floor->
Number, elevator, carnum))
1383 int params = SplitData(
LineData, 18);
1385 if (params < 8 && params > 10)
1386 return ScriptError(
"Incorrect number of parameters");
1397 for (
int i = 3; i <= 7; i++)
1400 return ScriptError(
"Invalid value: " + tempdata[i]);
1402 if (warn_deprecated ==
true)
1405 else if (compat == 2)
1407 for (
int i = 4; i <= 8; i++)
1410 return ScriptError(
"Invalid value: " + tempdata[i]);
1415 for (
int i = 5; i <= 9; i++)
1418 return ScriptError(
"Invalid value: " + tempdata[i]);
1423 if (!GetElevatorCar(tempdata[0], floor->
Number, elevator, car))
1431 StoreCommand(floor->
AddFloorIndicator(elevator, car,
ToBool(tempdata[1]), tempdata[2], tempdata[3], tempdata[4],
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9])));
1432 else if (compat == 1)
1433 StoreCommand(floor->
AddFloorIndicator(elevator, car,
ToBool(tempdata[1]),
"Button",
"", tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7])));
1434 else if (compat == 2)
1435 StoreCommand(floor->
AddFloorIndicator(elevator, car,
ToBool(tempdata[1]), tempdata[2],
"", tempdata[3],
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8])));
1443 int params = SplitData(
LineData, 15);
1445 if (params < 10 || params > 11)
1446 return ScriptError(
"Incorrect number of parameters");
1448 bool compat =
false;
1454 for (
int i = 1; i <= 9; i++)
1459 return ScriptError(
"Invalid value: " + tempdata[i]);
1467 floor->
AddFillerWalls(tempdata[0],
ToFloat(tempdata[1]),
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToBool(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
false);
1469 floor->
AddFillerWalls(tempdata[0],
ToFloat(tempdata[1]),
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToBool(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToBool(tempdata[10]));
1478 int params = SplitData(
LineData, 9);
1480 if (params != 5 && params != 6 && params != 13 && params != 17)
1481 return ScriptError(
"Incorrect number of parameters");
1483 bool partial =
false;
1484 bool compat =
false;
1485 if (params == 5 || params == 6)
1487 if (params == 5 || params == 13)
1491 if (partial ==
true)
1493 for (
int i = 2; i <= 4; i++)
1496 return ScriptError(
"Invalid value: " + tempdata[i]);
1503 for (
int i = 2; i <= 12; i++)
1506 return ScriptError(
"Invalid value: " + tempdata[i]);
1508 if (warn_deprecated ==
true)
1513 for (
int i = 2; i <= 16; i++)
1519 return ScriptError(
"Invalid value: " + tempdata[i]);
1525 parent->CheckFile(
"data/" + tempdata[1]);
1533 if (partial ==
true)
1536 StoreCommand(floor->
AddSound(tempdata[0], tempdata[1],
Vector3(
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4])),
true,
ToFloat(tempdata[5]),
ToInt(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]), 0.0, 360, 360, 1.0,
Vector3(
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]))));
1540 if (partial ==
true)
1543 StoreCommand(floor->
AddSound(tempdata[0], tempdata[1],
Vector3(
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4])),
ToBool(tempdata[5]),
ToFloat(tempdata[6]),
ToInt(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
Vector3(
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToFloat(tempdata[16]))));
1552 int params = SplitData(
LineData, 9);
1555 return ScriptError(
"Incorrect number of parameters");
1558 for (
int i = 2; i <= 6; i++)
1561 return ScriptError(
"Invalid value: " + tempdata[i]);
1576 int params = SplitData(
LineData, 22);
1578 if (params != 18 && params != 19)
1579 return ScriptError(
"Incorrect number of parameters");
1582 bool compat =
false;
1586 if (warn_deprecated ==
true)
1590 for (
int i = 1; i <= params - 1; i++)
1597 return ScriptError(
"Invalid value: " + tempdata[i]);
1600 int elevator, carnum;
1601 if (!GetElevatorCar(tempdata[0], floor->
Number, elevator, carnum))
1612 StoreCommand(car->
AddShaftDoorComponent(
ToInt(tempdata[1]),
config->
Current, tempdata[2], tempdata[3], tempdata[4],
ToFloat(tempdata[5]), tempdata[6],
ToFloat(tempdata[7]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToFloat(tempdata[16]),
ToFloat(tempdata[17])));
1614 StoreCommand(car->
AddShaftDoorComponent(
ToInt(tempdata[1]),
config->
Current, tempdata[2], tempdata[3], tempdata[4],
ToFloat(tempdata[5]), tempdata[6],
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToFloat(tempdata[16]),
ToFloat(tempdata[17]),
ToFloat(tempdata[18])));
1622 int params = SplitData(
LineData, 16);
1624 bool legacy =
false;
1627 return ScriptError(
"Incorrect number of parameters");
1633 if (warn_deprecated ==
true)
1641 return ScriptError(
"Invalid value: " + tempdata[1]);
1643 int elevator, carnum;
1644 if (!GetElevatorCar(tempdata[0], floor->
Number, elevator, carnum))
1654 if (params == 2 || legacy ==
true)
1656 else if (params == 3)
1666 if (parent->NoModels ==
true)
1670 int params = SplitData(
LineData, 9);
1672 if (params != 14 && params != 15)
1673 return ScriptError(
"Incorrect number of parameters");
1675 bool compat =
false;
1682 for (
int i = 2; i <= 13; i++)
1687 return ScriptError(
"Invalid value: " + tempdata[i]);
1689 if (warn_deprecated ==
true)
1694 for (
int i = 3; i <= 14; i++)
1699 return ScriptError(
"Invalid value: " + tempdata[i]);
1704 parent->CheckFile(
"data/" + tempdata[1]);
1716 model = floor->
AddModel(tempdata[0], tempdata[1],
false,
Vector3(
ToFloat(tempdata[2]),
ToFloat(tempdata[3]),
ToFloat(tempdata[4])),
Vector3(
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7])),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToBool(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]));
1718 model = floor->
AddModel(tempdata[0], tempdata[1],
ToBool(tempdata[2]),
Vector3(
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5])),
Vector3(
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8])),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToBool(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]));
1731 if (parent->NoModels ==
true)
1735 int params = SplitData(
LineData, 15);
1737 if (params != 15 && params != 16)
1738 return ScriptError(
"Incorrect number of parameters");
1740 bool compat =
false;
1747 for (
int i = 3; i <= 14; i++)
1752 return ScriptError(
"Invalid value: " + tempdata[i]);
1754 if (warn_deprecated ==
true)
1759 for (
int i = 4; i <= 15; i++)
1764 return ScriptError(
"Invalid value: " + tempdata[i]);
1769 parent->CheckFile(
"data/" + tempdata[2]);
1792 model = level->
AddModel(tempdata[1], tempdata[2],
false,
Vector3(
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5])),
Vector3(
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8])),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToBool(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]));
1794 model = level->
AddModel(tempdata[1], tempdata[2],
ToBool(tempdata[3]),
Vector3(
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6])),
Vector3(
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9])),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToBool(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]));
1803 return ScriptError(
"Invalid stairwell " + tempdata[0]);
1810 if (parent->NoModels ==
true)
1814 int params = SplitData(
LineData, 14);
1816 if (params != 15 && params != 16)
1817 return ScriptError(
"Incorrect number of parameters");
1819 bool compat =
false;
1826 for (
int i = 3; i <= 14; i++)
1831 return ScriptError(
"Invalid value: " + tempdata[i]);
1833 if (warn_deprecated ==
true)
1838 for (
int i = 4; i <= 15; i++)
1843 return ScriptError(
"Invalid value: " + tempdata[i]);
1848 parent->CheckFile(
"data/" + tempdata[2]);
1870 model = level->
AddModel(tempdata[1], tempdata[2],
false,
Vector3(
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5])),
Vector3(
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8])),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToBool(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]));
1872 model = level->
AddModel(tempdata[1], tempdata[2],
ToBool(tempdata[3]),
Vector3(
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6])),
Vector3(
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9])),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToBool(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]));
1881 return ScriptError(
"Invalid shaft " + tempdata[0]);
1889 int params = SplitData(
LineData, 17);
1892 return ScriptError(
"Incorrect number of parameters");
1895 bool compat =
false;
1900 if (warn_deprecated ==
true)
1909 for (
int i = 3; i <= end; i++)
1912 return ScriptError(
"Invalid value: " + tempdata[i]);
1915 std::vector<std::string> action_array, tex_array;
1916 int slength, parameters;
1919 slength = (int)tempdata.size();
1920 parameters = slength - (end + 1);
1923 if (
IsEven(parameters) ==
false)
1924 return ScriptError(
"Incorrect number of parameters");
1926 for (
int i = (end + 1); i < slength - (parameters / 2); i++)
1927 action_array.emplace_back(tempdata[i]);
1928 for (
int i = slength - (parameters / 2); i < slength; i++)
1929 tex_array.emplace_back(tempdata[i]);
1932 parent->CheckFile(
"data/" + tempdata[1]);
1940 control = floor->
AddControl(tempdata[0], tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]), 1, action_array, tex_array);
1942 control = floor->
AddControl(tempdata[0], tempdata[1], tempdata[2],
ToFloat(tempdata[3]),
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToInt(tempdata[8]), action_array, tex_array);
1959 int params = SplitData(
LineData, 21);
1962 return ScriptError(
"Incorrect number of parameters");
1965 bool compat =
false;
1970 if (warn_deprecated ==
true)
1979 for (
int i = 0; i <= end; i++)
1984 return ScriptError(
"Invalid value: " + tempdata[i]);
1987 std::vector<std::string> action_array, tex_array;
1988 int slength, parameters;
1991 slength = (int)tempdata.size();
1992 parameters = slength - (end + 1);
1995 if (
IsEven(parameters) ==
false)
1996 return ScriptError(
"Incorrect number of parameters");
1998 for (
int i = (end + 1); i < slength - (parameters / 2); i++)
1999 action_array.emplace_back(tempdata[i]);
2000 for (
int i = slength - (parameters / 2); i < slength; i++)
2001 tex_array.emplace_back(tempdata[i]);
2004 parent->CheckFile(
"data/" + tempdata[1]);
2022 control = level->
AddControl(tempdata[1], tempdata[2], tempdata[3],
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]), 1, action_array, tex_array);
2024 control = level->
AddControl(tempdata[1], tempdata[2], tempdata[3],
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToInt(tempdata[9]), action_array, tex_array);
2036 return ScriptError(
"Invalid shaft " + tempdata[0]);
2044 int params = SplitData(
LineData, 21);
2047 return ScriptError(
"Incorrect number of parameters");
2050 bool compat =
false;
2055 if (warn_deprecated ==
true)
2064 for (
int i = 0; i <= end; i++)
2069 return ScriptError(
"Invalid value: " + tempdata[i]);
2072 std::vector<std::string> action_array, tex_array;
2073 int slength, parameters;
2076 slength = (int)tempdata.size();
2077 parameters = slength - (end + 1);
2080 if (
IsEven(parameters) ==
false)
2081 return ScriptError(
"Incorrect number of parameters");
2083 for (
int i = (end + 1); i < slength - (parameters / 2); i++)
2084 action_array.emplace_back(tempdata[i]);
2085 for (
int i = slength - (parameters / 2); i < slength; i++)
2086 tex_array.emplace_back(tempdata[i]);
2089 parent->CheckFile(
"data/" + tempdata[1]);
2107 control = level->
AddControl(tempdata[1], tempdata[2], tempdata[3],
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]), 1, action_array, tex_array);
2109 control = level->
AddControl(tempdata[1], tempdata[2], tempdata[3],
ToFloat(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToInt(tempdata[9]), action_array, tex_array);
2121 return ScriptError(
"Invalid stairwell " + tempdata[0]);
2129 int params = SplitData(
LineData, 11);
2132 return ScriptError(
"Incorrect number of parameters");
2135 for (
int i = 2; i <= 7; i++)
2138 return ScriptError(
"Invalid value: " + tempdata[i]);
2141 std::vector<std::string> action_array;
2144 for (
int i = 8; i < params; i++)
2145 action_array.emplace_back(tempdata[i]);
2148 parent->CheckFile(
"data/" + tempdata[1]);
2164 int params = SplitData(
LineData, 16);
2167 return ScriptError(
"Incorrect number of parameters");
2170 for (
int i = 0; i <= 8; i++)
2175 return ScriptError(
"Invalid value: " + tempdata[i]);
2178 std::vector<std::string> action_array;
2181 for (
int i = 9; i < params; i++)
2182 action_array.emplace_back(tempdata[i]);
2185 parent->CheckFile(
"data/" + tempdata[2]);
2196 return ScriptError(
"Invalid shaft " + tempdata[0]);
2210 int params = SplitData(
LineData, 16);
2213 return ScriptError(
"Incorrect number of parameters");
2216 for (
int i = 0; i <= 8; i++)
2221 return ScriptError(
"Invalid value: " + tempdata[i]);
2224 std::vector<std::string> action_array;
2227 for (
int i = 9; i < params; i++)
2228 action_array.emplace_back(tempdata[i]);
2231 parent->CheckFile(
"data/" + tempdata[2]);
2242 return ScriptError(
"Invalid stairwell " + tempdata[0]);
2256 int params = SplitData(
LineData, 4);
2259 return ScriptError(
"Incorrect number of parameters");
2262 for (
int i = 0; i <= 5; i++)
2265 return ScriptError(
"Invalid value: " + tempdata[i]);
2281 int params = SplitData(
LineData, 7);
2284 return ScriptError(
"Incorrect number of parameters");
2287 for (
int i = 0; i <= 5; i++)
2290 return ScriptError(
"Invalid value: " + tempdata[i]);
2306 int params = SplitData(
LineData, 17);
2308 if (params != 15 && params != 17)
2309 return ScriptError(
"Incorrect number of parameters");
2311 bool compat =
false;
2318 for (
int i = 2; i <= 13; i++)
2324 return ScriptError(
"Invalid value: " + tempdata[i]);
2328 parent->CheckFile(
"data/" + tempdata[0]);
2332 for (
int i = 4; i <= 15; i++)
2338 return ScriptError(
"Invalid value: " + tempdata[i]);
2342 parent->CheckFile(
"data/" + tempdata[2]);
2351 if (compat ==
false)
2352 door = floor->
AddRevolvingDoor(tempdata[0],
ToBool(tempdata[1]), tempdata[2], tempdata[3],
ToFloat(tempdata[4]),
ToBool(tempdata[5]),
ToInt(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15]),
ToBool(tempdata[16]));
2354 door = floor->
AddRevolvingDoor(
"",
false, tempdata[0], tempdata[1],
ToFloat(tempdata[2]),
ToBool(tempdata[3]),
ToInt(tempdata[4]),
ToFloat(tempdata[5]),
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToBool(tempdata[14]));
2372 int params = SplitData(
LineData, 13);
2374 if (params < 15 || params > 16)
2375 return ScriptError(
"Incorrect number of parameters");
2377 bool compat =
false;
2384 for (
int i = 1; i <= 14; i++)
2389 return ScriptError(
"Invalid value: " + tempdata[i]);
2392 if (warn_deprecated ==
true)
2398 for (
int i = 1; i <= 15; i++)
2403 return ScriptError(
"Invalid value: " + tempdata[i]);
2414 StoreCommand(floor->
AddEscalator(tempdata[0],
ToInt(tempdata[1]),
ToFloat(tempdata[2]), tempdata[3], tempdata[4], tempdata[4], tempdata[5],
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToInt(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14])));
2416 StoreCommand(floor->
AddEscalator(tempdata[0],
ToInt(tempdata[1]),
ToFloat(tempdata[2]), tempdata[3], tempdata[4], tempdata[5], tempdata[6],
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToFloat(tempdata[10]),
ToFloat(tempdata[11]),
ToInt(tempdata[12]),
ToFloat(tempdata[13]),
ToFloat(tempdata[14]),
ToFloat(tempdata[15])));
2425 int params = SplitData(
LineData, 17);
2428 return ScriptError(
"Incorrect number of parameters");
2431 for (
int i = 1; i <= 13; i++)
2436 return ScriptError(
"Invalid value: " + tempdata[i]);
2445 StoreCommand(floor->
AddMovingWalkway(tempdata[0],
ToInt(tempdata[1]),
ToFloat(tempdata[2]), tempdata[3], tempdata[4], tempdata[5],
ToFloat(tempdata[6]),
ToFloat(tempdata[7]),
ToFloat(tempdata[8]),
ToFloat(tempdata[9]),
ToInt(tempdata[10]),
ToFloat(tempdata[11]),
ToFloat(tempdata[12]),
ToFloat(tempdata[13])));
2455 return ScriptError(
"Floor altitude or height has not been set");