📄 mainscreen.java
字号:
if (compX - meX <= 15 && Math.abs(compY - meY) <= 10) { case3Mode = 1; } // check borders for comp player compCheckBorders(); break; /* *kadoor beinaim */ case 4: int x = deltaX + 6; // initilaize palers and ball position meX = myWidth / 2 - 11; meY = myHeight * 3 / 4; compX = myWidth / 2 + 11; compY = myHeight * 3 / 4; xBall = myWidth / 2; freeBallY = myHeight * 3 / 4 - 12; yBall = 0; // throws ball deltaX++; if (deltaX >= 9) { //temp = Math.abs(rnd.nextInt()) % 2; deltaX = 1; if (Math.abs(rnd.nextInt()) % 2 == 0) { compMode = 2; } else { compMode = 3; } } freeBallY = freeBallY - (-x*x*1/8 - 6*x*1/8) - 37; break; /* *me throws the ball */ case 5: //freeBallY = freeBallY - (-deltaX*deltaX*10/11 - 6*deltaX*10/11) - 37; freeBallY = originalY - deltaY[deltaX]; deltaX++; xBall++; // checks if the ball hits the basket //if (xBall > (x2 + x3) / 2 - 10 && freeBallY > (y1 + y4) / 2 && freeBallY > oldY) { if (deltaX >= 29 && (xBall >= (x2 + x3) / 2 - 10 && xBall <= (x2 + x3) / 2 + 10)) { myScore += 2; oldY = 0; compMode = 3; // reset player and the balls meX = myWidth * 3 / 16; meY = myHeight * 3 / 4; compX = myWidth * 13 / 16; compY = myHeight * 3 / 4; xBall = compX - 8; yBall = 3; deltaX = 0; } // if the ball reaches the floor else if (deltaX >= 29 && (xBall < (x2 + x3) / 2 - 10 || xBall > (x2 + x3) / 2 + 10)) { freeBallY = meY; compMode = 1; oldY = 0; deltaX = 0; } else { oldY = freeBallY; } break; /* *comp throws the ball */ case 6: freeBallY = originalY - deltaY[deltaX]; deltaX++; xBall--; // checkes if the ball hits the basket if (deltaX >= 29) { compScore += 2; oldY = 0; compMode = 2; // reset player and the balls meX = myWidth * 3 / 16; meY = myHeight * 3 / 4; compX = myWidth * 13 / 16; compY = myHeight * 3 / 4; xBall = meX + 8; yBall= 3; deltaX = 0; } else { oldY = freeBallY; } break; default: //sdfgsdfgsdgf } repaint(); } private void compCheckBorders() { if (compY < y1) { compY = y1; } if (compY > y4) { compY = y4; } if (compX > (x2 + x3) / 2) { compX = (x2 + x3) / 2; } if (compX < (x1 + x4) / 2) { compX = (x1 + x4) / 2; } } private void ballJump() { if (ballDir == 0) { yBall--; if (yBall < 3) { ballDir = 1; } } else { yBall++; if (yBall > 9) { ballDir = 0; } } } public void startGame() { myScore = 0; compScore = 0; clockMinute = 2; clockSecond = 0; compYDirection = 0; meX = myWidth* 3 / 16; meY = myHeight * 3 / 4; compX = myWidth* 13 / 16; compY = myHeight * 3 / 4; xBall = meX + 8; yBall = 3; yBallOwner = 0; //compMode = 4; BallAfterTimer = 1; timerStatus = 1; delay = 0; case3Mode = 1; delay2 = 0; counter = 0; keyStatus = 0; //startTimer(); } public void startTimer() { TimerTask mover = new TimerTask() { public void run() { myMove2(); } }; TimerTask myCounter = new TimerTask() { public void run() { counter++; if (clockSecond == 0) { clockMinute--; clockSecond = 59; } clockSecond--; if (clockMinute == 0 && clockSecond == 0) { compMode = 0; parent.deleteRMS(); stopTimer(); finishGame = 1; if (myScore >= compScore) { parent.setCurrent("YouWin"); } else { parent.setCurrent("IWin"); } } } }; timer = new Timer(); timerCounter = new Timer(); try { timer.schedule(mover, parent.getLevel(), parent.getLevel()); } catch (IllegalArgumentException e) { timer.schedule(mover, 50, 50); } timerCounter.schedule(myCounter, 1000, 1000); } public void stopTimer() { timer.cancel(); timerCounter.cancel(); } /** * Called when a key is pressed. */ protected void keyPressed(int keyCode) { if (this.getGameAction(keyCode) == UP) { keyStatus = KEY_NUM2; } else if (this.getGameAction(keyCode) == DOWN) { keyStatus = KEY_NUM8; } else if (this.getGameAction(keyCode) == LEFT) { keyStatus = KEY_NUM4; } else if (this.getGameAction(keyCode) == RIGHT) { keyStatus = KEY_NUM6; } else if (this.getGameAction(keyCode) == FIRE) { keyStatus = KEY_NUM5; } else { keyStatus = keyCode; } } /** * Called when a key is released. */ protected void keyReleased(int keyCode) { keyStatus = 0; } public void setStatus(byte[] rec) { myScore = (int)rec[0]; compScore = (int)rec[1]; clockMinute = (int)rec[2]; clockSecond = (int)rec[3]; compYDirection = (int)rec[4]; meX = (int)rec[5]; meY = (int)rec[6]; compX = (int)rec[7]; compY = (int)rec[8]; xBall = (int)rec[9]; yBall = (int)rec[10]; yBallOwner = (int)rec[11]; compMode = (int)rec[12]; BallAfterTimer = (int)rec[13]; timerStatus = (int)rec[14]; delay = (int)rec[15]; case3Mode = (int)rec[16]; delay2 = (int)rec[17]; counter = (int)rec[18]; keyStatus = (int)rec[19]; ballDir = (int)rec[20]; ballOwner = (int)rec[21]; xBallOwner = (int)rec[22]; deltaX = (int)rec[23]; oldY = (int)rec[24]; doneY = (int)rec[25]; freeBallX = (int)rec[26]; freeBallY = (int)rec[27]; originalY = (int)rec[28]; parent.setLevel((int)rec[29]); if ((int)rec[30] == 1) parent.setSoundEnable(true); else parent.setSoundEnable(false); } public byte[] getStatus() { byte[] rec = new byte[31]; rec[0] = (byte)myScore; rec[1] = (byte)compScore; rec[2] = (byte)clockMinute; rec[3] = (byte)clockSecond; rec[4] = (byte)compYDirection; rec[5] = (byte)meX; rec[6] = (byte)meY; rec[7] = (byte)compX; rec[8] = (byte)compY; rec[9] = (byte)xBall; rec[10] = (byte)yBall; rec[11] = (byte)yBallOwner; rec[12] = (byte)compMode; rec[13] = (byte)BallAfterTimer; rec[14] = (byte)timerStatus; rec[15] = (byte)delay; rec[16] = (byte)case3Mode; rec[17] = (byte)delay2; rec[18] = (byte)counter; rec[19] = (byte)keyStatus; rec[20] = (byte)ballDir; rec[21] = (byte)ballOwner; rec[22] = (byte)xBallOwner; rec[23] = (byte)deltaX; rec[24] = (byte)oldY; rec[25] = (byte)doneY; rec[26] = (byte)freeBallX; rec[27] = (byte)freeBallY; rec[28] = (byte)originalY; rec[29] = (byte)parent.getLevel(); if (parent.getSoundEnable()) rec[30] = (byte)1; else rec[30] = (byte)0; return rec; } public int getCompMode() { return compMode; } public void setCompMode(int i) { compMode = i; } /** * called when the screen disapear */ protected void hideNotify() { if (finishGame == 0) { parent.setCurrent("MainMenu"); } stopTimer(); } /** * called when the screen reapear */ protected void showNotify() { startTimer(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -