• 大小: 847KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2023-12-31
  • 语言: Java
  • 标签: java  

资源简介

java写小游戏外挂插件源代码分享.讲源代码放在eclipse中可以运行使用的。主要还是研究技术、不是外挂。

资源截图

代码片段和文件信息

package llk;

import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.IOException;

/**
 * @author 神
 * 
 */
public class BMP {

private int width;
private int height;
private byte[] data;

public BMP() {

}

public BMP(String src) {
this.read(src);
}

public int getWidth() {
return width;
}

public int getHeight() {
return height;
}

public static int b2i(byte[] b int s) {
int ret = 0;
for (int i = 0; i < 4; i++) {
int temp = b[s + i] & 0xff;
ret += temp << (8 * i);
}
return ret;
}

/** * 读取图片文件 * @param src 文件路径 */
public void read(String src) {
width = 0;
height = 0;
ByteArrayOutputStream bs = new ByteArrayOutputStream();
BufferedInputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(src));
byte[] b = new byte[1024 * 1024];
int len = 0;
while ((len = in.read(b)) != -1) {
bs.write(b 0 len);
bs.flush();
}
data = bs.toByteArray();
width = b2i(data 18);
height = b2i(data 22);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
bs.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

// 这方法捣鼓了我好久才弄出来
public int getColor(int x int y) {
// BMP图要求每行字节数为4的倍数不够则填充1-3个无用字节
int lineW = 0;
switch ((width * 3) % 4) {
case 0:
lineW = width * 3;
break;
case 1:
lineW = width * 3 + 3;
break;
case 2:
lineW = width * 3 + 2;
break;
case 3:
lineW = width * 3 + 1;
}
int i = 54 + (height - y - 1) * lineW + 3 * x;
int r = data[i + 2] & 0xff;
int g = data[i + 1] & 0xff;
int b = data[i] & 0xff;
return r + (g << 8) + (b << 16);
}

public void setColor(int x int y int v) {
int lineW = 0;
switch ((width * 3) % 4) {
case 0:
lineW = width * 3;
break;
case 1:
lineW = width * 3 + 3;
break;
case 2:
lineW = width * 3 + 2;
break;
case 3:
lineW = width * 3 + 1;
}
int i = 54 + (height - y - 1) * lineW + 3 * x;
data[i + 2] = (byte) ((v >> 16) & 0xff);
data[i + 1] = (byte) ((v >> 8) & 0xff);
data[i] = (byte) (v & 0xff);
}


// 取矩形颜色数据
public byte[] getData(int x int y int w int h) {
ByteArrayOutputStream bos = new ByteArrayOutputStream(w * h);
try {
for (int i = x; i < x + w; i++) {
for (int j = y; j < y + h; j++) {
bos.write(getColor(i j));
bos.flush();
}
}
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
return bos.toByteArray();
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        353  2013-03-20 20:22  llk\.classpath

     文件        379  2013-03-20 17:00  llk\.project

     文件        629  2013-03-20 17:00  llk\.settings\org.eclipse.jdt.core.prefs

     文件       3100  2013-03-21 11:37  llk\bin\llk\BMP.class

     文件       3367  2013-03-21 01:31  llk\bin\llk\DepthFirst.class

     文件        628  2013-03-21 01:13  llk\bin\llk\Fangkuai.class

     文件        902  2013-03-21 01:27  llk\bin\llk\FkSet.class

     文件       2650  2013-03-21 11:48  llk\bin\llk\Lianlk.class

     文件        726  2013-03-20 20:55  llk\bin\llk\Point.class

     文件        614  2013-03-20 22:41  llk\bin\win32\Mouse.class

     文件        285  2013-03-20 21:51  llk\bin\win32\Point.class

     文件        320  2013-03-20 22:40  llk\bin\win32\Rect.class

     文件        570  2013-03-20 22:41  llk\bin\win32\User32.class

     文件       1426  2013-03-21 01:40  llk\bin\win32\Window.class

     文件     865400  2013-03-20 20:22  llk\jna-3.3.0.jar

     文件       2720  2013-03-21 11:37  llk\src\llk\BMP.java

     文件       3776  2013-03-21 01:31  llk\src\llk\DepthFirst.java

     文件        359  2013-03-21 01:13  llk\src\llk\Fangkuai.java

     文件        483  2013-03-21 01:27  llk\src\llk\FkSet.java

     文件       1869  2013-03-21 11:48  llk\src\llk\Lianlk.java

     文件        351  2013-03-20 17:05  llk\src\llk\Point.java

     文件        285  2013-03-20 22:41  llk\src\win32\Mouse.java

     文件        133  2013-03-20 21:51  llk\src\win32\Point.java

     文件        188  2013-03-20 22:40  llk\src\win32\Rect.java

     文件        348  2013-03-20 22:41  llk\src\win32\User32.java

     文件        748  2013-03-21 01:40  llk\src\win32\Window.java

     目录          0  2013-03-21 11:50  llk\bin\llk

     目录          0  2013-03-21 11:50  llk\bin\win32

     目录          0  2013-03-21 11:50  llk\src\llk

     目录          0  2013-03-21 11:50  llk\src\win32

............此处省略7个文件信息

评论

共有 条评论