?? enemybullet3.java
字號:
package com.lovo.sprite.bullet;
import java.awt.Image;
import javax.swing.JFrame;
import com.lovo.sprite.plane.PlaneSprite;
/**
* <p>敵方子彈2,向屏幕最下面的左下角發射子彈</p>
* @author mlz
* @version 1.00 2006/9/25 mlz
*
*
*/
public class EnemyBullet3 extends BulletSprite
{
/**設置子彈初始化執行一次*/
boolean isStepAccount = true;
public EnemyBullet3(Image img, PlaneSprite plan)
{
super(img, plan);
}
/**
* 構造器,處理子彈移動
*/
public void updateState()
{
/**子彈顯示時移動*/
if (this.isVisible())
{
/**子彈超出邊界時設置隱藏*/
if (Y > this.frameHeight || X < 0 || X > this.frameWidth)
{
this.setVisible(false);
isStepAccount = true;
} else
{
/**設置子彈飛行的步長,并只設置一次*/
if (isStepAccount)
{
/**設置子彈移動步長VX、VY*/
try{
VX = VY * (this.getX() - this.frameWidth / 2)
/ (this.getY() - this.frameHeight);
}
catch(Exception e)
{
VX = 0;
}
this.setStep(VX, VY);
isStepAccount = false;
}
/**設置子彈的位置*/
Y = this.getY() + speed * speed * VY;
X = this.getX() + speed * speed * VX;
}
} else
{
/**開火時設置子彈顯示并初始化其位置*/
if (plane.isFire() && plane.isVisible())
{
this.setVisible(true);
this
.setLocation(plane.getX() + plane.getWidth() / 2
- this.getWidth() / 2, plane.getY()
+ plane.getHeight());
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -