📄 weeds.java
字号:
//// Copyright 2002 Nokia Corporation. // // THIS SOURCE CODE IS PROVIDED 'AS IS', WITH NO WARRANTIES WHATSOEVER, // EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY, FITNESS // FOR ANY PARTICULAR PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE // OR TRADE PRACTICE, RELATING TO THE SOURCE CODE OR ANY WARRANTY OTHERWISE // ARISING OUT OF ANY PROPOSAL, SPECIFICATION, OR SAMPLE AND WITH NO // OBLIGATION OF NOKIA TO PROVIDE THE LICENSEE WITH ANY MAINTENANCE OR // SUPPORT. FURTHERMORE, NOKIA MAKES NO WARRANTY THAT EXERCISE OF THE // RIGHTS GRANTED HEREUNDER DOES NOT INFRINGE OR MAY NOT CAUSE INFRINGEMENT // OF ANY PATENT OR OTHER INTELLECTUAL PROPERTY RIGHTS OWNED OR CONTROLLED // BY THIRD PARTIES // // Furthermore, information provided in this source code is preliminary, // and may be changed substantially prior to final release. Nokia Corporation // retains the right to make changes to this source code at any time, // without notice. This source code is provided for informational // purposes only. //// // Nokia and Nokia Connecting People are registered trademarks of Nokia // Corporation. Java and all Java-based marks are trademarks or registered // trademarks of Sun Microsystems, Inc. Other product and company names // mentioned herein may be trademarks or trade names of their respective owners.//// A non-exclusive, non-transferable, worldwide, limited license is hereby // granted to the Licensee to download, print, reproduce and modify the // source code. The licensee has the right to market, sell, distribute and // make available the source code in original or modified form only when // incorporated into the programs developed by the Licensee. No other // license, express or implied, by estoppel or otherwise, to any other // intellectual property rights is granted herein. //package example.fishtank;import javax.microedition.lcdui.*;import java.util.Random;public class Weeds{ // These NUM values depend on the images actually included // in the MIDLET JAR file. private static final int PATTERN_NUM = 3; private static final int FRAME_NUM = 4; private static final Image[][] weedImage; private static final Random random = new Random(); private static final int weedHeight, weedWidth; private final int weedBunches; private final int frame[]; private final int pattern[]; private final int y; static { weedImage = new Image[PATTERN_NUM][FRAME_NUM]; int i = 0; int k = 0; try { for (i = 0; i < PATTERN_NUM; i ++) { for (k = 0; k < FRAME_NUM; k ++) { weedImage[i][k] = Image.createImage("/weed" + i + k + ".png"); } } } catch (java.io.IOException e) { weedImage[i][k] = null; } // This MIDlet implicitly assumes that all the Images // are the same width and height. weedWidth = weedImage[0][0].getWidth(); weedHeight = weedImage[0][0].getHeight(); } public Weeds() { weedBunches = (FishTankCanvas.waterWidth - 1) / weedWidth + 1; pattern = new int[weedBunches]; frame = new int[weedBunches]; for (int i = 0; i < weedBunches; i ++) { int patternNum = Fish.rand(PATTERN_NUM); //the weed pattern should not be the same as previous pattern while ((i > 0) && patternNum == pattern[i-1]) { patternNum = Fish.rand(PATTERN_NUM); } pattern[i] = patternNum; frame[i] = Fish.rand(FRAME_NUM); } y = FishTankCanvas.waterHeight - weedHeight + 2; } public void draw(Graphics g) { Image img = null; for (int i = 0; i < weedBunches; i++) { img = weedImage[pattern[i]][frame[i]]; if (img != null) { g.drawImage(img, i * weedWidth, y, Graphics.LEFT | Graphics.TOP); frame[i] = (frame[i] + 1) % FRAME_NUM; } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -