📄 mypanel.java
字号:
package mapEditer;
import java.awt.*;
import pp.actor.*;
import like.graphics.*;
public class MyPanel extends Panel
{
Graphics tmpg;
Image tmpImage;
ResourceGroup group;
CheckboxMenuItem showGrid;
Map map;
Image shadow;
public void setSource(Graphics tmpg,Image tmpImage,ResourceGroup group,Map map)
{
this.tmpg=tmpg;
this.tmpImage=tmpImage;
this.group=group;
this.map=map;
shadow = group.getShadow();
}
public void paint(Graphics g)
{
g.drawImage(tmpImage,0,0,this);
}
public void update(Graphics g)
{
if(tmpg.getColor()==Color.BLACK)
drawGrid(tmpg);
drawTile(tmpg);
drawFraise(tmpg);
drawPlayersPos(tmpg);
if(tmpg.getColor()==Color.BLUE)
drawGrid(tmpg);
paint(g);
}
public void drawPlayersPos(Graphics g)
{
Color tmp = g.getColor();
g.setColor(Color.BLACK);
g.drawString("玩家1",map.playersJ[0]*40+3,map.playersI[0]*40+23);
g.drawString("玩家2",map.playersJ[1]*40+3,map.playersI[1]*40+23);
g.setColor(tmp);
}
public void drawGrid(Graphics g)
{
for(int i=0;i<14;i++)
g.drawLine(3,i*40+3,603,i*40+3);
for(int j=0;j<16;j++)
g.drawLine(j*40+3,3,j*40+3,523);
}
public void drawTile(Graphics g)
{
Image tobedraw;
for(int i=0;i<13;i++)
for(int j=0;j<15;j++)
{
tobedraw=group.getImage(1,map.tile[i][j]);
if(tobedraw!=null)
g.drawImage(tobedraw,j*40+3,i*40+3,this);
}
}
public void drawFraise(Graphics g)
{
Image tobedraw;
for(int i=0;i<13;i++)
for(int j=14;j>=0;j--)
{
tobedraw=group.getImage(2,map.fraise[i][j]);
if(tobedraw!=null)
{
if(group.needPaintShadow(map.fraise[i][j]))
drawShadow(g,(j*40-3)+3,i*40+3);
g.drawImage(tobedraw,j*40-((tobedraw.getWidth(this)-40)/2)+3,i*40-(tobedraw.getHeight(this)-40)+3,this);
}
}
}
public void drawShadow(Graphics g,int x,int y)
{
if(shadow==null) return;
else
{
g.drawImage(shadow,x,y,this);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -