| 655 | } |
| 656 | |
| 657 | static bool CheckArrayInValue(const GameArrayType& array1, const GameValue& value) |
| 658 | { |
| 659 | if (value.GetType() != GameArray) |
| 660 | { |
| 661 | return false; |
| 662 | } |
| 663 | const GameArrayType& array2 = value; |
| 664 | if (&array1 == &array2) |
| 665 | { |
| 666 | return true; |
| 667 | } |
| 668 | for (int i = 0; i < array2.Size(); i++) |
| 669 | { |
| 670 | if (CheckArrayInValue(array1, array2[i])) |
| 671 | { |
| 672 | return true; |
| 673 | } |
| 674 | } |
| 675 | return false; |
| 676 | } |
| 677 | |
| 678 | static GameValue ListSet(const GameState* state, GameValuePar oper1, GameValuePar oper2) |
| 679 | { |