当前位置: 首页>>代码示例>>C++>>正文


C++ Mover::player_self方法代码示例

本文整理汇总了C++中Mover::player_self方法的典型用法代码示例。如果您正苦于以下问题:C++ Mover::player_self方法的具体用法?C++ Mover::player_self怎么用?C++ Mover::player_self使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Mover的用法示例。


在下文中一共展示了Mover::player_self方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: add_new_monster_point

int Single_Scene::add_new_monster_point(const int point, bool is_boss, Coord point_coord) {
	Move_Scene::add_new_monster_point(point, is_boss, point_coord);
	//刷流浪商人
	SCENE_OUTPOST_MANAGER->add_new_monster_point(this, point, is_boss, point_coord);

	if(scene_config()){
		// 国内任务特殊处理
		if(CONFIG_CACHE->server_maintainer_cache().game_ver_type == 0){
			if(scene_config()->scene_id == CONFIG_CACHE_ROLE->get_single_first_id() &&
					this->create_scene_args_.type == 0){// 特定副本首通加
				Mover* mover = this->find_mover_with_layer(0, role_id_);
				if(mover && mover->player_self()){
					if(point == 1){// 临时英雄出战
						Block_Buffer buf;
						buf.make_message(INNER_HERO_TMP_OUT_FIGHT);
						buf.write_int8(0);
						buf.write_int32(60210021);
						buf.finish_message();
						mover->player_self()->send_to_logic(buf);
					}else if(point == 2){// 删除临时英雄
						Block_Buffer buf;
						buf.make_message(INNER_HERO_TMP_OUT_FIGHT);
						buf.write_int8(1);
						buf.write_int32(60210021);
						buf.finish_message();
						mover->player_self()->send_to_logic(buf);
					}
				}
			}
		}else{
//			if(scene_config()->scene_id == 80201002
//					&& this->create_scene_args_.type == 0){// 特定副本首通加
//				Mover* mover = this->find_mover_with_layer(0, role_id_);
//				if(mover && mover->player_self()){
//					if(point == 2){// 临时英雄出战
//						Block_Buffer buf;
//						buf.make_message(INNER_HERO_TMP_OUT_FIGHT);
//						buf.write_int8(0);
//						buf.write_int32(60210021);
//						buf.finish_message();
//						mover->player_self()->send_to_logic(buf);
//					}else if(point == 3){// 删除临时英雄
//						Block_Buffer buf;
//						buf.make_message(INNER_HERO_TMP_OUT_FIGHT);
//						buf.write_int8(1);
//						buf.write_int32(60210021);
//						buf.finish_message();
//						mover->player_self()->send_to_logic(buf);
//					}
//				}
//			}
		}

		if(scene_config()->dungeon.pass_con == SCENE_PASS_CON_KILL_ALL){
			if (is_monster_point_all_clear()) {
				is_scene_complete_ = true;
				if(scene_config()->dungeon.relation == 0 ||
						scene_config()->dungeon.relation == -1){
					is_scene_pass_ = true;
					// 副本通关状态
					if(has_scene_pass_box_){// 精英的为没有领取宝箱的状态
						set_pass_status(Move_Scene::SCENE_PASS_STATUS_COMPELTE_NO_RECEIVE);
					}else{
						set_pass_status(Move_Scene::SCENE_PASS_STATUS_COMPELTE_RECEIVE);
					}
					hook_scene_pass();
				}
			}
		}else if(scene_config()->dungeon.pass_con == SCENE_PASS_CON_KILL_BOSS){
			if(is_boss){
				is_scene_complete_ = true;
				if(scene_config()->dungeon.relation == 0 ||
						scene_config()->dungeon.relation == -1){
					is_scene_pass_ = true;
					// 副本通关状态
					if(has_scene_pass_box_){// 精英的为没有领取宝箱的状态
						set_pass_status(Move_Scene::SCENE_PASS_STATUS_COMPELTE_NO_RECEIVE);
					}else{
						set_pass_status(Move_Scene::SCENE_PASS_STATUS_COMPELTE_RECEIVE);
					}
					hook_scene_pass();
				}
			}
		}
	}
	return 0;
}
开发者ID:tidaybreak,项目名称:game-server,代码行数:87,代码来源:Single_Scene.cpp


注:本文中的Mover::player_self方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。