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

📄 tools.java

📁 此文件是关于手机游戏开发的理论
💻 JAVA
字号:
/**
 * A bunch of static tools
 */

//#ifdef nokia

import com.nokia.mid.ui.DeviceControl;
//#endif
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.Graphics;
import java.util.Random;

public final class Tools
{
   public static final int GRAPHICS_TOP_LEFT = Graphics.LEFT | Graphics.TOP;

   private static final Random randomizer = new Random();

   public static final int getRand(int min, int max)
   {
      int r = Math.abs(randomizer.nextInt());
      //System.out.println("r=" + r +" m=" + ((max - min)) + " r%=" + (r % (max - min)));
      return (r % ((max - min + 1))) + min;
   }

   /**
    * Returns true if b intersects a
    */
   public static final boolean isIntersectingRect(int ax, int ay, int aw, int ah,
                                                  int bx, int by, int bw, int bh)
   {
      // check if rectangle A is inside B (order is important!)
      //System.out.println("isIntersectingRect: (" + ax + ", " + ay + ", " + aw + ", " + ah + ") in (" + bx + ", " + by + ", " + bw + ", " + bh);
      if (by + bh < ay || by > ay + ah ||
              bx + bw < ax || bx > ax + aw)
         return false;

      return true;
   }

   /**
    * Returns true if rectangle b is wholly within rectangle a
    */
   public static final boolean isRectWithinRect(int ax, int ay, int aw, int ah,
                                                int bx, int by, int bw, int bh)
   {
      if (isPointInRect(bx, by, ax, ay, aw, ah) && isPointInRect(bx + bw, by, ax, ay, aw, ah) &&
              isPointInRect(bx, by + bh, ax, ay, aw, ah) && isPointInRect(bx + bw, by + bh, ax, ay, aw, ah))
         return true;
      return false;
   }


   public static final boolean isPointInRect(int px, int py, int x, int y, int w, int h)
   {
      if (px < x) return false;
      if (px > x + w) return false;
      if (py < y) return false;
      if (py > y + h) return false;
      return true;
   }


   public final static int[] expandArray(int[] oldArray, int expandBy)
   {
      int[] newArray = new int[oldArray.length + expandBy];
      System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);
      return newArray;
   }

   public final static Image[][] expandArray(Image[][] oldArray, int expandBy)
   {
      Image[][] newArray = new Image[oldArray.length + expandBy][];
      System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);
      return newArray;
   }


}


















⌨️ 快捷键说明

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