java游戏中人物升级获取金币_Java 吃金币游戏设计与制作

packagecom.swift;importjava.awt.Color;importjava.awt.Dimension;importjava.awt.Point;importjava.awt.event.KeyEvent;importcom.rupeng.game.GameCore;public class PlayWithKey implementsRunnable {public static voidmain(String[] args) {

GameCore.start(newPlayWithKey());

}

@Overridepublic voidrun() {

GameCore.setGameSize(800, 345);

GameCore.setGameTitle("用键盘操控精灵移动的小游戏");

GameCore.loadBgView("bg.jpg");//女精灵

int spriteGirl = 0;

GameCore.createSprite(spriteGirl,"guizi");

GameCore.playSpriteAnimate(spriteGirl,"run", true);

GameCore.setSpritePosition(spriteGirl,140, 190);//使用数组放置8个金币

int[] coinNum = { 1, 2, 3, 4, 5, 6, 7, 8};int[] coinXDate = { 100, 200, 300, 400, 500, 600, 700, 760};int[] coinYDate = { 140, 180, 150, 190, 140, 170, 160, 140};boolean[] coinIsDead = new boolean[8];int textNum=0;

GameCore.createImage(0);

GameCore.setImageSource(0, "bigCoin.png");

GameCore.setImagePosition(0,710, 20);

GameCore.createText(0, "NUM");

GameCore.setTextColor(0, Color.WHITE);

GameCore.setTextPosition(0, 650, 25);

GameCore.createText(1, Integer.toString(textNum));

GameCore.setTextPosition(1, 760, 25);

GameCore.setTextColor(1, Color.WHITE);//另一种初始化数组方法 boolean[]//coinIsDead={false,false,false,false,false,false,false,false};

for (int i = 0; i < coinNum.length; i++) {

GameCore.createSprite(coinNum[i],"coin");

GameCore.setSpritePosition(coinNum[i], coinXDate[i], coinYDate[i]);

GameCore.playSpriteAnimate(coinNum[i],"rotate", true);

}for(;;) {int codeNum =GameCore.getPressedKeyCode();

Point position=GameCore.getSpritePosition(spriteGirl);

System.out.println(position.x+ " " +position.y);if (codeNum == KeyEvent.VK_UP || codeNum ==KeyEvent.VK_W) {if (position.y > 135) {

System.out.println("up");

GameCore.setSpritePosition(spriteGirl, position.x,--position.y);

GameCore.pause(11);

}

}if (codeNum == KeyEvent.VK_DOWN || codeNum ==KeyEvent.VK_S) {if (position.y < 190) {

System.out.println("down");

GameCore.setSpritePosition(spriteGirl, position.x,++position.y);

GameCore.pause(11);

}

}if (codeNum == KeyEvent.VK_LEFT || codeNum ==KeyEvent.VK_A) {if (position.x > 0) {

System.out.println("left");

GameCore.setSpriteFlipX(spriteGirl,true);

GameCore.setSpritePosition(spriteGirl,--position.x, position.y);

GameCore.pause(2);

}

}if (codeNum == KeyEvent.VK_RIGHT || codeNum ==KeyEvent.VK_D) {if (position.x < 730) {

System.out.println("right");

GameCore.setSpriteFlipX(spriteGirl,false);

GameCore.setSpritePosition(spriteGirl,++position.x, position.y);

GameCore.pause(1);

}

}for (int i = 0; i < coinNum.length; i++) {

Point pCoin=GameCore.getSpritePosition(coinNum[i]);

Point pGirl=GameCore.getSpritePosition(spriteGirl);double distance=Math.sqrt((Math.pow((pCoin.x-pGirl.x),2)+Math.pow((pCoin.y-pGirl.y),2)));

System.out.println(distance);if (distance<30) {

coinIsDead[i]=true;

}if(coinIsDead[i]==true) {

System.out.println(coinNum[i]);

GameCore.hideSprite(coinNum[i]);//textNum++;//GameCore.setText(1, Integer.toString(textNum));

}

}

}//GameCore.pause(10000);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值