@@ -210,3 +210,66 @@ function show_blocks() {
210210 }
211211 }
212212}
213+ function show_level ( level ) {
214+ // show blocks according level
215+ $ ( "body" ) . css ( "background-color" , "#c0c0c0" ) ;
216+ playing = true ;
217+ $ ( "#complete" ) . html ( "" ) . hide ( ) ;
218+ $ ( ".blocks" ) . remove ( ) ;
219+ show_blocks ( ) ;
220+ $ ( "#level span" ) . html ( level + 1 ) ;
221+ $ ( "#moves span" ) . html ( 0 ) ;
222+ $ ( "#level,#moves,#b_menu" ) . show ( ) ;
223+ $ ( "#lighton,#b_next" ) . hide ( ) ;
224+ level_paths = levels [ level ] ;
225+ $ ( ".blocks" ) . css ( {
226+ "background-image" :"url(https://i.imgur.com/0Fc0TuZ.png)" ,
227+ "cursor" :"default"
228+ } ) . data ( "angle" , "0" ) . data ( "blocked" , "1" ) . show ( ) ;
229+ $ ( ".blocks circle,.blocks polyline,.blocks path,.blocks line" ) . hide ( ) ;
230+ for ( var i = 0 ; i < level_paths . length ; i ++ ) {
231+ path = level_paths [ i ] ;
232+ switch ( path ) {
233+ case "" :
234+ break ;
235+ case "x" :
236+ $ ( ".blocks:eq(" + i + ") .p13" ) . show ( ) ;
237+ $ ( ".blocks:eq(" + i + ") .p24" ) . show ( ) ;
238+ break ;
239+ case "y" :
240+ $ ( ".blocks:eq(" + i + ") .p12" ) . show ( ) ;
241+ $ ( ".blocks:eq(" + i + ") .p34" ) . show ( ) ;
242+ break ;
243+ case "z" :
244+ $ ( ".blocks:eq(" + i + ") .p23" ) . show ( ) ;
245+ $ ( ".blocks:eq(" + i + ") .p14" ) . show ( ) ;
246+ break ;
247+ default :
248+ arrow = path . substr ( 2 , 1 ) ;
249+ angle = parseInt ( path . substr ( 4 ) ) ;
250+ path = path . substr ( 0 , 2 ) ;
251+ $ ( ".blocks:eq(" + i + ") .p" + path ) . show ( ) ;
252+ bgi = ""
253+ if ( angle !== 0 ) {
254+ $ ( ".blocks:eq(" + i + ") .a" + arrow ) . show ( ) ;
255+ $ ( ".blocks:eq(" + i + ") circle" ) . show ( ) ;
256+ $ ( ".blocks:eq(" + i + ")" ) . css ( {
257+ "background-image" :"url()" ,
258+ "cursor" :"pointer"
259+ } ) . data ( "angle" , angle ) . data ( "blocked" , 0 ) ;
260+ rotate_block ( i , angle ) ;
261+ }
262+ break ;
263+ }
264+ }
265+ }
266+ function rotate_block ( n , angle ) {
267+ $ ( ".blocks:eq(" + n + ")" ) . css ( {
268+ "transform:" :"rotate(" + angle + "deg)" ,
269+ "-moz-transform" :"rotate(" + angle + "deg)" ,
270+ "-webkit-transform" :"rotate(" + angle + "deg)" ,
271+ "-o-transform" :"rotate(" + angle + "deg)" ,
272+ "-ms-transform" :"rotate(" + angle + "deg)" ,
273+ "-khtml-transform" :"rotate(" + angle + "deg)" ,
274+ } ) . data ( "angle" , angle ) ;
275+ }
0 commit comments