微信小程序微信欢乐五子棋残局局104关怎么过

微信小程序中国象棋残局148关怎么过 春秋五霸148关激战逼阳攻略_PC6手机下载站
微信小程序中国象棋残局148关怎么过 春秋五霸148关激战逼阳攻略
关注方法1打开微信首页点【搜索】2搜索【科技陀螺】即可关注
12:44:53作者:路西蓝
  微信小程序中国残局148关怎么过?微信小程序中国象棋残局春秋五霸148关中,黑方仅存的双士是绝杀最大障碍,可以利用连环将军先抓掉双士,接下来就好办了。下面一起来看下,春秋五霸148关激战逼阳攻略。  微信小程序中国象棋残局148关怎么过?春秋五霸148关激战逼阳攻略:  第1歩,红兵五进一,黑将4平5:  第2歩,红马六退四,黑将5平4:  第3歩,红炮七平一,黑士5退6:  第4歩,红炮一进一,黑士6退5:  第5歩,红马四进三,黑士5进6:  第6歩,红马三进四,黑士6退5:  第7歩,红兵四平五,黑卒5平6:  第8歩,红帅四进一,黑卒6进1:  第9歩,红帅四进一,黑前炮平6:  第10歩,红马四退三,黑炮6退4:  第11歩,红炮一平四,黑炮4平1:  第12歩,红帅四平五,黑炮1进9:  第13歩,红马三进四,黑卒8平7:  第14歩,红马四退五,绝杀成功:  除了以上走法外,依AI的判断,还有另外一种:  兵五进一,将4平5,馬六退四,将5平4,砲七平一,士5退6,砲一进一,前士退5,馬四进三,士5进6,馬三进四,士6退5,兵四平五,卒5平6,帅四进一,卒8平7,帅四退一,卒7进1,帅四进一,卒6进1,帅四进一,前炮平8,馬四退三,炮8退4,帅四平五,炮4平5,兵五进一,卒7平6,馬三退五,炮8进7,馬五进四。  本关的目的是双士,拆掉双士后,黑方就任我们搓圆捏扁,不过新手还是要注意下AI的黑炮走位  以上就是小编为大家准备的“微信小程序中国象棋残局148关怎么过 春秋五霸148关激战逼阳攻略”,希望对大家有用。
