android五子棋游戏,Android也能写游戏——五子棋的实现

前序:

你没有看错,开发游戏不再是Cocos2d-x的专利,Android也能写游戏。小编今天比较闲,突奇想就写了个游戏五子棋玩一玩。纯Android写,相当的简单,唯一比较为难的就是切图了,当然也就是比较为难,机智如小编专治各种疑难杂症!哼,这里小编会告诉你是从网上切的图么!!!

正文:

先看游戏运行后是啥玩意请看图:

2e44e5c4e108

一句话概括就是两类一接口,没错,这就能实现五子棋的游戏了。老规矩请看截图:

2e44e5c4e108

2e44e5c4e108

其实小编想将所有代码截下来的,可是一看,卧槽,有500行代码,另加上这迷人的网速,小编瞬间决定等时机成熟再传,也趁此时间好好的修改一番,特别是屏幕适配这个问题,切的图就那么大,在不同屏幕展现都可能出现失真的效果。

核心代码:

privateBitmapCreatMatrixBitmap(intresourcesID, floatscr_width, floatres_height)

{

Bitmap bitMap =null;

bitMap = BitmapFactory.decodeResource(sResources,resourcesID);

intbitWidth = bitMap.getWidth();

intbitHeight = bitMap.getHeight();

floatscaleWidth = scr_width / (float) bitWidth;

floatscaleHeight = res_height / (float) bitHeight;

Matrix matrix =newMatrix();

matrix.postScale(scaleWidth,scaleHeight);

bitMap = Bitmap.createBitmap(bitMap,0,0,bitWidth,bitHeight,matrix, true);

returnbitMap;

}

private voidUpdateTouchEvent(intx, inty)

{

switch(mGameState)

{

caseGS_GAME:

if(x >0&& y >mTitleHeight)

{

mMapIndexX= (int) (x /mTitleSpace);

mMapIndexY= (int) ((y -mTitleHeight) /mTitleSpace);

if(mMapIndexX>mMapWidthLengh)

{

mMapIndexX=mMapWidthLengh;

}

if(mMapIndexX<0)

{

mMapIndexX=0;

}

if(mMapIndexY>mMapHeightLengh)

{

mMapIndexY=mMapHeightLengh;

}

if(mMapIndexY<0)

{

mMapIndexY=0;

}

if(mGameMap[mMapIndexY][mMapIndexX] ==CAMP_DEFAULT)

{

if(mCampTurn==CAMP_HERO)

{

mGameMap[mMapIndexY][mMapIndexX] =CAMP_HERO;

if(CheckPiecesMeet(CAMP_HERO))

{

mCampWinner= R.string.Role_black;

setGameState(GS_END);

}

else

{

mCampTurn=CAMP_ENEMY;

}

}

else

{

mGameMap[mMapIndexY][mMapIndexX] =CAMP_ENEMY;

if(CheckPiecesMeet(CAMP_ENEMY))

{

mCampWinner= R.string.Role_white;

setGameState(GS_END);

}else

{

mCampTurn=CAMP_HERO;

}

}

}

}

break;

caseGS_END:

setGameState(GS_GAME);

break;

}

}

分享经验:

作为一名开发人员是如何与产品汪斗智斗勇,对于产品汪,小编跟广大网友一样,不爽、不爽、不爽!重要的事情说三遍,特别还是这位产品汪还是尼玛一屌丝。吆喝,今天跟我谈需求变更,尼玛,平时这么拽,现在看我怎么整他,还是请直接看图:

2e44e5c4e108

没错,你没有看错,我答应了下来,并且说15个工作日,并且把这份计划图也给他看,小编都佩服自己,看看时间就跟我说那就不改了,就这样挺好!哈哈哈......

反馈:

欢迎万能网友互相分享交流!

QQ: 2632545852          微信:xuchen2100

Email: xuchen1009@gmail.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值