手机浏览器扫描二维码访问
于是在这些知识的支撑下,推箱子游戏地图的加载问题迎刃而解。
现在地图数据装在了一个八行八列的二维数组中,只需要使用双重for循环遍历数组下标就能够取出其中的元素了。
在遍历二维数组时使用if来判断当前元素的值,为0时什么都不做,为1时加载灰太狼的图片,为2时加载懒羊羊的图片,为3时加载树,为4时加载煮羊的大黑锅,最后再根据当前数组元素的下标来计算出图片在窗体中的位置就大功告成了。
这其中的知识点可谓和环环相扣,难怪老爹会用这个例子来让我学习这些知识。
人啊,永远是贪心的。
一开始我总想着要如何实现加载地图这个功能,现在实现了,我又不满足于此,想要把整个游戏全部都完成。
老爹当然没有理由拒绝我想要完成这个游戏的请求,因为老爹他本身就是一个有始有终的人,自然不会让我半途而废。
当然,主要原因是我如今的知识储备已经完成能够完成这个游戏的核心功能了。
以上的两点内容纯属我个人想象。
多年以后,我回顾这段时间才发现,我还是年轻,太天真,老爹让我做的每一件事都有他的深意。
换句话说,从学习c语言开始,老爹就步步为营,为我设下了无数的陷阱,正等着我往里面踩呢。
别看一个推箱子游戏操作起来简单,但这其中涉及到的逻辑还是挺复杂的,从分析到实现,整整用了两天。
因为这其中的逻辑着实有点绕,我听完第一遍的时候完全是一脸问号,不知道老爹说了些什么。
于是老爹又从头到尾,仔仔细细地给我又说了一遍,我这才明白了七七八八。
即便如此,在实现过程中还是向老爹问了不少问题。
就拿移动一步来说,首先需要判断下一个位置是什么,如果是空,那就直接移动过去,并且将地图数组中灰太狼现在对应的元素从1修改成0,下一个位置对应的元素从0修改成1,最后再修改灰太狼的在窗体的位置就好了;如果是树,就什么也不干。
这两种情况是最简单的,实现也不过分分钟的事情。
难就难在下一个位置是羊、黑锅以及羊正在黑锅里。
如果下一个位置是羊,还需要判断下下个位置是什么,这时又有五种可能:空、树、羊、黑锅、羊正在锅里。
其中下下个位置为树、羊、羊正在黑锅里边是最简单的,因为这个时候灰太狼是不能移动的,即什么都不做。
麻烦的是下下个位置是为空和黑锅。
如果下下个位置是空,那么灰太狼将会把羊推到这个位置,而灰太狼自己则会在羊原来的位置,所以需要把下下个位置在地图数组中对应的元素从0修改成2,羊原来的位置从2修改成1,灰太狼原来的位置从1修改成0,最后再修改图片在窗体中的位置就好了。
下下个位置如果是黑锅的话,要相对简单一些,需要做的就是把羊扔进锅里,即黑锅的位置对应的地图数组元素要从原来的4变成6,因为2代表羊,4代表锅,42=6,所以6代表羊在锅里。
而羊原来的位置就从2变成1,灰太狼原来的位置从1变成0,最后修改它们在窗体中的位置。
这只是下一个位置为羊的这种情况,另外还有下一个位置是黑锅、以及羊在黑锅里边。
楚歌有一天早上醒来,忽然发现自家客厅里出现了一个副本的入口。我靠,这是什么情况,虽然老子是游戏高手,可真人下副本这种事情,老子真的不熟啊。...
说好的只结婚不同床,这是干吗?这是两张床。她怒了这么赖皮,还是不是爷们儿?他勾唇低笑要不要验验?她懂黑客会散打,却背负私生子小三石女的骂名。他是魔鬼教官,却宠她成痴。嗯?不是说要调教她,让她重新做人吗?做了两个还不够?他看着俩宝笑得腹黑那今晚继续靠!重新做人!不是重新做人!...
末世英雄系统不幸被闪电击中的大龄屌丝,醒来后却发现已经是末世,借助不靠谱的系统,靠着自己的智慧,发现一个个可靠的伙伴,寻找自己的生存之道。...
作为神偷界的第一美人,竟然会被一个猥琐男看光光关键是他竟然还笑的出来,而且笑的肆无忌惮!!真是人至贱则无敌,难道这人真的是不怕死吗?好,那姑奶奶就送你下地狱!等等,为毛我的绝世武功在他面前成了花拳绣腿?!为毛被他这么无耻放荡的抱着,我的腰竟然软了...
特种兵出身的墨阳因为一次意外经历,结识了以摸金倒斗为营生的秋二爷等人,为报答秋二爷的救命之恩,帮助秋二爷寻找他失踪儿子万彬的下落,却无意间卷入了一个神秘组织的阴谋之中。流传千年的苗疆巫蛊传说与东南亚的降头术有着怎样的渊源?曾鼎盛一时的古骆越文明缘何销声匿迹?千年飞僵是否真实存在?人迹罕至的粤湘交界莽山,广西十万大山,缅北死亡谷,神秘的地下阴湖,究竟隐藏着什么秘密,随着真相逐渐揭开,一个已延续数千年的阴谋逐渐浮出水面,而一切阴谋的源头,皆指向了传说中的黄泉之门。黄泉手札,一本近乎真实的探险笔记。...
...