微信中国象棋春秋五霸相关资料
最新排行最热排行评分最高排行榜
角色扮演624.4Mv1.7.1策略塔防858.8Mv1.3.23飞行射击603.6Mv1.6.0卡牌游戏518Mv1.6.0角色扮演897.6Mv1.0.3角色扮演915.0Mv1.29.2.2益智休闲339.4Mv2.0.8飞行射击61.8Mv2.4.2飞行射击466Mv2.4.1角色扮演254.3Mv1.10.615动作游戏592.2Mv4.2.0飞行射击547.8Mv1.0.22动作游戏83.1Mv13.4.2角色扮演72.1Mv1.9.8冒险解谜72.1Mv1.9.8策略塔防360.6Mv1.3.18.69角色扮演21.1Mv5.06益智休闲54.2Mv2.89策略塔防279.6Mv1.4.5策略塔防101.6Mv2.2.2策略塔防97.5Mv3.31.0角色扮演741.5Mv1.175.0卡牌游戏278.8Mv4.5.25角色扮演271.3Mv4.5.25角色扮演92Mv1.1.2动作游戏872.0Mv1.34.1.11冒险解谜529.5Mv1.5.4角色扮演208.4Mv1.0.2动作游戏808.2MV0.0.9动作游戏456.9MV1.0.56.0角色扮演582.1Mv7.1.0动作游戏84.7Mv1.00.59其它游戏535.3Mv3.13.2益智休闲525.3Mv1.0.2益智休闲50.3Mv4.1.3益智休闲96.0Mv1.56其它游戏775.8Mv1.0.30.220动作游戏775.8Mv1.0.30.220角色扮演200.1Mv3.6.3卡牌游戏200.1Mv3.6.3
生活服务17.6Mv3.3.1资讯阅读40.2Mv7.0.0金融理财16.5Mv2.7.16趣味娱乐11.8Mv3.0.0.2健康医疗8.1Mv1.80生活服务12.1Mv2.2.8美食菜谱41.6Mv6.1.54游戏辅助7.4Mv3.2.0金融理财62.9Mv9.6.7系统工具9.7Mv4.2.82资讯阅读25.1Mv8.2.8系统工具12.3Mv2.9.7生活服务13.7Mv3.45影音播放21.2Mv7.8.6摄影摄像57.8Mv7.4.3运动健身41.6Mv5.13.0网络购物32.1Mv6.13.2美食菜谱18.6Mv6.9.11.2游戏辅助14.8Mv3.1.5学习教育33.0Mv5.0.1社交聊天38.0Mv5.9.9旅游出行45.9Mv4.7.1学习教育17.4Mv6.1.0金融理财23.1Mv6.6.9学习教育25.2Mv3.8.1生活服务23.8Mv6.0.0.0美食菜谱27.3Mv6.5.1健康医疗35.9Mv5.7.8旅游出行28.3Mv7.4.1影音播放15.5Mv4.3.2.1学习教育91.1Mv7.2.1系统工具4.9Mv3.8.4金融理财24.1Mv4.2.9生活服务30.6Mv3.9社交聊天30.2Mv4.2.5运动健身29.7Mv6.2.0效率办公63.1Mv7.45.1.生活服务17.2Mv4.4.0丽人母婴26.1Mv6.4生活服务10.2Mv4.7.6
iPhone格斗游戏301Mv23.0iPhone休闲游戏253Mv1.15.1iPhone休闲游戏124Mv4.1.2iPhone角色扮演551.5Mv9.0.0iPhone角色扮演336.1Mv5.0.0iPhone射击游戏100.8Mv2.0iPhone射击游戏371.2Mv1.1iPhone射击游戏392.3Mv1.0iPhone角色扮演0KBV1.0.0iPhone角色扮演0KBv1.0.0iPhone益智游戏54.5Mv1.0.1iPhone射击游戏845.7Mv0.3.2iPhone策略游戏194.6Mv2.7.0iPhone射击游戏846.8Mv3.12.1iPhone动作游戏390.8Mv4.3.0iPhone射击游戏633Mv1.6iPhone角色扮演178.0Mv3.34.1iPhone角色扮演292.0Mv3.9.0iPhone格斗游戏90.2Mv1.17.05.17iPhone角色扮演213Mv0.3.1iPhone休闲游戏141MV1.50iPhone休闲游戏201MV4.7.0iPhone冒险解谜171Mv1.0.88iPhone竞速游戏1.94GV3.3.1iPhone棋牌游戏202MV6.9.42iPhone休闲游戏456Mv1.9.6iPhone策略游戏149Mv32.87iPhone休闲游戏140Mv1.6.4iPhone角色扮演1KBv1.27.0.0iPhone角色扮演1KBv1.1.4iPhone策略游戏118Mv9.256.3iPhone角色扮演858Mv2.012.1010iPhone射击游戏1.15Gv1.0.23iPhone角色扮演1.11Gv1.2.34iPhone动作游戏35.2Mv1.4.15iPhone策略游戏356MV1.1.9iPhone情景游戏299MV2.8iPhone益智游戏157MV7.7.5iPhone模拟经营677MV5.33.3iPhone动作游戏986MV3.6.0
iPhone工具软件20.9Mv5.19.1iPhone影音娱乐152.6Mv4.0.0iPhone摄影录像162KBV3.0.6iPhone生活软件142.2Mv4.8.0iPhone影音娱乐256.6MV5.2.4iPhone影音娱乐126.2MV5.7.6iPhone生活软件238.4MV6.14.2iPhone生活软件395.9MV6.6.6iPhone商务办公216.2MV4.3.2iPhone摄影录像193.6MV7.3.0iPhone旅行出游185.9Mv5.1.35iPhone生活软件330.6MV9.10.0iPhone生活软件199.5MV8.2.1iPhone影音娱乐191.2Mv3.3.17iPhone工具软件152.5Mv11.9.0.1061iPhone社交应用199.7MV1.24iPhone美食佳饮89.3MV6.4.9iPhone旅行出游59.2Mv2.15.0iPhone商务办公82.3Mv5.5.4iPhone工具软件45.6MV3.20iPhone效率软件96KBv4.1.0iPhone生活软件85.3MV1.4.6iPhone摄影录像144Mv5.5.0iPhone工具软件107MV3.2.2iPhone工具软件130.8MV8.4.2iPhone财务软件301.2MV4.0.8.002iPhone财务软件164.6Mv4.13.0iPhone社交应用234.7Mv8.2.0iPhone新闻软件188.8Mv33.1iPhone影音娱乐142.6Mv3.6.1iPhone社交应用144MV9.3.3iPhone导航软件140.9MV7.5.1iPhone音乐软件251.1Mv8.9.4iPhone社交应用186.7MV8.7iPhone影音娱乐400.6Mv9.1.0iPhone图书阅读81.6MV7.8.2iPhone生活软件249.6MV8.8.6iPhone旅行出游145.5Mv6.9.0iPhone财务软件178.6MV2.5.0iPhone影音娱乐293.3MV3.630
点击查看更多
冒险解谜529.5Mv1.5.4飞行射击17.3Mv1.3.0.1带数据包策略塔防103.1Mv10.134.4角色扮演1.10Gv1.4.0策略塔防131.6Mv1.6.0角色扮演906.8Mv1.0.37动作游戏775.8Mv1.0.30.220飞行射击16.5Mv4.0.8益智休闲106.4Mv1.2.1策略塔防14.9Mv4.5.2国际版角色扮演1.18Gv1.321.1角色扮演595.3Mv1.角色扮演780.8Mv1.1.133冒险解谜24.9Mv1.9带数据包角色扮演554.5Mv2.020.0417模拟经营195.7Mv0.3.0020策略塔防1.9Mv1.0带数据包动作游戏891.9Mv1.13.15.143043益智休闲64.1Mv1.0飞行射击38.5Mv3535角色扮演248.0MV1.8.103策略塔防187.0Mv2.4.0赛车游戏2.21Gv3.2.2a(含数据包)修改版游戏86Mv1.8.12棋牌游戏39.5M中文版v0.0.42-Monopoly角色扮演915.0Mv1.29.2.2角色扮演281.9Mv7.8修改版游戏348Mv1.0.6无限金币版动作游戏104.9Mv0.34.5.1其它游戏2Mv1.4赛车游戏12Mv1.1.5带数据包角色扮演21.1Mv5.06策略塔防21Mv1.3.4带数据包益智休闲9.3M益智休闲25Mv1.1.3益智休闲6.4Mv1.7动作游戏37.4Mv1.0.1角色扮演16.8Mv1.2.1.0音乐游戏54.8Mv2.0.6模拟经营48.6Mv1.5.12
影音播放57.3Mv6.4.2社交聊天58.5Mv6.6.6资讯阅读11.8Mv5.2影音播放47.9Mv8.9.6影音播放50.6Mv7.2.7影音播放60.8Mv5.25.0影音播放57.1Mv7.2.5网络通讯36.5Mv6.1.5摄影摄像16.5Mv2.4.4.551系统工具10.7Mv2.8.6安全防护48.4Mv4.1.2.网络购物16.1Mv4.4.0影音播放30.2Mv7.5.0摄影摄像27.8Mv2.18.0.影音播放62.2Mv4.2.4交通导航30.9Mv9.75.1影音播放28.5Mv6.1.1.15689效率办公11.9Mv2.8.5.1网络购物76.2Mv7.8.2影音播放43.8Mv8.2.1.2系统工具11.0Mv6.0.5生活服务49.9Mv6.1.1资讯阅读11.7Mv3.0.1.000.资讯阅读22.0Mv6.7.2网络通讯14Mv7.0.0社交聊天52.6Mv7.6.0安全防护17.7Mv7.6.2影音播放22.9Mv6.7.7影音播放25.5Mv4.53.0.2894生活服务5.1Mv10.0生活服务16.2Mv8.2.1社交聊天7Mv3.0.4114系统工具2.8Mv2.7.0运动健身31.9Mv6.3.4学习教育78.7Mv7.7.0摄影摄像52.1Mv8.0.0.1安全防护16.5Mv7.7.5网络通讯30.8Mv8.5.0效率办公60.3Mv4.3.6网络购物91.2Mv7.0.2
iPhone角色扮演227.2Mv1.0iPhone动作游戏134Mv1.40.1iPhone策略游戏288Mv1.0iPhone策略游戏962.6Mv1.0.17iPhone角色扮演135Mv1.15.0iPhone益智游戏351Mv1.0.1iPhone策略游戏134Mv1.1.35iPhone角色扮演438Mv1.0iPhone动作游戏324.3Mv1.11.0iPhone体育游戏136MV1.5.5iPhone策略游戏114MV1.210iPhone体育游戏28.5MV1.3iPhone情景游戏261MV1.0.2iPhone格斗游戏116MV2.10.200iPhone格斗游戏72MV1.0.2iPhone情景游戏942MV1.0.19iPhone模拟经营212Mv2.0.3iPhone策略游戏213MV3.3.1iPhone策略游戏114MV2.6.5iPhone策略游戏207MV4.2.9iPhone策略游戏149Mv32.87iPhone休闲游戏141MV1.50iPhone策略游戏33MV1.3106iPhone益智游戏157MV7.7.5iPhone情景游戏618MV5.3.0iPhone射击游戏425MV1.1.0iPhone格斗游戏301Mv23.0iPhone竞速游戏262MV1.8.1iPhone格斗游戏775MV1.14.0iPhone角色扮演1.67GV3.5.0iPhone动作游戏986MV3.6.0iPhone竞速游戏1.94GV3.3.1iPhone策略游戏378.0Mv5.0.046iPhone射击游戏846.8Mv3.12.1iPhone策略游戏356MV1.1.9iPhone体育游戏178MV2.2.3iPhone休闲游戏201MV1.86.0iPhone休闲游戏42.7MV2.0.2.0iPhone休闲游戏280MV1.55.0iPhone动作游戏775MV1.36.433.1
iPhone工具软件19.7Mv1.0.1iPhone图书阅读103MV7.2.0iPhone财务软件53.9Mv3.0.0iPhone商务办公92.4Mv8.9.4iPhone社交应用73.7Mv2.5.4iPhone财务软件12.4MV3.4.2iPhone图书阅读71.9MV3.3iPhone生活软件167MV8.3.4iPhone工具软件42.6Mv3.0.2iPhone图书阅读34.6Mv1.93iPhone生活软件35.8Mv3.4.1iPhone辅助软件180MV2.1.0iPhone社交应用180MV2.2.0iPhone报刊杂志39.1Mv3.3.0iPhone健康健美84.1Mv6.2.1iPhone健康健美124Mv3.0.9iPhone健康健美82.9Mv1.8.0iPhone商务办公25.1Mv5.8.0iPhone教育应用41.4Mv3.5.2iPhone健康健美91.2MV2.2.2iPhone导航软件54.9Mv5.3.6iPhone导航软件148Mv7.5.6iPhone商务办公104Mv3.6.1iPhone社交应用123MV2.13.0iPhone生活软件102MV8.1.5iPhone摄影录像59.5MV2.6.2iPhone报刊杂志53Mv5.2.0iPhone体育软件40.7MV1.2.1iPhone摄影录像184MV3.0.7iPhone工具软件41Mv2.9.6iPhone摄影录像111Mv1.3iPhone体育软件71.2Mv3.6.4iPhone工具软件104Mv5.1.0iPhone生活软件85.3MV1.4.6iPhone音乐软件46.7Mv5.1.0iPhone图书阅读55.7MV4.0.1iPhone旅行出游49.3MV7.6.2iPhone商务办公352Mv2.6iPhone生活软件199.5MV8.2.1iPhone生活软件319.3Mv7.5.3
点击查看更多
动作游戏872.0Mv1.34.1.11角色扮演915.0Mv1.29.2.2模拟经营54.4Mv1.1.4.51移动版模拟经营59.1Mv1.0.0.7角色扮演906.8Mv1.0.37修改版游戏229.9Mv2.1.1角色扮演441.5Mv12.1.31角色扮演741.5Mv1.175.0角色扮演920.6Mv1.28.1角色扮演561.8Mv38.0动作游戏104.9Mv0.34.5.1益智休闲216.8Mv1.2.33.0修改版游戏86.5Mv3.9.4策略塔防102.3Mv10.134.13角色扮演1.5Mv1.0棋牌游戏43.5Mv2.0修改版游戏85.3Mv0.24.5模拟经营37.1Mv1.1.4.51棋牌游戏21.9Mv1.0模拟经营5.9Mv2.0益智休闲50.3Mv4.1.3修改版游戏875.8Mv1.34.1.7音乐游戏26.1Mv3.0.0.524益智休闲96.0Mv1.56模拟经营121.1Mv0.25.6修改版游戏52.1Mv4.1.4动作游戏35.1Mv8.0.3角色扮演172.7Mv1.0.19.2动作游戏463.4Mv0.34.5.1修改版游戏91Mv1.17最新版棋牌游戏19.3Mv5.83.002免费版模拟经营54.4Mv1.1动作游戏264.1Mv1.13.2.1益智休闲348.2Mv3.5.4修改版游戏875.8Mv1.34.1.7策略塔防283.5Mv2.2.7模拟经营36.3Mv0.15.4.0修改版游戏37.7Mv1.28.1无限金币模拟经营56.2Mv1.2修改版游戏73.6Mv2.70.0
社交聊天58.5Mv6.6.6影音播放5.8Mv2.0安全防护16.5Mv7.7.5影音播放13.7Mv4.4破解版影音播放9.5Mv1.0.6影音播放16Mv2.2.0最新版影音播放6.4Mv8.9.3影音播放18Mv3.5影音播放20.4Mv5.1.1社交聊天45.9Mv7.3.5系统工具14.2Mv9.2.11系统工具9.7Mv4.2.82游戏辅助2.5Mv3.0系统工具10.1Mv7.1.81学习教育127.8Mv2.9.8.1041游戏辅助23.8Mv4.8.3影音播放6Mv4.2最新版金融理财39.3Mv3.0.5影音播放35Mv3.0.1金融理财124.3Mv4.0.9金融理财12.3Mv7.3.5游戏辅助973KBv3.1社交聊天58.4Mv6.6.2效率办公35.5Mv2.3.1.摄影摄像47.2Mv3.0.8.041715游戏辅助4.6Mv1.2.3影音播放10.4Mv2.9影音播放15.4Mv2.4.0最新版影音播放10.1Mv6.7最新版社交聊天7Mv3.0.4114游戏辅助32.3Mv2.8.2社交聊天45.6Mv1.8.2网络购物76.2Mv7.8.2效率办公3.1Mv4.7.2.2421影音播放18.3Mv1.3.2.83游戏辅助13.1Mv7.1.1游戏辅助6Mv8.25.1影音播放16.9Mv3.3.7影音播放47.9Mv8.9.6生活服务73.7Mv6.1.2
iPhone角色扮演227.2Mv1.0iPhone角色扮演149Mv1.0.4iPhone角色扮演1.30Gv1.33.1.11iPhone策略游戏1.09Gv1.0.28iPhone休闲游戏124Mv4.1.2iPhone射击游戏1.15Gv1.0.23iPhone休闲游戏122MV7.6.0iPhone角色扮演710MV1.146.1iPhone策略游戏204Mv1.8.0iPhone角色扮演980Mv1.2.3871iPhone角色扮演996Mv1.190.2iPhone角色扮演1.11Gv1.2.34iPhone角色扮演178.0Mv3.34.1iPhone角色扮演858Mv2.012.1010iPhone策略游戏118Mv9.256.3iPhone角色扮演1.32GV1.15.0iPhone角色扮演1KBv1.1.4iPhone角色扮演58.1MV1.0.14iPhone角色扮演395.8Mv1.2.13iPhone棋牌游戏219MV5.82.001iPhone角色扮演496Mv3.6.0iPhone角色扮演292.0Mv3.9.0iPhone策略游戏119Mv2.0.1iPhone角色扮演1KBV1.1.2iPhone格斗游戏1KBv1.20.11iPhone角色扮演2.05Gv1.9.1iPhone策略游戏3KBv9.1.20970iPhone角色扮演1KBv1.168.0.1iPhone角色扮演1KBv1.27.0.0iPhone策略游戏973Mv1.21.1iPhone角色扮演213Mv0.3.1iPhone角色扮演336.1Mv5.0.0iPhone益智游戏55.6MV3.1iPhone模拟经营189Mv1.0iPhone模拟经营59.1Mv1.0.0.7最新版iPhone棋牌游戏64.3MV1.9.0iPhone角色扮演690Mv0.20.1.2iPhone益智游戏0KBv1.0iPhone棋牌游戏62.7Mv1.0.4iPhone休闲游戏141MV1.50
iPhone工具软件16.3MV7.2.9iPhone工具软件8MV5.2.1iPhone社交应用254Mv6.6.6iPhone辅助软件60.4MV2.5.9iPhone社交应用261.6Mv7.5.0iPhone影音娱乐161Mv4.5.5iPhone社交应用51.4MV6.6.1免越狱最新版iPhone影音娱乐140.6Mv6.0.2iPhone工具软件38.5MV5.6iPhone影音娱乐31MV2.6.0iPhone影音娱乐400.6Mv9.1.0iPhone工具软件59.6Mv4.5.2iPhone音乐软件251.1Mv8.9.4iPhone影音娱乐38.5MV2.5.1iPhone财务软件230MV10.1.15iPhone教育应用116Mv2.0.8iPhone工具软件130.8MV8.4.2iPhone摄影录像180.4MV3.0.1iPhone工具软件14.4MV3.7.7iPhone影音娱乐16.2MV1.0.5iPhone图书阅读75.6MV5.11.3iPhone辅助软件130Mv7.3.1iPhone医疗应用146Mv5.5.0iPhone教育应用82.1MV2.1.3iPhone财务软件126Mv3.7.4iPhone辅助软件275Mv4.3.0iPhone图书阅读63.4Mv3.0.1iPhone医疗应用68.5MV6.6.5iPhone工具软件7.1Mv4.0.1.5iPhone图书阅读194MV1.39.1iPhone财务软件164.6Mv4.13.0iPhone辅助软件180MV2.1.0iPhone影音娱乐202Mv6.12.0iPhone医疗应用170Mv8.1iPhone工具软件33.4MV1.1.0iPhone工具软件15.4MV3.1.0iPhone辅助软件100MV4.3.4iPhone医疗应用166Mv5.4.6iPhone生活软件319.3Mv7.5.3iPhone图书阅读100.4Mv2.3.4
点击查看更多您现在的位置:
微信小程序学习用demo:五子棋,基于canvas
来源:微信小程序
编辑: 发布时间:01-16热度: ℃
代码示例:
var Stone = require('Stone');
var judger = require('FiveStoneJudger');
* 五子棋的主控制类
export default class FiveStone {
& &&&* 初始化棋盘
& &&&* @param& &page& && && && && && &&&当前页面页面
& &&&* @param& &chessBoardSize& && && & 当前棋盘每行和列最多能下多少个子子
& &&&* @param& &chessboardSizePercent& &棋盘的宽度相当于屏幕宽度的百分比(0&x&1)
& & constructor(chessBoardSize, chessboardSizePercent) {
& && &&&var self =
& && &&&var chessBoard = [];
& && &&&//占位
& && &&&var chessBoardCell = [];
& && &&&this.chessBoardSize = chessBoardS
& && &&&for (var r = 0; r & chessBoardS r++) {
& && && && &var row = [];
& && && && &var cellRow = [];
& && && && &for (var c = 0; c & chessBoardS c++) {
& && && && && & row.push({
& && && && && && &&&stoneType:Stone.none,
& && && && && && &&&//位置使用到的时候才计算
& && && && && && &&&pos:null
& && && && && & });
& && && && && & if (c & chessBoardSize - 1) {
& && && && && && &&&cellRow.push(0);
& && && && && & }
& && && && &}
& && && && &chessBoard.push(row);
& && && && &if (r & chessBoardSize - 1) {
& && && && && & chessBoardCell.push(cellRow);
& && && && &}
& && &&&this.chessBoard = chessB
& && &&&this.chessBoardCell = chessBoardC
& && &&&//获取系统信息
& && &&&wx.getSystemInfo({
& && && && &success: function(res) {
& && && && && & self.chessboardSizePX = res.windowWidth * chessboardSizeP
& && && && && & console.log('%c棋盘大小:%c' +
& && && && && &&&self.chessboardSizePX +
& && && && && && &'%cpx',
& && && && && && &'color:',
& && && && && && &'color:',
& && && && && && &'color:'
& && && && && && &);
& && && && && & self.cellSizePX = self.chessboardSizePX / (chessBoardSize - 1);
& && && && && & console.log('%c单元格大小:%c' +
& && && && && &&&self.cellSizePX +
& && && && && && &'%cpx',
& && && && && && &'color:',
& && && && && && &'color:',
& && && && && && &'color:'
& && && && && && &);
& && && && && && &self.halfCellSizePX = self.cellSizePX * 0.5;
& && && && &}
& && &&&});
& && &&&//当前下子的类型
& && &&&this.stone = Stone.
& && &&&//下子监听的回调集合
& && &&&this.onStepStoneCallbacks = [];
& && &&&//是否能够下子的开关
& && &&&this._canStep =
& && &&&//历史
& && &&&this.history = [];
& && &&&//设置裁判
& && &&&this.setJudger(judger);
& &&&* 通过事件获取下子在棋盘的位置
& & getStepLocation(e) {
& && &&&var curTarget = e.currentT
& && &&&var offset = {
& && && && &x: curTarget.offsetLeft,
& && && && &y: curTarget.offsetTop
& && &&&};
& && &&&var touch = e.touches[0];
& && &&&//相对棋盘的位置
& && &&&var clientPos = {
& && && && &x:touch.pageX - offset.x,
& && && && &y:touch.pageY - offset.y
& && &&&};
& && &&&var stepPos = {
& && && && &x: Math.ceil((clientPos.x - this.halfCellSizePX) / this.cellSizePX),
& && && && &y: Math.ceil((clientPos.y - this.halfCellSizePX) / this.cellSizePX)
& && &&&};
& && &&&if (stepPos.x & 0 || stepPos.x &= this.chessBoardSize ||
& && && && &stepPos.y & 0 || stepPos.y &= this.chessBoardSize) {
& && && && && &
& && && && &}
& && &&&return stepP
& &&&* 通过事件获取下子在棋盘的绝对位置
& & getStepPosition(e) {
& && &&&var curTarget = e.currentT
& && &&&var stepPos = this.getStepLocation(e);
& && &&&if (stepPos == null) {
& && && && &
& && &&&var absPos = stepPos.clone();
& && &&&//后面的那个1像素怎么出来的我也不知道,反正减了之后位置看起来正很多
& && &&&absPos.x = absPos.x * this.cellSizePX + curTarget.offsetLeft - this.halfCellSizePX - 1;
& && &&&absPos.y = absPos.y * this.cellSizePX + curTarget.offsetTop - this.halfCellSizePX - 1;
& && &&&this.chessBoard[stepPos.x][stepPos.y].pos = absPos.clone();
& && &&&return absP
& &&&* 下棋,设置的是基于棋盘的坐标
& &&&* @return&&返回true就是下子成功,否则为失败
& & step(x, y) {
& && &&&if (this.canStepAt(x, y)) {
& && && && &this.chessBoard[x][y].stoneType = this.nowStone();
& && && && &const nowStone = this.nowStone();
& && && && &this.stone = nowStone == Stone.black ? Stone.white:Stone.
& && && && &this.onStepStone(nowStone, x, y);
& && && && &if (!(this.history instanceof Array)) {
& && && && && & this.history = [];
& && && && &}
& && && && &//插入到历史
& && && && &this.history.push({
& && && && && & 'x':x,
& && && && && & 'y':y,
& && && && && & 'stoneType':nowStone
& && && && &});
& && && && &this.judge(nowStone, x, y);
& && && && &
& &&&* 悔棋
& & undo() {
& && &&&if (!(this.history instanceof Array) || this.history.length &= 0) {
& && && && &
& && &&&const lastStoneIndex = this.history.length - 1;
& && &&&const lastStone = this.history[lastStoneIndex];
& && &&&this.stone = lastStone.stoneT
& && &&&this.history.splice(lastStoneIndex, 1);
& && &&&this.chessBoard[lastStone.x][lastStone.y].stoneType = Stone.
& && &&&this.allowStep();
& &&&* 判断该棋子是否能够下
& & canStepAt(x, y) {
& && &&&if (x & 0 || x &= this.chessBoardSize ||
& && && && &y & 0 || y &= this.chessBoardSize ||
& && && && &this.chessBoard[x][y].stoneType != Stone.none) {
& && && && && &
& && &&&return this._canS
& &&&* 当触发了下子的事件的时候
& & onStepStone(nowStone, x, y) {
& && &&&if (this.onStepStoneCallbacks instanceof Array) {
& && && && &for (var i in this.onStepStoneCallbacks) {
& && && && && & const cb = this.onStepStoneCallbacks[i];
& && && && && & if (typeof(cb) === 'function') {
& && && && && && &&&cb.call(this, nowStone, x, y);
& && && && && & }
& && && && &}
& &&&* 添加下子的监听器
& &&&* @return 如果返回0则代表插入失败,成功返回索引
& & addOnStepStoneCallback(func) {
& && &&&if (!(this.onStepStoneCallbacks instanceof Array)) {
& && && && &this.onStepStoneCallbacks = [];
& && &&&if (typeof(func) == 'function') {
& && && && &//push以后会返回数组的长度,所以减一之后就会是对应的索引
& && && && &return this.onStepStoneCallbacks.push(func) - 1;
& && &&&return 0;
& &&&* 通过索引删除下子的监听器
& & removeOnStepStoneCallback(index) {
& && &&&if (this.onStepStoneCallbacks instanceof Array) {
& && && && &if (this.onStepStoneCallbacks.length & index) {
& && && && && & this.onStepStoneCallbacks.splice(index, 1);
& && && && &}
& &&&* 重新开局
& & restart() {
& && &&&this.stone = Stone.
& && &&&for (var r in this.chessBoard) {
& && && && &for (var c in this.chessBoard[r]) {
& && && && && & this.chessBoard[r][c].stoneType = Stone.
& && && && &}
& && &&&//清空历史
& && &&&this.history = [];
& && &&&this.allowStep();
& &&&* 阻止下子
& & preventStep() {
& && &&&this._canStep =
& &&&* 允许下子
& & allowStep() {
& && &&&this._canStep =
& &&&* 获取当前是下的黑子还是白子
& & nowStone() {
& && &&&return this.
& &&&* 返回当前是否允许下子
& & canStep() {
& && &&&return this._canS
& &&&* 进行裁判(下子成功之后触发)
& &&&* @param stepStone 当前下子的类型
& &&&* @param x& && && &下子基于棋盘的x坐标
& &&&* @param y& && && &下子基于棋盘的y坐标
& & judge(stepStone, x, y) {
& && &&&if (typeof(this._judger) == 'function') {
& && && && &this._judger.call(this, stepStone, x, y, this._winCallback);
& &&&* 设置裁判回调
& & setJudger(func) {
& && &&&if (typeof(func) == 'function') {
& && && && &this._judger =
& &&&* 设置胜利之后的回调
& & setWinCallback(func) {
& && &&&if (typeof(func) == 'function') {
& && && && &this._winCallback =
微信小程序DEMO排行javascript 初学教程及五子棋小程序的简单实现
转载 & & 投稿:jingxian
下面小编就为大家带来一篇javascript 初学教程及五子棋小程序的简单实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
一.JavaScript简介
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
二.hbulider工具的使用
hbulider的特点:
1.飞快的编码速度
2.HBuilder直接创建移动App,打包为ios或Android原生安装包
3.HTML5语法、HTML5+语法、三大浏览器扩展语法,尽收HBuilder中
4.绿柔设置界面,更加护眼
下载hbulider安装包
百度搜索hbulider,进入官方网站,点击右上角 download 按钮,即可下载。
下载完成后可以看到下载到的是一个压缩包,打开下载的压缩包,将压缩包内的文件解压到希望存放的位置,点击确定。
解压完成后,找到解压位置,点击hbulider.exe文件,开始安装。
6)打开后选择一个一般用来存放代码的文件夹作为代码目录。
7)根据自己的实际情况,选择所能看清楚的颜色块,然后点击下方 生成适合你的视觉方案 生成一个舒适的配色。
8)选择喜欢的视觉主题,点击下面的 确认并关闭 ,完成设置。
9)完成后进入到欢迎向导,如图,到此安装完成。
三.用hbulider写一个五子棋小程序
&!DOCTYPE html&
&meta charset="utf-8" /&
&title&五子棋游戏&/title&
&canvas id="myCanvas" width="570" height="570"
style="border: 2px solid #abcabc"&&/canvas&
作者:offline
描述:使用js代码控制游戏逻辑
&script type="text/javascript"&
//获取canvas的标签
var ChessCanvas = document.getElementById("myCanvas");
//获取画布
var gameCanvas = ChessCanvas.getContext("2d");
//定义棋盘大小
var map = 25;
//棋子大小
var chessSize = 24;
//获取下棋的坐标
var x = y = 0;
//棋子的颜色
var isRed =//==true的该下红棋 否则下黑棋
var color = "#000000";
//棋子数组
//保存所下的棋子 0:未下;1:下红棋;2:下黑棋
var chessData = new Array(23);
for(var i=0;i&23;i++)
chessData[i] =new Array(23);
for(var j=0;j&23;j++)
chessData[i][j] = 0;
//所下棋子在棋子数组的位置
//绘制棋盘
for(var i=0;i&23;i++)
gameCanvas.moveTo(10,10+i*map);
gameCanvas.lineTo(560,10+i*map);
gameCanvas.moveTo(10+i*map,10);
gameCanvas.lineTo(10+i*map,560);
gameCanvas.stroke();//画
//创建函数,完成下棋
function addChess(x,y)
//下棋 画小圆圈
角度转弧度 π/180×角度
弧度变角度 180/π×弧度
gameCanvas.beginPath();//开始
gameCanvas.arc(x,y,12,0,Math.PI*2,true);//画棋子
gameCanvas.fillStyle =
gameCanvas.fill();
gameCanvas.closePath();//结束
if(color=="#000000")
color = "#ff0000";
chessData[i][j] = 2;
color = "#000000";
chessData[i][j] = 1;
//重复调用 在做坦克大战之类游戏
需要使用。。。。。。。
window.setInterval(函数,时间);
//游戏是否结束
function isGameWin()
//如果是人机对战版,则需要下棋的AI 如果不是人机对战 则下完棋后,提醒对方下棋
function gameAI()
//做鼠标监听
document.onmousedown= function(e)
window.onclick = function (){
//获取下棋的坐标
i = Math.round((e.x-10)/25);
j = Math.round((e.y-10)/25);//边界不能下
//判断该位置x,y是否可以下棋
x = i*25+10;
y = j*25+10;
//判断该位置ij是否有棋子
if(chessData[i][j]==0)
addChess(x,y);
alert("不好意思!你来晚了,已经被对方捷足先登了");
代码不全,会陆续加上。
以上这篇javascript 初学教程及五子棋小程序的简单实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具}

我要回帖

更多关于 微信小程序五子棋 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信