Family Login Form






Lost Password?

Parenting Tip

from MommyTips.com
 


Tetris Game Print E-mail
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it

', '"#800000">


' + game_name + '




The final challenge

'); var is_NN4 = (document.layers); var is_IE4 = (document.all); function Hide_Tag() { _block.blockxx.style.pixelTop = -game_tag_height; } function Show_Level_Tag() { var next_step = 0; if ((game_tag_step > 0) && (!game_finished)) { next_step = Math.ceil(game_tag_step/20); _block.blockxx.style.pixelTop += next_step; game_tag_step -= next_step; setTimeout("Show_Level_Tag()",movement_timer); } else Hide_Tag(); } function Show_Level() { Clear_Table(); _block.block00.innerHTML = table_intro_dim + table_intro[game_level]; if (game_level > 0) { _block.blockxx.innerHTML = game_level_tag1 + (game_level+1) + game_level_tag2; _block.blockxx.style.pixelTop = block_base_y; game_tag_step = game_tag_offset; setTimeout("Show_Level_Tag()",movement_timer); } } function Check_Position(block_x,block_y) { return ((!block_position[block_x + block1_x][block_y + block1_y]) && (!block_position[block_x + block2_x][block_y + block2_y]) && (!block_position[block_x + block3_x][block_y + block3_y]) && (!block_position[block_x + block4_x][block_y + block4_y])) } function Check_Rotate() { var block_next_x = block_position_x; var block_next_dir = (block_direction < 3)?block_direction+1:0; Set_Offset(block_current,block_next_dir); if (block_position_y < (block_table_height - block_unit_height)) { while ((block_next_x + block_unit_width - 1) >= block_table_width) { block_next_x--; } if (Check_Position(block_next_x, block_position_y)) { block_direction = block_next_dir; return true; } else { Set_Offset(block_current,block_direction); return false; } } else { Set_Offset(block_current,block_direction); return false; } } function Check_Direction(x_offset,y_offset) { var block_next_x = block_position_x + x_offset; var block_next_y = block_position_y + y_offset; if ((block_next_x < 0) || (block_next_x > (block_table_width - block_unit_width)) || (block_next_y > (block_table_height - block_unit_height))) return false else return Check_Position(block_next_x, block_next_y); } function Set_Offset(block_num, block_dir) { var block_unit_offset = block_dir * 2; var block_matrix_offset = block_dir * block_matrix_unit; block_unit_width = block_unit_dim[block_num][block_unit_offset+0]; block_unit_height = block_unit_dim[block_num][block_unit_offset+1]; block1_x = block_matrix[block_num][block_matrix_offset+0]; block1_y = block_matrix[block_num][block_matrix_offset+1]; block2_x = block_matrix[block_num][block_matrix_offset+2]; block2_y = block_matrix[block_num][block_matrix_offset+3]; block3_x = block_matrix[block_num][block_matrix_offset+4]; block3_y = block_matrix[block_num][block_matrix_offset+5]; block4_x = block_matrix[block_num][block_matrix_offset+6]; block4_y = block_matrix[block_num][block_matrix_offset+7]; } function Get_Content(block_num) { return block_content1 + block_images[block_num].src + block_content2; } function Drop_Block() { var drop_step = 1; block_shown = false; clearInterval(block_timer_id); while (Check_Direction(0,drop_step)) drop_step++; Move_Block(0,drop_step-1); setTimeout("Check_Block()",1); // setTimeout so that block's final postion can be seen } function Move_Block(x_offset,y_offset) { var block_offset_x = x_offset * block_size; var block_offset_y = y_offset * block_size; block_position_x += x_offset; block_position_y += y_offset; _block.block1.style.pixelLeft += block_offset_x; _block.block1.style.pixelTop += block_offset_y; _block.block2.style.pixelLeft += block_offset_x; _block.block2.style.pixelTop += block_offset_y; _block.block3.style.pixelLeft += block_offset_x; _block.block3.style.pixelTop += block_offset_y; _block.block4.style.pixelLeft += block_offset_x; _block.block4.style.pixelTop += block_offset_y; } function Show_Block() { block_position_x = 4; block_position_y = 0; block_direction = 0; block_current = block_next; block_next = Math.floor(Math.random() * block_type); Set_Offset(block_current,block_direction); block_content = Get_Content(block_current); _block.block1.innerHTML = block_content; _block.block1.style.pixelLeft = (block1_x + block_position_x) * block_size + block_base_x; _block.block1.style.pixelTop = block1_y * block_size + block_base_y; _block.block2.innerHTML = block_content; _block.block2.style.pixelLeft = (block2_x + block_position_x) * block_size + block_base_x; _block.block2.style.pixelTop = block2_y * block_size + block_base_y; _block.block3.innerHTML = block_content; _block.block3.style.pixelLeft = (block3_x + block_position_x) * block_size + block_base_x; _block.block3.style.pixelTop = block3_y * block_size + block_base_y; _block.block4.innerHTML = block_content; _block.block4.style.pixelLeft = (block4_x + block_position_x) * block_size + block_base_x; _block.block4.style.pixelTop = block4_y * block_size + block_base_y; if (block_next != block_current) { Set_Offset(block_next,block_direction); block_content = Get_Content(block_next); } _block.blockp1.innerHTML = block_content; _block.blockp1.style.pixelLeft = block1_x * block_size + preview_base_x; _block.blockp1.style.pixelTop = block1_y * block_size + preview_base_y; _block.blockp2.innerHTML = block_content; _block.blockp2.style.pixelLeft = block2_x * block_size + preview_base_x; _block.blockp2.style.pixelTop = block2_y * block_size + preview_base_y; _block.blockp3.innerHTML = block_content; _block.blockp3.style.pixelLeft = block3_x * block_size + preview_base_x; _block.blockp3.style.pixelTop = block3_y * block_size + preview_base_y; _block.blockp4.innerHTML = block_content; _block.blockp4.style.pixelLeft = block4_x * block_size + preview_base_x; _block.blockp4.style.pixelTop = block4_y * block_size + preview_base_y; if (block_next != block_current) { Set_Offset(block_current,block_direction); block_content = Get_Content(block_current); } block_shown = true; if (Check_Direction(0,0)) return true else return false; } function Mark_Block() { var this_offset_x = 0; var this_offset_y = 0; var this_block = null; block_shown = false; for (var i = 1; i <= block_component; i++) { this_offset_x = block_position_x + eval(block_id + i + "_x"); this_offset_y = block_position_y + eval(block_id + i + "_y"); block_position[this_offset_x][this_offset_y] = true; document.images[this_offset_y*block_table_width+this_offset_x].src = block_images[block_current].src; this_block = eval(_block_style + block_id + i + ""); this_block.style.pixelTop = -block_size; } } function Remove_Line(line_num) { var this_line = block_position_y + line_num; var upper_line = this_line - 1; var no_more_line = false; while ((upper_line >= 0) && (!no_more_line)) { no_more_line = true; for (var i = 0; i < block_table_width; i++) { if (block_position[i][upper_line]) { no_more_line = false; document.images[this_line*block_table_width+i].src = document.images[upper_line*block_table_width+i].src; block_position[i][this_line] = true; block_position[i][upper_line] = false; } else { document.images[this_line*block_table_width+i].src = table_background.src; block_position[i][this_line] = false; } } this_line--; upper_line--; } } function Show_Tag() { var next_step = 0; if (game_tag_step > 0) { next_step = Math.ceil(game_tag_step/10); _block.blockxx.style.pixelTop += next_step; game_tag_step -= next_step; setTimeout("Show_Tag()",movement_timer); } else Event_Init(); } function Clear_Block() { _block.block1.style.pixelTop = -block_size; _block.block2.style.pixelTop = -block_size; _block.block3.style.pixelTop = -block_size; _block.block4.style.pixelTop = -block_size; } function Restart_Game() { high_score = (high_score < game_score)?game_score:high_score; game_score = 0; game_lines = 0; game_level = 0; game_finished = false; Hide_Tag(); Clear_Block(); Clear_Num(); Show_Score(); Show_Lines(); Show_Level(); Start_Block(); } function Game_Over() { Event_Release(); clearInterval(block_timer_id); if (game_winner) _block.blockxx.innerHTML = game_winner_tag else _block.blockxx.innerHTML = game_over_tag; _block.blockxx.style.pixelTop = block_base_y; game_winner = false; game_pause = false; game_finished = true; game_tag_step = game_tag_offset; setTimeout("Show_Tag()",movement_timer); } function Clear_Table() { for (var i = 0; i < block_table_height; i++) for (var j = 0; j < block_table_width; j++) if (block_position[j][i]) { document.images[i*block_table_width+j].src = table_background.src; block_position[j][i] = false; } } function Clear_Num() { var number_id = null; clearInterval(number_timer); for (var i = 0; i <= score_max_index; i++) if (!score_tag[i]) { number_id = eval(_block_style + block_id + "x" + i + ""); number_id.style.pixelTop = -block_size; number_id.style.pixelLeft = 0; score_tag[i] = true; } } function Move_Num() { var number_id = null; var score_found = 0; for (var i = 0; i <= score_max_index; i++) if (!score_tag[i]) { number_id = eval(_block_style + block_id + "x" + i + ""); if (number_id.style.pixelTop > block_base_y) { number_id.style.pixelTop += score_step[number_id.lines-1]; score_found++; } else { number_id.style.pixelTop = -block_size; number_id.style.pixelLeft = 0; score_tag[i] = true; } } if (score_found == 0) { clearInterval(number_timer); score_shown = false; } } function Show_Num(line_num, line_offset) { var number_id = null; var this_index = score_index; var this_offset = ((block1_x + block_position_x) > 0)?-1:0; var score_content = score_content1 + line_num + score_content2 + score_grip[line_num-1] + score_content3; while (!score_tag[score_index]) { score_index++; if (score_index > score_max_index) score_index = 0; if (score_index == this_index) { score_index++; if (score_index > score_max_index) score_index = 0; break; } } number_id = eval(_block_style + block_id + "x" + score_index + ""); number_id.lines = line_num; score_tag[score_index] = false; number_id.style.pixelLeft = (block1_x + block_position_x + this_offset) * block_size + block_base_x; number_id.style.pixelTop = (block1_y + block_position_y + line_offset) * block_size + block_base_y; number_id.innerHTML = score_content; if (!score_shown) { score_shown = true; number_timer = setInterval("Move_Num()",movement_timer); } } function Show_Score() { _block.score.document.forms[0].High_Score.value = high_score; _block.score.document.forms[0].Game_Score.value = game_score; } function Show_Lines() { if (!game_winner) _block.score.document.forms[0].Lines_Remain.value = game_level_lines[game_level] - game_lines else _block.score.document.forms[0].Lines_Remain.value = game_lines; } function Check_Line() { var line_done = false; var line_found = 0; var line_offset = 0; for (var i = 0; i < block_unit_height; i++) { line_done = true; for (var j = 0; j < block_table_width; j++) if (!block_position[j][block_position_y+i]) { line_done = false; break; } if (line_done) { if (line_found == 0) line_offset = i; line_found++; Remove_Line(i); } } if (line_found > 0) { Show_Num(line_found,line_offset); game_score += score_grip[line_found-1]; Show_Score(); game_lines += line_found; if ((game_lines >= game_level_lines[game_level]) && (!game_winner)) { game_lines -= game_level_lines[game_level]; if (game_level < game_max_level) { game_level++; Show_Level(); } else game_winner = true; } Show_Lines(); } } function Check_Block() { Mark_Block(); Check_Line(); Start_Block(); } function Mov_Block() { if (Check_Direction(0,1)) { block_position_y++; _block.block1.style.pixelTop += block_size; _block.block2.style.pixelTop += block_size; _block.block3.style.pixelTop += block_size; _block.block4.style.pixelTop += block_size; } else Check_Block(); } function Resume_Game() { game_pause = false; block_timer_id = setInterval("Mov_Block()",block_timer[game_level]); number_timer = setInterval("Move_Num()",movement_timer); } function Pause_Game() { game_pause = true; clearInterval(block_timer_id); clearInterval(number_timer); } function Key_Down() { var key_code = event.keyCode; if (game_finished) Restart_Game() else { if (game_pause) Resume_Game(); if((key_code == key_pause) || (key_code == key_PAUSE)) { if (block_shown) Pause_Game(); } if((key_code == key_down) || (key_code == key_DOWN)) { if (block_shown) Drop_Block(); } if ((key_code == key_up) || (key_code == key_UP)) { if (block_shown) if (Check_Rotate()) Rotate_Block(); } if ((key_code == key_left) || (key_code == key_LEFT)) { if (block_shown) if (Check_Direction(-1,0)) Move_Block(-1,0); } if ((key_code == key_right) || (key_code == key_RIGHT)) { if (block_shown) if (Check_Direction(1,0)) Move_Block(1,0); } } return false; } function Rotate_Block() { while ((block_position_x + block_unit_width - 1) >= block_table_width) { block_position_x--; } _block.block1.style.pixelLeft = (block1_x + block_position_x) * block_size + block_base_x; _block.block1.style.pixelTop = (block1_y + block_position_y) * block_size + block_base_y; _block.block2.style.pixelLeft = (block2_x + block_position_x) * block_size + block_base_x; _block.block2.style.pixelTop = (block2_y + block_position_y) * block_size + block_base_y; _block.block3.style.pixelLeft = (block3_x + block_position_x) * block_size + block_base_x; _block.block3.style.pixelTop = (block3_y + block_position_y) * block_size + block_base_y; _block.block4.style.pixelLeft = (block4_x + block_position_x) * block_size + block_base_x; _block.block4.style.pixelTop = (block4_y + block_position_y) * block_size + block_base_y; } function Start_Block() { if (Show_Block()) { clearInterval(block_timer_id); block_timer_id = setInterval("Mov_Block()",block_timer[game_level]); } else Game_Over(); } function Table_Init() { var layer_content = ""; layer_content = '
 
'; _block.blockb0.innerHTML = layer_content; layer_content = '
 
'; _block.blockb1.innerHTML = layer_content; layer_content = ''; for (var i = 0; i < block_table_height; i++) { layer_content += ''; for (var j = 0; j < block_table_width; j++) layer_content += ''; layer_content += ''; } layer_content += '
'; _block.block01.innerHTML = layer_content; layer_content = '
&nbsp
'; _block.previewx.innerHTML = layer_content; layer_content = '
&nbsp
'; _block.preview.innerHTML = layer_content; layer_content = '

' + 'High Score' + '

' + 'Game Score' + '

' + 'Lines Remain' + '' + '

'; _block.score.innerHTML = layer_content; } function Define_Layer(Layer_ID, Layer_Left, Layer_Top, Layer_Width, Layer_Height) { var this_block = null; this_block = eval(_block_style + Layer_ID); this_block.style.pixelLeft = Layer_Left; this_block.style.pixelTop = Layer_Top; this_block.style.width = Layer_Width; this_block.style.height = Layer_Height; this_block.style.visibility = "visible"; } function Layer_Init() { var this_block_id = ""; // layers for falling blocks for (i = 1; i <= block_component; i++) { this_block_id = block_id + i + ""; Define_Layer(this_block_id,0,-block_size,block_size,block_size); } // layers for preview blocks for (i = 1; i <= block_component; i++) { this_block_id = block_id + "p" + i + ""; Define_Layer(this_block_id,0,-block_size,block_size,block_size); } // layers for score points for (i = 0; i <= score_max_index; i++) { this_block_id = block_id + "x" + i + ""; Define_Layer(this_block_id,0,-block_size,block_size,block_size); } // layer for game tags Define_Layer("blockxx",tag_layer_offset,-game_tag_height,game_tag_width,game_tag_height); // layer for table outer background Define_Layer("blockb0",(block_base_x - block_preview_gap),(block_base_y - block_preview_gap),(block_table_width * block_size + block_preview_gap * 2),(block_table_height * block_size + block_preview_gap * 2)); // layer for table inner background Define_Layer("blockb1",block_base_x,block_base_y,(block_table_width * block_size),(block_table_height * block_size)); // layer for table intro Define_Layer("block00",block_base_x,block_base_y,(block_table_width * block_size),(block_table_height * block_size)); // layer for table Define_Layer("block01",block_base_x,block_base_y,(block_table_width * block_size),(block_table_height * block_size)); // layer for preview box background Define_Layer("previewx",(preview_base_x - block_preview_gap),(preview_base_y - block_preview_gap),(block_preview_x * block_size + block_preview_gap * 2),(block_preview_y * block_size + block_preview_gap * 2)); // layer for preview box Define_Layer("preview",preview_base_x,preview_base_y,(block_preview_x * block_size),(block_preview_y * block_size)); // layer for score board Define_Layer("score",(preview_base_x - block_preview_gap),(preview_base_y + block_preview_y * block_size + block_preview_gap + block_table_gap),1,1); } function Para_Init() { var block_window_width = document.body.clientWidth; var block_window_height = document.body.clientHeight; var block_scale = 1; var block_table_x_size = 0; var block_table_y_size = 0; block_size = 16; if ((block_window_width > block_base_width) || (block_window_height > block_base_height)) { block_scale = Math.min(block_window_width/block_base_width, block_window_height/block_base_height); block_scale = Math.max(block_scale, 1); } block_size = Math.floor(block_size * block_scale); block_table_x_size = block_preview_gap + block_table_width * block_size + block_preview_gap + block_table_gap + block_preview_gap + block_preview_x * block_size + block_preview_gap; block_table_y_size = block_preview_gap + block_table_height * block_size + block_preview_gap; block_window_width = Math.max(block_window_width, block_table_x_size); block_window_height = Math.max(block_window_height, block_table_y_size); block_base_x = Math.floor((block_window_width - block_table_x_size)/2) + block_preview_gap; block_base_y = Math.floor((block_window_height - block_table_y_size)/2) + block_preview_gap; preview_base_x = block_base_x + block_table_width * block_size + block_table_gap + block_preview_gap; preview_base_y = block_base_y + block_preview_gap; game_tag_offset = (block_table_height * block_size - game_tag_height)/2; tag_layer_offset = block_base_x + (block_table_width * block_size - game_tag_width)/2; block_content1 = '
'; table_intro_dim = ''; p+='

TheNIcNacStop.com 

100 Greatest Books

For Your Pets

Copyright © 1998-2010 - Anthony Yockey
All Rights Reserved
Joomla Template by Joomlashack
Joomla Templates by JoomlaShack Joomla Templates