背包系统学习笔(tu)记(cao)
这几天在学习背包系统,网上有看到一个挺牛逼的背包系统,不过人家那个功能很全面,一个背包系统就囊括了装备,锻造,购买等等功能(这里给出网址:https://blog.csdn.net/say__yes/article/details/71910984)。很可惜,博主水平有限,断断续续研究了两天,没搞明白,尤其后面大段大段的代码,让我一点往下看的心情都没有,虽然注释挺详尽的。我大概总结了一下那篇文章,那个作者水平应该确实挺厉害的,但是我还是要吐槽一下,那个作者将整个背包系统分成了四篇文章写完,讲真,前两章是真的写的挺好的,而且作者也说有MVC的影子。但是最后两篇文章(核心部分)是真的写的不行,至少我看到后面我自己看的有些混乱了,如果有大神的话,希望可以指点一下。
首先,第一篇文章算是前言,引导,这里略过不讲,第二篇文章,是对于从Json文件中解析出来的数据进行的处理,这里还是挺简单的直接都是一目了然,清楚明白。但是接下来第三四篇文章,然后就开始感到晕眩了。本来我以为后面的文章应该是一篇对于数据层的处理,一篇是关于UI界面逻辑层的处理。但是吧,第三篇文章基本还算可以还有些面向对象的风格,各个面板的逻辑处理也都挺好。但是第四篇的数据处理就真的让我蒙了,感觉就是纯粹的功能代码堆砌,有Json解析得到数据的代码,有数据处理的功能代码,然后还有UI界面的逻辑处理的代码,真的让我有些懵逼了。而且各种功能代码大段大段的堆在一起,你说我还有多少心情往下面看啊。。。
但是吐槽归吐槽,多少还是可以学习一下嘛,本来想写个好几条,但是最后只相处来这么一条,算是个大致的总结吧。:
购买系统,锻造系统,装备系统都是要和背包系统进行交互才能发挥作用,而且前三个系统都可以看成是单纯的背包系统(一个背包Panel,里面有拖拽物品,点击使用物品,物品提示这些功能,增加删除物品这些基本功能)的延伸。所以只要你能搞出来基本的背包系统,那么接下来,你完全可以在这个基础上增加一些功能就OK了。(主要就是数据处理方面要麻烦一些罢了,本来想放一下那位作者的思路结构图的,但是后来看了看,想了一下还是没放,因为那个图真的不算太好。)
背包系统学习笔(tu)记(cao)的更多相关文章
- 【学习笔鸡】快速沃尔什变换FWT
[学习笔鸡]快速沃尔什变换FWT OR的FWT 快速解决: \[ C[i]=\sum_{j|k=i} A[j]B[k] \] FWT使得我们 \[ FWT(C)=FWT(A)*FWT(B) \] 其中 ...
- 【学习笔鸡】整体二分(P2617 Dynamic Rankings)
[学习笔鸡]整体二分(P2617 Dynamic Rankings) 可以解决一些需要树套树才能解决的问题,但要求询问可以离线. 首先要找到一个具有可二分性的东西,比如区间\(k\)大,就很具有二分性 ...
- Android开发学习之路-记一次CSDN公开课
今天的CSDN公开课Android事件处理重难点快速掌握中老师讲到一个概念我觉得不正确. 原话是这样的:点击事件可以通过事件监听和回调两种方法实现. 我一听到之后我的表情是这样的: 这跟我学的看的都不 ...
- 学习大神笔记之 “MyBatis学习总结(一)”
1.准备工作 软件:eclipse. mysql .navicat for mysql 包:mybatis-3.1.1.jar mysql-connector-java-5.1.7-bin.jar ...
- 【团队冲刺总结】一个编码人员的反(tu)思(cao)
消失了半个多月了啊,算算时间,好像确实有近个把月没有好好的写博客来了.我一直很想写博客的,之前有老师问过写博客的动力是什么.我想了想,我觉得可能是我比较喜欢看书吧,不管是专业书还是小说(好吧,我承认, ...
- 断剑重铸之日,席卷朗朗乾坤之时--PHP学习一月漫记
传说中阿尔萨斯王子沉沦堕落之后,被巫妖王安置在冰冷的城堡中,静静地等待重出天日,它随身携带的宝剑也埋没与尘土之间,暗淡无光.他想起宝剑伴身,东征西战的峥嵘岁月,忆及如今身陷囹圄,一股怨念由心底升起,许 ...
- [知了堂学习笔记]_记一次BootStrap的使用
效果图如下: 一.简介: 什么是Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架. 什么是响应式布局? 引用一句Bootstrap的标题语 " ...
- html5 web worker学习笔记(记一)
(吐槽:浏览器js终于进入多线程时代!) 以前利用setTimeout.setInterval等方式的多线程,是伪多线程,本质上是一种在单线程中进行队列执行的方式.自从html5 web worker ...
- djano-cms学习笔计(一)
开放源码的内容管理系统,基于Web框架Django的. 优势如下 高度可扩展的插件系统,可让您自由地构建各种内容的网站. 前端编辑直接更改您的网站上的内容.工程的所有插件. 感谢可读的网址的页面结构是 ...
随机推荐
- WPF小记 -- 使用Path自己画图标,点击命中(焦点)丢失问题
在Template中,Path外面的Grid需添加Background属性值.否则点击范围会受限制,例如:Click,在RadioButton的Height和With范围内点击,命中率<1. & ...
- 背景渐变 background-image:linear-gradient(0deg,#fff,#ccc);
背景渐变 background-image:linear-gradient(0deg,#fff,#ccc);
- Less功能特性
(1)变量 我们常常在 CSS 中 看到同一个值重复多次,这样难易于代码维护 const bgColor="skyblue"; $(".post-content" ...
- 借助百度地图API制作企业百度地图
做网站需要插入地图,可以借助百度地图API,具体步骤如下: 1.打开百度地图API的网址: http://api.map.baidu.com/lbsapi/creatmap/ 2.设置中心点 3. ...
- oracle获取排序后的第一条信息
查询表table1里字段id小于10的所有数据,并且让数据根据id降序排列,然后得到第一条数据 select * from (select * from table1 where id<10 o ...
- SQL中带有NOT IN 子查询改写
报表程序中的一段SQL运行很慢,代码如下: 优化前: 耗时:1337s INSERT INTO PER_LTE_ZIB_PB_COMMISSION_07 SELECT P.TOPACTUALID, Q ...
- mui.openWindow的html5+和web传参的兼容
mui.openWindow兼容web&plus环境下的页面传参 背景介绍 刚刚好要写个微信公众号和html5+兼容的项目 发现总是用localStorage传参不是事啊 太不优雅了 想了想还 ...
- Spring Quartz 和 Spring Task使用比较
Quartz 和 Spring Task执行时间对比: 1. Quartz同步模式:一个任务的两次执行的时间间隔是:“执行时间”和“trigger的设定间隔”的最大值 2. Task默认同步模式:一个 ...
- 洛谷 3953 NOIP2017提高组Day1 T3 逛公园
[题解] 先建反向图,用dijkstra跑出每个点到n的最短距离dis[i] 设f[u][k]表示dis(u,n)<=mindis(u,n)+k的方案数.对于边e(u,v,w),走了这条边的话需 ...
- Leetcode 207.课程表
课程表 现在你总共有 n 门课需要选,记为 0 到 n-1. 在选修某些课程之前需要一些先修课程. 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1] 给定课程总 ...