<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[dikuwu3480的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/dikuwu3480</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; dikuwu3480]]></copyright><item><title><![CDATA[JS - A*寻路]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101759015</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101759015</guid><author>dikuwu3480</author><pubDate>Fri, 21 Apr 2017 11:15:00 +0800</pubDate><description><![CDATA[算法核心

A*估值算法
寻路估值算法有非常多：常用的有广度优先算法，深度优先算法，哈夫曼树等等，游戏中用的比较多的如：A*估值
算法描述

对起点与终点进行横纵坐标的运算

代码实现

start: 起点坐标(point)
end: 终点坐标(point)
Math.abs(start.getX() - end.getX()) + Math.abs(start.getY() - end...]]></description><category></category></item><item><title><![CDATA[冒泡排序]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101759011</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101759011</guid><author>dikuwu3480</author><pubDate>Tue, 08 Nov 2016 17:05:00 +0800</pubDate><description><![CDATA[场景

对数组var array = [5, 3, 1, 2, 7];的内容排序

分析

数据量小，操作步骤少，可用简单的冒泡排序实现此功能
排序前数组：[5, 3, 1, 2, 7]
使用双重for循环实现


i === 0;
(j + i + 1) === 1;4次


第一次轮循1：[3, 5, 1, 2, 7]j = 0; (j + i + 1) === 1;交换5，3
第一...]]></description><category></category></item><item><title><![CDATA[战斗逻辑 - demo]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101759012</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101759012</guid><author>dikuwu3480</author><pubDate>Fri, 22 Jul 2016 15:07:00 +0800</pubDate><description><![CDATA[创建战斗依赖的数据结构
/**
 * 角色属性
 */
var a_data = {
    _id: 101,
    attr: {
        // 角色战斗属性
    },
    skill: [],// 技能数组
    isAtk: false,
    isDeath: false, 
    slot: 'a',// 角色所处槽位
};
/**
 * 技能属性
 ...]]></description><category></category></item><item><title><![CDATA[mongo数据库基础]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758977</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758977</guid><author>dikuwu3480</author><pubDate>Fri, 15 Jul 2016 18:06:00 +0800</pubDate><description><![CDATA[mongodb


mongodb特性


分布式文件存储
介与关系数据库和非关系数据库之间
文件存储格式为BSON(一种JSON的扩展)
BSON是对二进制格式的JSON的简称，BSON支持文档和数组的嵌套
一个MongoDB 实例可以包含一组数据库，一个DataBase可以包含一组Collection（集合）,一个集合可以包含一组Document（文档）.一个Document包含一组...]]></description><category></category></item><item><title><![CDATA[JS闭包]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758975</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758975</guid><author>dikuwu3480</author><pubDate>Tue, 12 Jul 2016 14:44:00 +0800</pubDate><description><![CDATA[作用域

js只有函数作用域没有块作用域
js函数内部可以直接读取全局变量
内部函数可以访问外部函数的变量，外部函数无法访问内部函数的局部作用域

var a = 100;
function fn(){
    console.log(a)// 100
}

function fn2(){
    var b = 200;
    function fn3(){
        cons...]]></description><category></category></item><item><title><![CDATA[c/c++]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758969</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758969</guid><author>dikuwu3480</author><pubDate>Wed, 13 Apr 2016 18:49:00 +0800</pubDate><description><![CDATA[编译


目前C/C++编译器最流行的就是gcc与g++
安装编译器，在windows下使用gcc与g++是通过安装MinGW实现的
MinGW(Minimalist GNU on Windows)安装后可以使用很多GNU(Linux下一个著名的项目)工具，包含了gcc/g++/gdb等工具(MinGW\lib下有标准库;MinGW\include下有头文件)
把MinGW文件夹放入C盘...]]></description><category></category></item><item><title><![CDATA[pixi.js]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758973</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758973</guid><author>dikuwu3480</author><pubDate>Wed, 13 Apr 2016 18:19:00 +0800</pubDate><description><![CDATA[添加基本文件（库文件）


渲染库


pixi.js
pixi.lib.js是pixi.js的子集，依赖class.js,cat.js,event_emiter.js文件
pixi.scroller.js
pixi-spine.js内部刲装了对骨骼的文件的操作


action库


pixi.js只是一套渲染库，不含有action
action.js抄cocos的action刲装的，...]]></description><category></category></item><item><title><![CDATA[cocos2d-x－Json/XML文件]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758966</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758966</guid><author>dikuwu3480</author><pubDate>Sat, 15 Nov 2014 14:52:00 +0800</pubDate><description><![CDATA[数据存储几种方式

1. 数据库
2. 文件
3. 内存
这里介绍Json格式与XML格式的文件存储
常用的文件存储数据的格式
1. Json格式
2. XML格式
Json适合存储小数据，XML适合存储大数据
在cocos2d-x中，如果我们要用Json首先我们要先导入一个Json库：libjson
demo如下：

要添加libjson头文件
创建...]]></description><category></category></item><item><title><![CDATA[设计模式 - 模板]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758970</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758970</guid><author>dikuwu3480</author><pubDate>Fri, 14 Nov 2014 15:33:00 +0800</pubDate><description><![CDATA[模板方法模式：定义了一个操作中的算法骨架，将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 2、 模板方法模式是通过把不变行为搬到超类，去除子类中的重复代码来体现它的优势，当不变的和可变的行为在方法的子类实现中混合在一起的时候，不变的行为就会在子类中重复出现。我们通过模板方法模式把这些行为搬移到单一（基类中）的地方，这样就帮助子类摆脱...]]></description><category></category></item><item><title><![CDATA[设计模式 - 代理]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758972</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758972</guid><author>dikuwu3480</author><pubDate>Tue, 11 Nov 2014 20:35:00 +0800</pubDate><description><![CDATA[Demo如下：
定义一个虚基类，声明三个纯虚函数，我定义一个Person类
Person.h

定义一个Student类来继承这个Person类，并实现相应的虚函数
Student.h

Student.cpp

定义一个代理类Delegate,同时继承自Person类

Delegate.cpp

main函数里边
看着好像是代理对象在做这件...]]></description><category></category></item><item><title><![CDATA[cocos2d-x - C++/Lua交互]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758965</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758965</guid><author>dikuwu3480</author><pubDate>Tue, 11 Nov 2014 16:21:00 +0800</pubDate><description><![CDATA[使用tolua++将自定义的C++类嵌入，让lua脚本使用

一般过程：
自定义类 -&gt; 使用tolua++工具编译到LuaCoco2d.cpp中 -&gt; lua调用

步骤一：自定义一个C++类，我定义一个类名为：MySprite

MySprite.h

MySprite.cpp


步骤二：根据自定义类创建一个.pkg文件，我们把自定...]]></description><category></category></item><item><title><![CDATA[设计模式 - 观察者]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758974</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758974</guid><author>dikuwu3480</author><pubDate>Mon, 10 Nov 2014 19:50:00 +0800</pubDate><description><![CDATA[1. AbstractNotifier类（主题或抽象通知者类）：一般用一个抽象类或接口实现。它把所有对观察者对象的引用保存在一个聚集里，每个主题都可以有任何数量 的观察者。抽象主题提供一个接口可以增加或删除观察者对象。
2. AbstractObserver类（抽象观察者类）：为所有具体观察者定义一个接口，在得到主题的通知时更新自己。这个 接口叫做更新接口。抽象观察者一般用一个抽...]]></description><category></category></item><item><title><![CDATA[设计模式 - 单例]]></title><link>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758961</link><guid>https://blog.youkuaiyun.com/dikuwu3480/article/details/101758961</guid><author>dikuwu3480</author><pubDate>Mon, 10 Nov 2014 18:00:00 +0800</pubDate><description><![CDATA[在OC中当一个控制器要在多个地方用到时，将考虑用单例


同理在C++中，当一个类在多个场景中都会用上，且多个场景在这个类中都有值的传递时，用单例模式
比如游戏主角的一个背包可以写成单例

需要注意的是：
1&gt;，在使用单例时，这个单例类的默认构造函数必需要声明为私有方法。
2&gt;，DHPackage成员变量为static成员变量：static Pa...]]></description><category></category></item></channel></rss>