我在一个名为 Minecraft 的游戏中为我的“力场”编写了一个朋友系统。我的想法是,如果玩家不在好友列表中,玩家就会发起攻击。以下是我朋友系统和力场的所有代码。
public static boolean friends = true;
public static List friend = new ArrayList();
public static void friendsList(){
if(friends){
try{
File file = new File("friends.txt");
BufferedWriter bufferedwriter = new BufferedWriter(new FileWriter(file));
for(int i = 0; i < friend.size(); i++){
bufferedwriter.write((new StringBuilder()).append((String) friend.get(i)).append("\r\n").toString());
}
bufferedwriter.close();
}
catch(Exception exception){
System.err.print(exception.toString());
}
}
力场:
if(Camb.nocheat){
if (Camb.killaura)
{
hitDelay++;
for(Object o: mc.theWorld.loadedEntityList){
Entity e = (Entity)o;
if(e != this && *******CHECK IF PLAYER IS NOT ON LIST******* && e instanceof EntityPlayer &&getDistanceToEntity(e) < 3.95D){
if(e.isEntityAlive()){
if(hitDelay >= 4){
if(Camb.criticals){
if(mc.thePlayer.isSprinting()==false){
if(mc.thePlayer.isJumping==false){
if(mc.thePlayer.onGround){
mc.thePlayer.jump();
}
}
}
}
swingItem();
mc.playerController.attackEntity(this, e);
hitDelay = 0;
break;
}
}
}
}
}
}
添加/删除/清除好友列表:
if(par1Str.startsWith("&friendadd")){
Camb.friends = true;
String as0[] = par1Str.split("");
Camb.friend.add(as0[1]);
mc.thePlayer.addChatMessage((new StringBuilder()).append("\2479[CAMB]\247e Added Friend.").append("").toString());
Camb.friendsList();
Camb.friends = false;
return;
}
if(par1Str.startsWith("&friendremove")){
Camb.friends = true;
String as0[] = par1Str.split("");
Camb.friend.remove(as0[1]);
mc.thePlayer.addChatMessage((new StringBuilder()).append("\2479[CAMB]\247e Removed Friend.").append("").toString());
Camb.friendsList();
Camb.friends = false;
return;
}
if(par1Str.startsWith("&friendclear")){
Camb.friends = true;
Camb.friend.clear();
Camb.friendsList();
mc.thePlayer.addChatMessage("\2479[CAMB]\247e Friends list cleared.");
return;
}
par1Str 是在聊天中输入的字符串。基本上是命令。此外,&friendremove 系统也已损坏。我不确定为什么。
谢谢,布拉德