1// level5.as - Data file for the levels.as test
2//
3//   Copyright (C) 2005, 2006, 2007, 2009, 2010 Free Software
4//   Foundation, Inc
5//
6// This program is free software; you can redistribute it and/or modify
7// it under the terms of the GNU General Public License as published by
8// the Free Software Foundation; either version 3 of the License, or
9// (at your option) any later version.
10//
11// This program is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14// GNU General Public License for more details.
15//
16// You should have received a copy of the GNU General Public License
17// along with this program; if not, write to the Free Software
18// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
19//
20//
21// Original author: David Rorex - drorex@gmail.com
22//
23
24#include "check.as"
25
26class Level87
27{
28  static function main(mc)
29  {
30    mc.createEmptyMovieClip("ch", 1);
31    with(mc.ch)
32    {
33      lineStyle(1, 0x00000);
34      beginFill(0xFFFF00, 80);
35      var x=220;
36      var y=170;
37      var width=100;
38      var height=100;
39      moveTo(x, y);
40      lineTo(x+width, y);
41      lineTo(x+width, y+height);
42      lineTo(x, y+height);
43      lineTo(x, y);
44      endFill();
45    };
46
47    check_equals(mc._currentframe, 1);
48
49    // Check our depth
50    check_equals(mc.getDepth(), -16297);
51
52    // The ""+ is there to force conversion to a string
53    check_equals(""+mc, "_level87");
54
55    if (_level0.level87loaded )
56    {
57      check(_level0.frameno >= 3);
58
59      check_equals(typeof(_level5), 'undefined');
60      return;
61    }
62
63    _level0.level87loaded = true;
64
65    check(_level0.frameno >= 2);
66
67    // TODO: fix predictability
68    // see http://wiki.gnashdev.org/PredictableLoading
69    //
70    // This one fails because gnash is executing code
71    // in level99 before code in the first load of level87,
72    // probably because it is *loading* level99 before level87,
73    // which is in the order loads are requested rather then
74    // reverse of it as it's common...
75    check_equals(_level5._currentframe, 1);
76
77    _level87.loadMovie("level87.swf");
78  }
79}
80