1 |
function __background_set_element(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14) |
2 |
{ |
3 |
var __bind = arg0; |
4 |
var __vis = arg1; |
5 |
var __fore = arg2; |
6 |
var __back = arg3; |
7 |
var __x = arg4; |
8 |
var __y = arg5; |
9 |
var __htiled = arg6; |
10 |
var __vtiled = arg7; |
11 |
var __xscale = arg8; |
12 |
var __yscale = arg9; |
13 |
var __stretch = arg10; |
14 |
var __hspeed = arg11; |
15 |
var __vspeed = arg12; |
16 |
var __blend = arg13; |
17 |
var __alpha = arg14; |
18 |
var __nearestdepth = 1000000000; |
19 |
var __farthestdepth = -1000000000; |
20 |
var __depthinc = 100; |
21 |
var __result; |
22 |
__result[0] = -1; |
23 |
__result[1] = -1; |
24 |
var __fgstring = "Compatibility_Foreground_"; |
25 |
var __bgstring = "Compatibility_Background_"; |
26 |
var __colstring = "Compatibility_Colour"; |
27 |
var __fglen = string_length(__fgstring); |
28 |
var __bglen = string_length(__bgstring); |
29 |
var __layerlist = layer_get_all(); |
30 |
var __layerlistlength = array_length_1d(__layerlist); |
31 |
var __collayer = -1; |
32 |
var __slots, __isforeground; |
33 |
for (var __i = 0; __i < 8; __i++) |
34 |
{ |
35 |
__slots[__i] = -1; |
36 |
__isforeground[__i] = false; |
37 |
} |
38 |
var __slot, __layername; |
39 |
for (var __i = 0; __i < __layerlistlength; __i++) |
40 |
{ |
41 |
__layername = layer_get_name(__layerlist[__i]); |
42 |
if (string_pos(__fgstring, __layername) > 0) |
43 |
{ |
44 |
var __slotchr = string_char_at(__layername, __fglen + 1); |
45 |
if (__slotchr == "") |
46 |
continue; |
47 |
__slot = real(__slotchr); |
48 |
__slots[__slot] = __layerlist[__i]; |
49 |
__isforeground[__slot] = true; |
50 |
} |
51 |
else if (string_pos(__bgstring, __layername) > 0) |
52 |
{ |
53 |
var __slotchr = string_char_at(__layername, __bglen + 1); |
54 |
if (__slotchr == "") |
55 |
continue; |
56 |
__slot = real(__slotchr); |
57 |
__slots[__slot] = __layerlist[__i]; |
58 |
__isforeground[__slot] = false; |
59 |
} |
60 |
else if (string_pos(__colstring, __layername) > 0) |
61 |
{ |
62 |
__collayer = __layerlist[__i]; |
63 |
layer_depth(__layerlist[__i], __farthestdepth); |
64 |
} |
65 |
else |
66 |
{ |
67 |
var __currdepth = layer_get_depth(__layerlist[__i]); |
68 |
if (__currdepth < __nearestdepth) |
69 |
__nearestdepth = __currdepth; |
70 |
if (__currdepth > __farthestdepth) |
71 |
__farthestdepth = __currdepth; |
72 |
} |
73 |
} |
74 |
__farthestdepth += (__depthinc + 1000); |
75 |
__nearestdepth -= __depthinc; |
76 |
__farthestdepth = max(__farthestdepth, 2147483600); |
77 |
__nearestdepth = min(__nearestdepth, -2147482000); |
78 |
for (var __i = 0; __i < 8; __i++) |
79 |
{ |
80 |
if (__slots[__i] != -1) |
81 |
{ |
82 |
var __depth = 0; |
83 |
if (__isforeground[__i] == true) |
84 |
__depth = __nearestdepth - (__i * __depthinc); |
85 |
else |
86 |
__depth = __farthestdepth - __depthinc - (__slot * __depthinc); |
87 |
layer_depth(__slots[__i], __depth); |
88 |
} |
89 |
} |
90 |
if (__collayer != -1) |
91 |
layer_depth(__collayer, __farthestdepth); |
92 |
var __layerdepth; |
93 |
if (__bind == -1) |
94 |
{ |
95 |
__layername = __colstring; |
96 |
__layerdepth = __farthestdepth; |
97 |
} |
98 |
else if (__fore == true) |
99 |
{ |
100 |
__layername = __fgstring + string(__bind); |
101 |
__layerdepth = __nearestdepth - (__bind * __depthinc); |
102 |
} |
103 |
else |
104 |
{ |
105 |
__layername = __bgstring + string(__bind); |
106 |
__layerdepth = __farthestdepth - __depthinc - (__bind * __depthinc); |
107 |
} |
108 |
var __layerid; |
109 |
if (__bind == -1) |
110 |
__layerid = __collayer; |
111 |
else |
112 |
__layerid = __slots[__bind]; |
113 |
if (__layerid != -1) |
114 |
layer_destroy(__layerid); |
115 |
__layerid = layer_create(__layerdepth, __layername); |
116 |
layer_x(__layerid, __x); |
117 |
layer_y(__layerid, __y); |
118 |
layer_hspeed(__layerid, __hspeed); |
119 |
layer_vspeed(__layerid, __vspeed); |
120 |
var __backel = layer_background_create(__layerid, __back); |
121 |
layer_background_visible(__backel, __vis); |
122 |
layer_background_htiled(__backel, __htiled); |
123 |
layer_background_vtiled(__backel, __vtiled); |
124 |
layer_background_xscale(__backel, __xscale); |
125 |
layer_background_yscale(__backel, __yscale); |
126 |
layer_background_stretch(__backel, __stretch); |
127 |
layer_background_blend(__backel, __blend); |
128 |
layer_background_alpha(__backel, __alpha); |
129 |
__result[0] = __backel; |
130 |
__result[1] = __layerid; |
131 |
return __result; |
132 |
} |