📄 sprite.java
字号:
/* * Copyright (c) 2002, 2003 Sun Microsystems, Inc. All Rights Reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * - Redistribution of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * - Redistribution in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * Neither the name of Sun Microsystems, Inc., 'Java', 'Java'-based * names, or the names of contributors may be used to endorse or promote * products derived from this software without specific prior written * permission. * This software is provided "AS IS," without a warranty of any kind. ALL * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN * MIDROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE FOR * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR * ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR * DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE * DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, * ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF * SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * You acknowledge that this software is not designed, licensed or * intended for use in the design, construction, operation or maintenance * of any nuclear facility. $Id: Sprite.java,v 1.2 2003/05/16 00:25:15 zull Exp $ */package com.sun.j2me.blueprints.jbricks;import javax.microedition.lcdui.Graphics;/** * Provide some basic sprite functionality: * getting and setting of coordinates and * dimensions, as well as simple collision * detection. */public class Sprite { public int x; public int y; public int width; public int height; public int shadow; public Sprite() { shadow = Math.max(2, Screen.width / 60); } public int getCenterX() { return x + width / 2; } public int getCenterY() { return y + height / 2; } public void moveTo(int x, int y) { this.x = x; this.y = y; } public void moveBy(int x, int y) { this.x += x; this.y += y; } public void paint(Graphics g) {} public void paintShadow(Graphics g) {} public boolean intersects(Sprite other) { int xw = x + width; int yh = y + height; int oxw = other.x + other.width; int oyh = other.y + other.height; return x >= other.x && x < oxw && y >= other.y && y < oyh || xw >= other.x && xw < oxw && y >= other.y && y < oyh || x >= other.x && x < oxw && yh >= other.y && yh < oyh || xw >= other.x && xw < oxw && yh >= other.y && yh < oyh; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -