GameMap其他初始化

//其他初始化
init_prop();//初始化道具
init_ornamemtal();//初始化装饰物
init_monster_type_info();//初始化怪物基本信息
这个比较重要在加载NPC时会用到这些基本信息的储存在m_monster_type_infos[mo_type_info.nBodyID] = mo_type_info;
貌似战斗模拟器也要用到这些数值
init_region();//具体的区域有安全区,战斗区,摆摊区...
init_skill_info();初始化技能等级信息这个也很有用
init_dropinfo();初始化怪物掉落信息
init_player_droprule();初始化人物物品掉落信息
init_pet_attribute();初始化宠物的等级信息

//NPC的加载
m_spNPCmgr = NEWSP(NPCmgr); //NPC加载,如怪物等
m_spNPCmgr->setFT(m_spTimerFactory.get()); //共享Map中的定时器,让Map线程来驱动。
m_spNPCmgr->init(this); //一定要先调用地图
m_spNPCmgr->initNPC();

//罪恶(玩家有白名,红名,灰名)
m_spSinMgr.reset(new SinMgr);
m_spSinMgr->setFT(m_spTimerFactory.get());
m_spSinMgr->init(this);

//初始化人物信息
InitMission();

//这两个不知干啥的
m_sendBuffer = new char[1024 * 1000];    

m_status_opt = new StatusOpt(this, m_spTimerFactory.get());

start();//开启线程,驱动定时器运行程序
void thrTransData::start()
{
    m_thr.reset(new std::thread(std::bind(&thrTransData::thread, this)));
}
时间: 2024-10-09 15:52:09

GameMap其他初始化的相关文章

GameMap地图初始化

init_map(res_path) 1.初始化mapbase的基本信息 pos2d screen_area = {1000, 600}; //普通屏幕大小 m_spBase->init(screen_area.x / 3, screen_area.y / 3 , //屏幕划分成3*3格子 header.map_size_item.base_size.x, header.map_size_item.base_size.y ); //map格子单位大小 初始化了mapbase里面的map格子的大小

GS初始化

开启GameServer模式 init函数,现在看看这个大函数干什么的 //这个init也是GameServerUI里面调的,这个线程其实就做了一些初始化的工作,其实这里面没有什么主不主线程,都是在一个进程里面的 void __stdcall GameServer::init() { ///设置最大连接数,现在还不知这个到底干啥的 Share::SetMaxGcNumb(12000); //指定本GS支持的最大数量 ///log日志,现在服务器写日志,在服务器报错的时候可以查看日志,还有报错时生

Java的成员变量初始化

对于方法里面的成员变量,Java要求程序员强制提供一个初始化的值.比如下面这个方法就会出错: public class Breakyizhan{ public void Z(){ int z; z++; } public static void main(String[] args) { Breakyizhan B = new Breakyizhan(); B.Z(); } } /* (www.breakyizhan.com) 输出结果是: 编译会出错,方法变量没有初始化 */ 而对于类的数据,

快学Scala 第二十一课 (初始化trait的抽象字段)

初始化trait的抽象字段: trait Logged { println("Logged constructor") def log(msg: String){ println("Logged")} } trait FileLogger extends Logged { var filename: String override def log(msg: String) { println("filename:" + filename) } }

main.c 流程-buffer初始化

void buffer_init(long buffer_end)函数的理解: *   0         0x100000          0x400000                    0x10 00000(16M) *    ---------------------------------------------------------- *   |   kernel  | memery buffer   |   main memory              |      

AS3 Vecter初始化

var vec : Vecter.<Point> = new <Point>[     new Point(1,1),     new Point(1,2) ]; 类似于 Array的初始化的方法. var arr : Array = [1,2]; 当然Vecter的常规初始化: var vec : Vecter.<Point> = new Vecter.<Point>();//这样的话要赋值的话需要使用push等函数. 注意要: ① new <Poi

对象初始化

对象初始化过程 第一步:在创建之前,检查是否加载(检查硬盘上的class文件是否加载到内存中,如果没有加载,就先加载父类的文件) 在加载父类的文件,在加载本类的文件中java使用的加载的策略:懒惰式加载(按需加载)用到的时候,只加载一次. 第二步:分配对象的空间.递归分配所有父类和子类的属性空间,属性会自动初始化为"0"的值 第三步:给属性赋值 第四步:调用父类的构造方法(默认调用父类的无参构造方法) 第五步:调用本类的构造方法

s5pv210——初始化SDRAM

1:SDRAM基础: 通过s3c2440的内存原理以及时序来理解s5pv210 SDRAM原理.时序. 首先看一下核心板内存如何连接的 可以看一下两个内存芯片接的地址总线均为Xm1_ADDR[13:0],数据总线Xm1_DATA[15:0].Xm1_DATA[31:16],两个内存芯片是并联的,当地址总线Xm1_ADDR[13:0]寻址时, 可以同时在两个内存芯片上各获取16位数据来组成一个32位数据,并由32位数据总线输出. 在看下面这幅图:下图为每个内存芯片内部框图:Block Diagra

安装初始化mysql后,默认几个库介绍

背景介绍:  当我们安装初始化mysql后,默认建了几个数据库,那么这些数据库有什么作用呢?mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || test               |+--------------------+4 rows