?? camera.java
字號:
public abstract class Camera{
public static final int SAVEDISX = PandaCanvas.SCREENW/3,SAVEDISY = PandaCanvas.SCREENH/3;
public static int x,y,width,height;
// 初始化鏡頭,使它對準參數中的對象
public static final void init(Panda panda){
if(panda.x <= SAVEDISX)
x = 0;
else if(panda.x - x <= SAVEDISX)
x = panda.x - SAVEDISX;
else if(panda.x >= PandaCanvas.mapW - SAVEDISX - panda.width)
x = PandaCanvas.mapW - PandaCanvas.SCREENW;
else if(panda.x - x >= PandaCanvas.SCREENW-SAVEDISX - panda.width)
x = panda.x + panda.width + SAVEDISX - PandaCanvas.SCREENW;
if(panda.y <= SAVEDISY)
y = 0;
else if(panda.y - y <= SAVEDISY)
y = panda.y - SAVEDISY;
else if(panda.y >= PandaCanvas.mapH - SAVEDISY - panda.height)
y = PandaCanvas.mapH - PandaCanvas.SCREENH;
else if(panda.y - y >= PandaCanvas.SCREENH-SAVEDISY - panda.height)
y = panda.y + panda.height + SAVEDISY - PandaCanvas.SCREENH;
}
// 跟隨鏡頭
public static final void setFollow(Panda panda){
if(PandaCanvas.mapH <= height)
y = 0;
else if(panda.speedY < 0){
if(panda.y <= SAVEDISY)
y = 0;
else if(panda.y - y <= SAVEDISY)
y = panda.y - SAVEDISY;
}else if(panda.speedY > 0){
if(panda.y >= PandaCanvas.mapH - SAVEDISY - panda.height)
y = PandaCanvas.mapH - PandaCanvas.SCREENH;
else if(panda.y - y >= PandaCanvas.SCREENH-SAVEDISY - panda.height)
y = panda.y + panda.height + SAVEDISY - PandaCanvas.SCREENH;
}
if(PandaCanvas.mapW <= width)
x = 0;
else if(panda.speedX < 0){
if(panda.x <= SAVEDISX)
x = 0;
else if(panda.x - x <= SAVEDISX)
x = panda.x - SAVEDISX;
}else if(panda.speedX > 0){
if(panda.x >= PandaCanvas.mapW - SAVEDISX - panda.width)
x = PandaCanvas.mapW - PandaCanvas.SCREENW;
else if(panda.x - x >= PandaCanvas.SCREENW-SAVEDISX - panda.width)
x = panda.x + panda.width + SAVEDISX - PandaCanvas.SCREENW;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -