⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.java

📁 之前有人传过`不过是没有资源只有代码的` 我在重新传一遍有资源的`是一个滑雪的游戏`类似flash的打企鹅`
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
					setClip(0,0,s_w,s_h);					setColor(0x88AAEE);					y = s_h - 50 - fT[0].fh - fTarget.fh - fBg.fh + 40;					fillRect(0,0,s_w,y);	    	     	for (i = 0; i < s_w; i+= fBg.fw) fBg.draw(i,y);					y += fBg.fh - 40;					x = (a_x_d >> 2) % fTarget.fw;	    	     	for (i = - x; i < s_w; i+= fTarget.fw) fTarget.draw(i,y);					y += fTarget.fh;					x = (a_x_d >> 2) % (fT[0].fw + fT[1].fw);		    	     	for (i = - x; i < s_w; i+= fT[0].fw + fT[1].fw)	    	     	{	    	     		fT[0].draw(i, y);	    	     		fT[1].draw(i + fT[0].fw,y);	    	     	}					y += fT[0].fh;					setClip(0,0,s_w,s_h);					setColor(0xF8F8FF);					fillRect(0,y,s_w,60);					y -= 2;					x = (a_x_d >> 2) % fSnow.fw;		    	     	for (i = - x; i < s_w; i+= fSnow.fw) 						fSnow.draw(i,y);					x = track_width - a_x_d;					y += 10;					if (x < s_w)					fChess.draw(x,y + 4);					x = (fChess.fw >> 1) - a_x_d;					if (x + fChess.fw > 0)                                                                             					{						fChess.draw(x, y + 4);					}//#if Nokia					y += man.frm[0].fh - 12;//#else					y += man.frm_up[0].fh - 12;//#endif					if (ghost != null)					{						y -= 22;						start_y = y;						ghost.drawBSS();							drawGhostName(ghost.x - a_x_d, ghost.ty, 0xFFFFFF);						y += 24;						start_y = y;						man.drawBSS();							y -= 2;					}					else					{						start_y = y;						man.drawBSS();						}					setClip(0, 0, s_w, s_h);					y -= 10;					x = a_x_d % fAmmo.fw;				    	     	for (i = - x; i < s_w; i+= fAmmo.fw) 						fAmmo.draw(i,y);					y += fAmmo.fh;					setClip(0,0,s_w,s_h);					setColor(0xD7FFF6);					fillRect(0,y,s_w,s_h - y);					y -= fSign.fh;					w = fAmmo.fw << 3;                    for (x = - fSign.fw >> 1, i = 0; x < track_width; x += w, i += 100)                    {                    	if (x > 0 && (x + fSign.fw >= a_x_d) && (x <= (a_x_d + s_w)))                    	{                    		fSign.draw(x - a_x_d,y);                    		if (i < 1000)                    		{        	            		intToString(i,0,3);    	                		buf[3] = 'm';                    		}                    		else                    		{                    			buf[0] = 'g';                    			buf[1] = 'o';                    			buf[2] = 'a';                    			buf[3] = 'l';                    		}	                   		drawChars(0,4,x - a_x_d + 1, y + 4,2);                    	}                    }					setClip(0,0,s_w,s_h);					isBoard = true;					break;				case STATE_SKATER_RUN_SCORES:					y = s_h >> 1;					drawBgm();					drawString(text[34],2,y - 8); // time					timeToString(time_finish);					drawChars(0,8,s_w - 51,y - 10,1);					setColor(0xA0A000);					setClip(0,0,s_w,s_h);					drawLine(2,y + 4,s_w - 2,y + 4);					drawString(text[33],2,y + 11); // score					intToString(total_points,0,4);					drawChars(0,4,s_w - 29,y + 9,1);					break;				case STATE_BIATHLON_RUN_SCORES:					y = s_h >> 1;					drawBgm();					drawString(text[34],2,y - 29); // time					timeToString(time_finish);					drawChars(0,8,s_w - 51,y - 31,1);					drawString(text[35],2,y - 12); // missed					intToString(man.missed,0,2);					drawChars(0,2,s_w - 15,y - 14,1);					setColor(0xA0A000);					setClip(0,0,s_w,s_h);					drawLine(2,y,s_w - 2,y);					drawString(text[36],2,y + 5); // result					timeToString(time_total);					drawChars(0,8,s_w - 51,y + 3,1);					drawString(text[33],2,y + 22); // score					intToString(total_points,0,4);					drawChars(0,4,s_w - 29,y + 20,1);					break;				case STATE_BIATHLON_RUN:					switch (man.state)					{					case STATE_BIATHLON_RUN:					case STATE_BIATHLON_RUN_FINISH:						setColor(0x88AAEE);//#if T610						fillRect(0,0,s_w,y_bg_top + 70);						setColor(0xFFFFFF);						fillRect(0,y_bg_top + 70,s_w,s_h);//#else						fillRect(0,0,s_w,y_bg_top);						setColor(0xFFFFFF);						fillRect(0,y_bg_top + fBg.fh,s_w,s_h);						x = (a_x_d >> 3) % fBg.fw;				// background	    		     	for (i = - x; i < s_w; i+= fBg.fw) 							fBg.draw(i,y_bg_top);//#endif						y = y_bound_bottom - fTree[0].fh - 16;						for (i = (a_x_d >> 1), j = -2; i < track_width; i += 40, j = -j)						{							x = i - a_x_d;							if ((x > - fTree[0].fw) && (x <= s_w))								fTree[0].draw(x,y + j);						}						for (k = 0; k < 3; k++)						if (k == 1)						{							if (ghost != null) 							{								if ((ghost.state == STATE_BIATHLON_RUN) || (ghost.state == STATE_BIATHLON_RUN_FINISH))								{									ghost.y += 2;									ghost.x = ghost.x % track_x_sum;									for (i = 0; i < rounds_count; i++, ghost.x += track_x_sum)									{										ghost.drawBSS();										drawGhostName(ghost.x - a_x_d, ghost.ty, 0xFF1020);									}									ghost.y -= 2;								}								man.y -= 2;								man.drawBSS();								man.y += 2;							}							else man.drawBSS();						}						else						{							distance = 0;							x2 = y2 = idx = 0;							setColor(0xFFFFFF);							for (i = 0,itotal = 0; itotal < tracks_total; i++,itotal++)							{								if (i >= track_x.length) i = 0;								x1 = x2;								y1 = y2;								x2 += track_x[i];								y2 += track_y[i];											if (x2 >= a_x_d && (x1 <= (a_x_d + s_w)))								{									n = 0;									dy = 12;									if (track_y[i] > 0)									{										n = 1; 										dy = 19;									}									if (track_y[i] < 0)									{										n = 2; 										dy = 12;									}													y = y1;									w = fT[n].fw;														for (j = x1,x = 0; j < x2; j += w, x += w)									{										if (j + w >= a_x_d && (j <= (a_x_d + s_w)))										{											if (k == 0)											{												fT[n].draw(j - a_x_d,start_y - a_y_d - dy - y,x1 - a_x_d,0,x2 - x1,s_h);												setClip(0,0,s_w,s_h);												fillRect(j - a_x_d,start_y - a_y_d - dy - y + fT[n].fh,w,32);																fSn[idx].draw(j - a_x_d,start_y - a_y_d - y - 12);												fSn[idx + 4].draw(j - a_x_d + 8,start_y - a_y_d - dy - y + fT[n].fh);																			if (i == 0 && (x == 0))												{													fChess.draw(j - a_x_d,start_y - a_y_d - y - 10);												}	   													if (0 == (distance & 127))												{													fFlag[0].draw(j - a_x_d + 12, start_y - a_y_d - y - 12 - fFlag[0].fw);												}											}											if (k == 2)											{												if (0 == (distance & 127))												{													setClip(0,0,s_w,s_h);													fFlag[1].draw(j - a_x_d + 2,start_y - a_y_d - dy - y + fT[n].fh - 10);												}											}										}										if (track_y[i] < 0) y -= 8;										if (track_y[i] > 0) y += 8;																distance += w;										idx = (++idx) & 3;									}								}								else								{									distance += track_x[i];								}							}						} // if k						isBoard = true;                        break;					case STATE_BIATHLON_SHOOT:					case STATE_BIATHLON_SHOOT_FINISH:						setColor(0x88AAEE);//#if T610						fillRect(0,0,s_w,y_bg_top + 70);						setColor(0xFFFFFF);						fillRect(0,y_bg_top + 70,s_w,s_h);//#else						fillRect(0,0,s_w,y_bg_top);						setColor(0xFFFFFF);						fillRect(0,y_bg_top + fBg.fh,s_w,s_h);						x = (a_x_d >> 3) % fBg.fw;				// background		    	     	for (i = - x; i < s_w; i+= fBg.fw) 							fBg.draw(i,y_bg_top);//#endif						y = y_bound_bottom - fTree[0].fh - 16;						for (i = 0, j = -2; i < track_width; i += 40, j = -j)						{							if ((i > - fTree[0].fw) && (i <= s_w))								fTree[0].draw(i,y + j);						}						y = s_h - fMeter.fh - 16;						h = man.s_v >> 5;						fMeter.draw(7,y);						fMeterred.draw(7,y + 8,0,y + 18 - h - h,s_w,h + h);						setClip(0,0,s_w,s_h);						fHeart.draw(2,y - fHeart.fh - 6,man.heart_index);						for (i = 0, x = 0; i < 5; i++, x += fAmmo.fw)						{							if (i < man.aim_n) fAmmo.draw(8 + x,6,1);							else fAmmo.draw(8 + x,6);						}						y = man.target_y - (fTarget.fh >> 1);						for (i = 0, x = ((s_w - fTarget.fw) >> 1) - fTarget.fw - fTarget.fw; i < man.targets.length; i++, x += fTarget.fw)						{							if (man.targets[i] == -1) fTarget.draw(x,y,1);							if (man.targets[i] == 0) fTarget.draw(x,y,0);							if (man.targets[i] > 0) fTarget.draw(x,y,2);						}						setClip(0,0,s_w,s_h);						if (man.state == STATE_BIATHLON_SHOOT)						{							x = (s_w >> 1) + fTarget.fw * (man.aim_n - 2) - (fSign.fw >> 1) + man.aim_x;							y = man.target_y - man.aim_y - (fSign.fh >> 1);							fSign.draw(x,y);						}									isBoard = true;					}					if (ghost != null)					{						if ((ghost.state == STATE_BIATHLON_SHOOT) || (ghost.state == STATE_BIATHLON_SHOOT_FINISH))						{							setClip(0,0,s_w,s_h);														str = (m_ghost != null) ? m_ghost : text[30]; // ghost							drawString(str + text[37],2,s_h - 10); // shoots						}					}					break;				case STATE_EDITOR:				case STATE_EDITOR_FINISH:					drawBgm();					w1 = ew * 11;					x = ((s_w - w1) >> 1);					y = (s_h - 62) >> 1;					str = menuName;					ch = letters.charAt(editY * 11 + editX);					if (ch == '_') str = text[9]; // back					if (ch == '#') str = text[38]; // ok					drawString(str,x,y + 2);					setClip(0,0,s_w,s_h);					setColor(0x8080B0);					fillRect(x + w1 + ew * (idx - editText.length) - 1,y + 1,ew,10);					for (i = 0, j = x + w1 - editText.length * ew; i < editText.length; i ++, j += ew)					{						buf[0] = editText[i];						drawChars(0,1,j,2 + y);					}					for (j = 0; j < 4; j++)						for (i = 0; i < 11; i++)						{							buf[0] = letters.charAt(j * 11 + i);							drawChars(0,1,x + i * ew, j * 12 + y + 14);						}					setClip(0,0,s_w,s_h);					 					setColor(0x60B0A0);					drawRect(editX * ew + x - 1, editY * 12 + y + 13,ew,11);					setColor(0x8080B0);					drawRect(x - 2,y + 12,w1 + 2,49);					break;				case STATE_PLACE:					drawBgm();					w1 = getStringWidth(message);					drawString(message,(s_w - w1) >> 1, (s_h - 10) >> 1);					break;				case STATE_INTRO:					setColor(0xFFFFFF);					fillRect(0,0,s_w,s_h);					if (fBg != null) fBg.draw((s_w - fBg.fw) >> 1,(s_h - fBg.fh) >> 1);					break;				case STATE_LOGO:					drawLogo(false);					break;				} // switch by pmode				if (state == STATE_MENU)				{					if (!paused) drawLogo(true);					else drawRast();					w1 = menuItemWidth;					if (!isPointer)					{						setClip(0,0,s_w,s_h);						setColor(0x000040);						fillRect(2,menuTop - 4, s_w - 4,s_h - menuTop + 2);					}     					if (vMenu != null)    				if (vMenu.size() > 0)    				{						y = (menuIndex - menuDisp) * menuHeight + menuTop;			            h1 = 0;			            int totalMenuHeight = (vMenu.size() + vMenuName.size()) * menuHeight + menuTop + menuTop;		            	if (totalMenuHeight < s_h)		        	    {		    	        	h1 = ((s_h - totalMenuHeight) >> 1) + 8;			            }						if (!showLogo)						{							x = (s_w - menuWidth) >> 1;														setClip(0,0,s_w,s_h);							setColor(0x000040);							fillRect(x - 12, menuTop + h1 - 20, menuWidth + 24, vMenuName.size() * 16 - 3);										setColor(0x204070);							drawLine(x - 12, menuTop + h1 - 20, x + menuWidth + 11, menuTop + h1 - 20);						                for (i = 0; i < vMenuName.size(); i++)			                {			                	str = ((String)vMenuName.elementAt(i)).trim();			                	w2 = getStringWidth(str);								drawString(str,(s_w - w2) >> 1,menuTop + h1 - 17 + i * 16);							}						}							y1 = menuTop + h1 + (vMenuName.size() - 1) * 16;							for (i = 0, n = 0; i < vMenu.size(); i++)							{								v = (Vector)vMenu.elementAt(i);								for (k = 0; k < v.size(); k++, n++)								{									if ((n >= menuDisp) && (n - menuDisp < menuRange))									{										str = (String)(v.elementAt(k));										if (i + 1 < vMenu.size() && isState)										{											str += "^:";											str += (((Boolean)vState.elementAt(i)).booleanValue()) ? str_yes : str_no;										}										x1 = ((s_w - w1) >> 1);										if (isPointer)										{											y2 = (v.size() - k) * menuHeight - 3;											setClip(0,0,s_w,s_h);											setColor(i == menuIndex ? 0x2000B0 : 0x001060);											fillRect(x1 - 8, y1 - 3, w1 + 16, y2);													if (i == menuIndex && (k == 0))											{												setColor(0x7090D0);												drawLine(x1 - 8, y1 - 3, x1 + w1 + 7, y1 - 3);											}											if (i != menuIndex)											{												setColor(0x301090);												drawLine(x1 - 8, y1 + y2 - 3, x1 + w1 + 7, y1 + y2 - 3);											}										}										drawString(str,x1,y1 + (i == menuIndex ? 0 : 1));										y1 += menuHeight;									} // for k								} // if//								n += v.size();							} // for i					}				}				// needs to draw scoreboard				if (!paused && isBoard)				{					x = s_w - fBoard.fw;					if (s_h > 80) fBoard.draw(x,0);					if ((state == STATE_SKATER_RUN_FINISH) || 						((state == STATE_BIATHLON_RUN) && (man.state == STATE_BIATHLON_RUN_FINISH))) 						timeToString(time_finish);					else timeToString(time_current);					drawChars(0,8,x + 8,1,1);				}				if ((go_delay > 0) && (fGo[go_index] != null))				{					fGo[go_index].draw((s_w - fGo[go_index].fw) >> 1,(s_h - fGo[go_index].fh) >> 1);				}				isScreen = 0;			} // initOK			else  			{	// initOK == false				// drawing status message while loading etc				if (message != null && (isScreen == 1))				{					drawBgm();					drawMessage(message);					if (needLoadingIndicator)					{						setClip(0, 0, s_w, s_h);						for (j = 0; j < snow.length; j++)						{							x = (snow[j] >> 24) & 0xFF;							y = (snow[j] >> 16) & 0xFF;							drawImage(snowflake_index, x, y);						}						updateSnow();					}				}				// drawing progress bar				if (isScreen == 2)				{					drawBgm();					w2 = getStringWidth(message);					x = (s_w - w2) >> 1;					y = (s_h >> 1) - 8;					drawString(message,x,y);					setClip(0,0,s_w,s_h);					setColor(0x00CCFF);					fillRect(10,y + 12, (s_w - 20) * pb_cur / pb_max,4);					setColor(0x2266EE);					drawRect(10,y + 12, s_w - 20,4);				}			}		}		catch (Exception ex)		{//			ex.printStackTrace();		}		isPainting = false;    }    static boolean needLoadingIndicator = false;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -