📄 player.java
字号:
{
if(b1.getPlayerCor() < getPlayerCor())
playerAction(1);
else
playerAction(2);
} else
if(K == 3)
if(b1.getPlayerCor() < getPlayerCor())
playerAction(1);
else
playerAction(2);
} else
{
if(K == 1 || K == 2)
playerAction(0);
byte byte0 = playerCordi[Math.abs(GC.t.nextInt() % playerCordi.length)][getPlayer()];
if(byte0 != 0)
playerAction(byte0);
}
}
/**
* 设定游戏角色状态
*/
public void setState()
{
a = false;
if(g > 0)
{
g--;
//if(eNum <= 0)
//fistImage = 0;
}
if(skillState)
{
if(++F >= 2)
F = 0;
playerbyte += D;
q += b;
Player b1 = GC.getPlayer2();
if(PS)
b1 = GC.getPlayer1();
if(D == 0)
{
if(b > 0 && q > 140)
{
b = -b;
playerbyte = b1.getPlayerCor();
}
if(b < 0 && q < playerD[palyer] && Math.abs(playerbyte - b1.getPlayerCor()) < 25)
{
skillState = false;
b1.reduceBlood(eSkill[getPlayer()]);
}
} else
if(Math.abs(playerbyte - b1.getPlayerCor()) < 10)
{
skillState = false;
b1.reduceBlood(eSkill[getPlayer()]);
}
if(q < 0 || Math.abs(playerbyte - b1.getPlayerCor()) > 500)
skillState = false;
}
if((v > 0 || K == 3) && K != 9 && K != 10)
{
v += f;
if(v > 10 * playerS[getPlayer()] && f > 0)
f = -f;
else
if(v <= 0)
{
v = 0;
playerAction(0);
}
}
if(skillNum > 0)
{
skillNum--;
if(skillNum == 3)
skillState();
if(skillNum == 0)
playerAction(0);
else
return;
}
if(H > 0)
{
H--;
if(H == 0)
playerAction(0);
else
return;
} else
if(t > 0)
{
t--;
if(t == 0)
{
if(v > 0)
K = 3;
else
playerAction(0);
} else
{
return;
}
} else
if(y > 0)
{
y--;
if(y == 0)
{
K = 3;
if(f > 0)
f = -f;
}
} else
if(A > 0)
{
A--;
if(A == 0)
if(e > 0)
playerAction(0);
else
if(GC.getP().backToGameMode() != 0)
GC.setPlayer1(this);
else
playerAction(0);
}
if(PS)
{
int i1 = GC.getP().getGameRank() ? 4 : 2;
i1 += (100 - e) / 20;
if(GC.getRefreshNum() % (long)i1 == (long)(i1 - 1))
setAction();
}
G = 0;
if(K == 0)
playerInt = 0;
else
if(K == 1)
{
setPlayerCor(-increCoor[getPlayer()] * 2);
playerInt = playerInt != 0 ? 0 : 1;
} else
if(K == 2)
{
setPlayerCor(increCoor[getPlayer()] * 2);
playerInt = playerInt != 0 ? 0 : 1;
} else
if(K == 3)
playerInt = 2;
else
if(K == 5)
{
t = 4;
playerInt = 3;
reduceE();
} else
if(K == 6)
{
t = 4;
playerInt = 4;
reduceE();
} else
if(K == 7)
{
t = 4;
playerInt = 5;
reduceE();
} else
if(K == 8)
{
t = 4;
playerInt = 6;
reduceE();
} else
if(K == 4)
{
H = 10;
playerInt = 7;
} else
if(K == 9 || K == 10)
{
setPlayerCor(-20);
playerInt = 8;
if (y == 3 || y == 1) {
a = true;
}
} else
if(K == 11)
{
setPlayerCor(15 * (P ? -1 : 1));
playerInt = 9;
} else
if(K == 12)
{
skillNum = 6;
playerInt = 10;
}
if(!P)
G += 8192;
if(PS)
{
if(GC.getPlayer1().getPlayerCor() < w)
P = false;
else
P = true;
} else
if(GC.getPlayer2().getPlayerCor() < w)
P = false;
else
P = true;
if((K == 0 || K == 3 || K == 1 || K == 2) && Math.abs(GC.getPlayer2().getPlayerCor() - GC.getPlayer1().getPlayerCor()) < 15 && !PS)
setPlayerCor(5 * (w <= GC.getPlayer2().getPlayerCor() ? -1 : 1));
Player b2 = GC.getPlayer2();
if(PS)
b2 = GC.getPlayer1();
if(b2.getE() <= 0 && GC.getP().backToGameMode() != 0)
{
v = 0;
playerInt = 0;
}
}
/**
* 根据角色的普通动作去掉相应的血量
*/
public void reduceE()
{
Player b1 = GC.getPlayer2();
if(PS)
b1 = GC.getPlayer1();
if(Math.abs(b1.getPlayerCor() - w) < (playerPhoto.getWidth() * 2) / 12 && Math.abs(b1.getDistance() - v) < 50 && (b1.getState() == 0 || b1.getState() == 1 || b1.getState() == 2))
if(v > 0)
b1.reduceBlood((byte)eReduce[K - 5][getPlayer()]);
else
b1.reduceBlood((byte)eSet[K - 5][getPlayer()]);
}
/**
* 去掉角色的血量
* @param byte0 byte,去掉的血量
*/
public void reduceBlood(byte byte0)
{
GC.c = true;
//fistImage = byte0;
e -= byte0;
if(e < 0)
e = 0;
g = 20;
playerAction(11);
}
/**
* 获得角色的坐标
* @return w int,游戏角色的坐标
*/
public int getPlayerCor()
{
return w;
}
/**
* 计算游戏角色的坐标
* @param i1 int,角色移动的距离
*/
public void setPlayerCor(int i1)
{
int j1 = w;
w += i1;
if(Math.abs(GC.getPlayer2().getPlayerCor() - GC.getPlayer1().getPlayerCor()) > 120)
w = j1;
}
/**
* 给角色坐标变量赋值
* @param i1 int,游戏角色坐标
*/
public void setW(int i1)
{
w = i1;
}
/**
* 获得游戏角色距离
* @return v int,角色相对坐标
*/
public int getDistance()
{
return v;
}
/**
* 根据角色移动不断更新游戏图片坐标
* @param i1 int,角色坐标
* @return 更新图片的坐标
*/
public int refreshCoor(int i1)
{
return (i1 / 2 + GC.getWidth() / 2) - GC.getB();
}
/**
* 控制游戏角色间的距离
* @param i1 int,角色相对坐标
* @return 角色间的距离
*/
public int getDistance(int i1)
{
return 173 - i1 / 2;
}
/**
* 判断是否可以发绝技
* @return 发绝技条件是否满足
*/
public boolean judgeSkill()
{
if(judgeForceTime() && !skillState && K == 0 && (Math.abs(GC.getPlayer2().getPlayerCor() - GC.getPlayer1().getPlayerCor()) > 40))
{
playerAction(12);
resetForceTime();
return true;
} else
{
return false;
}
}
/**
* 发绝技后角色状态设定
*/
public void skillState()
{
skillState = true;
F = 0;
playerbyte = P ? w + coorSet[palyer] : w - coorSet[palyer];
q = v + playerD[palyer];
D = 0;
b = 0;
if(coorSet[palyer] > 0)
D = P ? 10 : -10;
else
b = 20;
GC.start(8);
}
/**
* 绘制角色的绝技
* @param g1 Graphics
*/
public void drawSkill(Graphics g1)
{
if(!skillState)
return;
int i1 = refreshCoor(playerbyte) - skill.getWidth() / 2;
int j1 = getDistance(q) - skill.getHeight() / 4;
DirectGraphics directgraphics = DirectUtils.getDirectGraphics(g1);
g1.setClip(i1, j1, skill.getWidth(), skill.getHeight() / 2);
if(D > 0)
g1.drawImage(skill, i1, j1 - (skill.getHeight() / 2) * F, 0x10 | 0x4);
else
directgraphics.drawImage(skill, i1, j1 - (skill.getHeight() / 2) * F, 0x10 | 0x4, 8192);
}
/*
public void getPlayer2()
{
x = !x;
}
public boolean getX()
{
return x;
}*/
/**
* 绘制竞技选手
* @param g1 Graphics
*/
public void drawPlayer(Graphics g1)
{
g1.setColor(0x996655);
int i1 = refreshCoor(w);
int j1 = getDistance(v);
DirectGraphics directgraphics = DirectUtils.getDirectGraphics(g1);
int k1 = playerWidth[palyer][1][playerInt];
if(a)
k1 = GC.player_u.getWidth();
g1.setClip(i1 - k1 / 2, 170, k1, 6);
g1.fillArc(i1 - k1 / 2, 170, k1, 6, 0, 360);
if(a) {
Image image = GC.player_u;
g1.setClip(i1 - k1 / 2, j1 - image.getHeight() / 8, k1, image.getHeight() / 8);
g1.drawImage(image, i1 - k1 / 2, j1 - (image.getHeight() / 8) * (getPlayer() + 1), 0x10 | 0x4);
} else
if(G == 0) {
g1.setClip(i1 - k1 / 2, j1 - playerPhoto.getHeight(), k1, playerPhoto.getHeight());
g1.drawImage(playerPhoto, i1 - k1 / 2 - playerWidth[palyer][0][playerInt], j1 - playerPhoto.getHeight(), 0x10 | 0x4);
} else {
g1.setClip(i1 - k1 / 2, j1 - playerPhoto.getHeight(), k1, playerPhoto.getHeight());
directgraphics.drawImage(playerPhoto, i1 - k1 / 2 - (playerPhoto.getWidth() - playerWidth[palyer][0][playerInt] - playerWidth[palyer][1][playerInt]), j1 - playerPhoto.getHeight(), 0x10 | 0x4, 8192);
}
// g1.setClip(0, 0, GC.getWidth(), GC.getHeight());
// if(showLogoCanvas() > 0 && GC.reduceE().backToGameMode() == 0) {
// g1.setFont(Font.getFont(64, 1, 8));
// g1.setColor(0);
// //g1.drawString("".concat(String.valueOf(String.valueOf(showLogoCanvas()))), i1 + 1, (j1 - playerPhoto.getHeight() - 6) + 1, 0x1 | 0x20);
// g1.drawString(String.valueOf(showLogoCanvas()), i1 + 1, (j1 - playerPhoto.getHeight() - 6) + 1, 0x1 | 0x20);
// g1.setColor(0xffff00);
// //g1.drawString("".concat(String.valueOf(String.valueOf(showLogoCanvas()))), i1, j1 - playerPhoto.getHeight() - 6, 0x1 | 0x20);
// g1.drawString(String.valueOf(showLogoCanvas()), i1, j1 - playerPhoto.getHeight() - 6, 0x1 | 0x20);
// }
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -