#ifndef GAMEDEFINE_H #define GAMEDEFINE_H #include "GameDefine_KIKI.h" #include "GameDefine_KJWS78.h" #include "GameDefine_JJUMBO.h" #include "GameDefine_Engine.h" #include "GameDefine_YJ.h" #include "GameDefine_K2P.h" #include "GameDefine_GS.h" #include "GameDefine_Mjkim.h" #include "GameDefine_LTJ.h" #include "GameDefine_DH.h" #include "GameDefine_YMS.h" #include "GameDefine_SCJ.h" #include "GameDefine_HSH.h" ////////////////////////////////////////////////////////////////////////// // 与版本无关的客户端专用调试 ////////////////////////////////////////////////////////////////////////// #if defined(_DEBUG) || defined(_GAMECLIENT_VER) //#define _YJ_EXECUTE_IN_MAPTOOL // 2010.07.26 / 任务测试环境改善工作 #define _NA_006519_20130311_TEXTURE_VIEWER // 2013.03.11 / 客户端纹理视图制作工作 #endif //_DEV_VER ////////////////////////////////////////////////////////////////////////// // 被删除的difine //#define CUSTOMIZE_HEAD //#define _JSH_BUGFIX__LEAVE_PARTY_ // 2006.04.20 / 村庄里不适用组队退出命令的bug //#define _JSH_ADD__ENCRYPT_PROTOCOL_ // 2006.03.15 / 协议加密 //#define _JSH_REFACTORING__WORLD_SERVER_CONNECTION_ // 2006.04.03 / 世界服务器连接重定向 //#define _JSH_ADD__GAME_EXIT_STANDING_BY_ // 2006.04.12 / 服务器选择等退出游戏时,暂时等待的功能 //#define _JSH_BUGFIX__LEAVE_FROM_PARTY_ // 2006.04.14 / 离开派对时,先确认是否参加派对 //#define _JSH_MODIFY__CHANGE_TRADE_PROTOCOL_ // 2006.04.14 / 玩家之间的交易:适用修改后的协议 //#define _ADD_REWARD_SCRIPT // 2006. 4. 7 / 补偿信息相关 //#define _ADD_FIELD_SCENE // 2006. 4. 11 / 添加场景. //#define _ADD_FIELD_IN_DEAD_PROCESS // 2006. 4. 11 / 临死处理 //#define _ADD_ITEM_EXCHANGE // 2006. 4. 14 / 物品1:1兑换(商店出售物品时) //#define _REMOVE_LOCK_KEYBOARD // 2006. 4. 18 / 删除键盘锁定喇叭 //#define _ADD_ITEM_DROP_DELETE_FOR_NOT_DROP_ITEM // 2006. 4. 26 / 删除无法下拉的物品. //#define UI_RESOLUTION_VARIATION // 2006. 2. 15 / UI分辨率尺寸转换 //#define MINIMAP_POS_CHANGE //#define NEW_ENGINE //#define BLOCKED_TEXT // 2006. 2. 17 / 角色名称等加上黑色三角形 //#define PLAYER_HIT_DELTA_ANIMATION // 2006. 3. 22. 将角色伤害动画处理为德尔塔安妮 //#define MAPOBJECT_USE_WITH_ACTION // Map对象的使用也用Action处理 //#define CRITICAL_HIT_ANIMATION //#define MONSTER_RADIUS // 怪物周边相关处理 //#define AREA_CONQUEST_NEW_PROJECT //#define UI_AC_DIALOG //#define MOD_NETWORK_HEARTBEAT //#define _JBH_ADD_AGENT_ENCRYPT_PROTOCOL //#define _ADD_CHARGE_ITEM_REPAIR_ASK // 2006. 12. 18 / 使用修理道具时添加询问意见的信息. //#define _JBH_ADD_OPTION_CAMERA_BASE_MOVE // 2006.2.23 / 相机基准移动. //#define _JBH_ADD_OPTION_CAMERA_BASE_MOVE_CALL_FUNCTION //#define _JBH_MOD_ARMOR_KIT // 2006.4.20 / 物品4.11日适用 //#define _124_KIKI_CASH_ITEM_SHOP // 2006. 11. 21 / 收费项目集 // //#define _ADD_QUEST_COMMON_FORWARD // 2006. 3. 30 / 显示任务接受列表及一般NPC对话时使用的UI //#define _ADD_QUEST_REWARD // 2006. 3. 30 / 接受任务,进行,获得奖励的UI //#define _ADD_QUEST_LIST_CONTENT // 2006. 3. 30 / 显示用户要求的任务内容. //#define _ADD_QUEST_LIST_MISSION // 2006. 3. 30 / 显示用户要求的任务. //#define _ADD_QUEST_MISSION_LIST // 2006. 3. 30 / 显示任务信息 //#define _ADD_QUEST_TIME_CHECK // 2006. 4. 19 / 任务时间检查 //#define _ADD_QUEST_AREA_CHECK // 2006. 4. 19 / 任务区域校验 //#define _ADD_QUEST_UNION // 2006. 4. 19 / 联合任务 //#define _ADD_QUEST_NPC_MARK_IN_RADAR // 2006. 4. 25 / 根据任务的NPC与雷达显示相关. //#define _ADD_QUEST_CANCEL_BUTTON // 2006. 5. 19 / 添加任务放弃按钮. // //#define _ADD_QUEST // 2006. 3. 28 / Quest //#define _ADD_OPEN_FORWARD_NPC_MEET // 2006. 3. 30 / 遇到NPC时显示任务前锋窗口. //#define _ADD_QUEST_AUTO_ACCEPT // 2006. 5. 19 / 自动接受任务 //#define _ADD_QUEST_AUTO_ACCEPT_REQUEST // 2006. 8. 3 / 任务自动接受请求(无NPC) //#define _ADD_QUEST_AUTO_REWARD_REQUEST // 2006. 8. 3 / 任务自动完成奖励请求(无NPC) //#define _ADD_QUEST_CHAO_QUEST // 2006. 10.30 / 添加任务卡奥卡之间的裁减任务. //#define _ADD_QUEST_VIEW_PROGRESS_QUEST // 2007. 1.15 / 显示任务进度. //#define _ADD_CHARGE_ITEM_SAVE_POSITION_SCROLL // 2006. 11. 20 / 收费道具位置存储Potal滚动作业. //#define _ADD_CHARGE_ITEM_EXTEND_INVENTORY // 2006. 11. 28 / 库存扩展工作. //#define PCBANG_ITEM_TOOTIP_PRESENT // 2006. 12. 9 / 网吧道具选项输出. //#define _ADD_CHARGE_ITEM //#define AUTOTARGET_OPTION // 2006.2.21 / 攻击敌人时自动目标选项化. //#define FIXTARGET_OPTION // 2006.2.21 / 每次按标签键时目标不会旋转,而是固定目标。选项化. //#define FOG_RATE_CHANGE // 2006.2.15 / 设定包权值. //#define _JBH_ADD_OPTION_SCROLL_ROTATION_SPEED // 2006. 2.23 / 相机转速滚动条选项. //#define _JBH_ADD_OPTION_SCROLL_ROTATION_SPEED_CALL_FUNCTION //#define _JBH_ADD_OPTION_SCROLL_MOUSE_SPEED // 2006. 2.24 / 鼠标移动灵敏度调节滚动条选项 //#define _JBH_ADD_OPTION_FORWARD_TARGETING // 2006. 2.24 / 前方击球选项. //#define _JBH_ADD_OPTION_FORWARD_TARGETING_CALL_FUNCTION //#define _JBH_MOD_CAMERA_DISTANCE // 2006.3.16 / 修改相机和角色的基本距离. //#define _JBH_MOD_MOUSE_ACTION_CHANGE // 2006.3.16 / 鼠标左键切换. //#define _JBH_MOD_OPTION_DIALOG // 2006.3.30 / 选项游戏拨号日志修改. //#define _JBH_MOD_CHARACTERSCENE_NOT_MOUSE_CHANGE // 4.13 / 在角色场景中修改鼠标左右不变. //#define _JBH_ADD_YOUNGMAN_PROTECT_MESSAGE // 2006.4.10 / 加载时青少年保护信息输出. //#define _JBH_MOD_CAMERA_INTERPORATION // 2006.4.15 / 鼠标旋转时,摄像机被保存到Hero后面,删除. //#define _JBH_ADD_NPC_SCALE // 2006.4.21 / 从NPC规模脚本中读取并处理. //#define _JBH_ADD_FIELD_AREA_INFO_MESSAGE // 2006.4.22 / 进入场景时添加区域名称信息. //#define _JBH_SPAWN_MONSTER_DIRECTION // 2006.4.26 / 赞助商设定特定怪物方向. //#define _JBH_ADD_TIRED_SYSTEM_DIRECTING // 2006.3. 9 / 演绎疲劳度系统 //#ifdef LAST_TEST_RELEASE // #define _SHOW_HEIM_IN_TESTLIVE_CASH_ITEM_SHOP //#endif #if defined ( _DEV_VER ) // 请不要处理注释!! // 就算不处理注释也不会显示LUA控制台. // 要想提高LUA控制台的话,客户端维护 // '请确认测试用例的使用方法. //#define _USE_LUA_SCRIPT #endif //_NA_007192_20140428_CLIENT_LUA_MACRO_SYSTEM // 激活lua //#define _USE_LUA_SCRIPT ////////////////////////////////////////////////////////////////////////// // // 一个游戏频道环操作 // ////////////////////////////////////////////////////////////////////////// #if defined(__KR000000_090128_CHANNELING__) // 03/26 - 频道环开启 #ifdef __NA001334_090420_SERVER_SELECT_FACILITY__ // 新的服务器选择功能<-优先应用于频道环后,适用于全部版本 // 使用服务器通用解密 #else #define _REMOVE_TO_SERVER_BUTTON_FOR_CHANNELING // 服务器选择和删除重新连接 #endif #undef _K2P_ADD_MOVE_TO_SERVER_BUTTON_001020 // 未定义角色选择窗口服务器选择按钮 #define _REMOVE_SERVER_LIST_CLOSE_BUTTON_FOR_CHANNELING // 删除服务器列表窗口的关闭按钮(REMOVE_TO_SERVER_BUTTON_FOR_CHANNELING中分离(09.04.28) ) #define _MOD_IDENTITY_NUM__FOR_CHANNELING // 身份证号码输入限制改为6位(7->6) #define _REMOVE_REGISTER_BUTTON_FOR_CHANNELING // 删除登录场景(服务器选择画面)中加入按钮 #if defined(_SUNGAME_DUMP_VER) || defined(_SUNGAME_VER) // #define _COMMON_CHANNELING_LOGIC_DEFINE #define _APPLY_KOREA_CHANNELING // 国内网络登录及网络明星应用,认证流程更新 #endif #endif ////////////////////////////////////////////////////////////////////////// // // 全球频道工作 // ////////////////////////////////////////////////////////////////////////// #if defined(__NA000000_GLOBAL_AUTH_PROCESS__) #undef _K2P_ADD_MOVE_TO_SERVER_BUTTON_001020 // 未定义角色选择窗口服务器选择按钮 #define _REMOVE_SERVER_LIST_CLOSE_BUTTON_FOR_CHANNELING // 删除服务器列表窗口的关闭按钮(REMOVE_TO_SERVER_BUTTON_FOR_CHANNELING中分离(09.04.28) ) #define _REMOVE_REGISTER_BUTTON_FOR_CHANNELING // 删除登录场景(服务器选择画面)中加入按钮 #if defined(_SUNGAME_DUMP_VER) || defined(_SUNGAME_VER) #define _COMMON_CHANNELING_LOGIC_DEFINE // 与通道逻辑相关的公共分支 #define _APPLY_KOREA_CHANNELING // 应用网络登录和网络明星,认证过程 #define _APPLY_GLOBAL_CHANNELING // 全球频道环认证流程作业-基于国内频道环作业的追加作业 #endif #endif ////////////////////////////////////////////////////////////////////////// // // 北美(NHN USA)频道环相关ACM初始化及报告模块工作 // ////////////////////////////////////////////////////////////////////////// #ifdef __NA000000_NORTH_AMERICA_HANGAME_CHANNELING__ #undef _K2P_ADD_MOVE_TO_SERVER_BUTTON_001020 // 未定义角色选择窗口服务器选择按钮 #define _REMOVE_SERVER_LIST_CLOSE_BUTTON_FOR_CHANNELING // 删除服务器列表窗口的关闭按钮(REMOVE_TO_SERVER_BUTTON_FOR_CHANNELING中分离(09.04.28) ) #define _REMOVE_REGISTER_BUTTON_FOR_CHANNELING // 删除登录场景(服务器选择画面)中加入按钮 #if defined(_SUNGAME_DUMP_VER) || defined(_SUNGAME_VER) #define _COMMON_CHANNELING_LOGIC_DEFINE // 与通道逻辑相关的公共分支 #define _NHN_USA_CHANNELING #endif #endif//__NA000000_NORTH_AMERICA_HANGAME_CHANNELING__ #ifdef _JP_0_20100723_GAMECHU_AUTHFLOW_ #undef _K2P_ADD_MOVE_TO_SERVER_BUTTON_001020 // 未定义角色选择窗口服务器选择按钮 #define _REMOVE_SERVER_LIST_CLOSE_BUTTON_FOR_CHANNELING // 删除服务器列表窗口的关闭按钮(REMOVE_TO_SERVER_BUTTON_FOR_CHANNELING中分离(09.04.28) ) #define _REMOVE_REGISTER_BUTTON_FOR_CHANNELING // 删除登录场景(服务器选择画面)中加入按钮 #define _JAPAN_GAMECHU_SUPPORT_DOUBLE_AUTH_FLOW_ // 为了测试开发网,支持两种认证方式(原计划删除,但由于开发网需要而适用) #define _APPLY_JAPAN_GAMECHU_CHANNELING // 日本游戏频道环工作 #endif //_JP_0_20100723_GAMECHU_AUTHFLOW_(日本游戏频道) #ifdef _RU_INGAMBA_AUTH_PROCESS #undef _K2P_ADD_MOVE_TO_SERVER_BUTTON_001020 // 未定义角色选择窗口服务器选择按钮 #define _REMOVE_SERVER_LIST_CLOSE_BUTTON_FOR_CHANNELING // 删除服务器列表窗口的关闭按钮(REMOVE_TO_SERVER_BUTTON_FOR_CHANNELING中分离(09.04.28) ) #define _REMOVE_REGISTER_BUTTON_FOR_CHANNELING // 删除登录场景(服务器选择画面)中加入按钮 #define _APPLY_RUSSIA_INGAMBA_CHANNELING // 俄罗斯印鉴巴频道工作 #endif //_RU_INGAMBA_AUTH_PROCESS #ifndef _DEBUG #if !defined( _CREATE_DUMP_ ) // Full Dump #define GGUO_CRASH_DUMP // Mini Dump #endif #endif #define AK_FOR_SUN // 机器翻译:2.0以后版本中需要调试 ////////////////////////////////////////////////////////////////////////// // 公会相关 ////////////////////////////////////////////////////////////////////////// /*($Delete$)*/#define __MOD_GUILDMEMBER_REFERENCE //08.01.15 GuildMain修改GuildMeber Reference错误的部分. //#define _ZONE_TEST_LOBBY_IN_SINGLE // 单版本测试处理 //#define _ADD_CHARGE_ITEM_RANDOM_OPTION // 2006. 11. 27 / 随机选项附加道具作业. ////////////////////////////////////////////////////////////////////////// //#define CAMERA_SMOOTH_DELETE // 2006.2.21 / 删除相机扫描的移动. //#define _JBH_MOD_MOUSE_MBUTTON_IN_BATTLESCENE // 4.17 / 点击鼠标M键时修改为相机方向. ////////////// [ ETC ] //////////////////////////////////////// #ifndef _CHINA #define _ADD_CHARGE_ITEM_AUTO_GET_HAIM #endif #ifdef _CHINA #define _JBH_ADD_ITEM_OVER_PLAYING_TIME_MESSAGE // 2006.3. 7 / [中国版获得用]防止中毒系统禁止获得物品信息. #endif // 测试中(未经验证的内容)//////////////////////////////////////////////////////////////// //#define _JSH_ADD__PLAY_MOVIE_BEFORE_MISSION_ // 2006.02.23 / 任务开始前输出视频(现在是测试阶段) //#define VIBRATE_CHARACTER // 2006. 2. 17 / 被击时角色颤抖 //#define HAIR_COLOR_VARIATION // 2006 .2 .17 / 改变头发颜色~ //#define MAPOBJECT_INSTANCING ////////////////////////////////////////////////////////////////////////// #ifdef _DEBUG //# define _CHECK_MEMORY_OVERRUN // 2006. 12. 27 / 在内存溢出的可疑部分填写相应的函数. #endif #ifdef _CHECK_MEMORY_OVERRUN #define CRT_CHECK_INTERRUPT() if ( !_CrtCheckMemory() ) _asm {int 3}; // 在怀疑的部分前后放入相应的函数. #else #define CRT_CHECK_INTERRUPT() #endif ////////////////////////////////////////////////////////////////////////// // 测试相关程序 #define INTERFACE_DIALOG_TEST FALSE //Wz Dialog渲染TURE的话Dialog一个一个Render. #define ITEM_COMPOSITE_APPLY TRUE // 物品组合 ////////////////////////////////////////////////////////////////////////// // 战斗相关 #define ATTACK_STAND_TIME 5000 #define TUTO_FIELD 20206 #define TUTO_MISSION 31 #define MAX_ITEM_INFO 1000 #define MAX_NPC_INFO 1000 #define MAX_SKILL_INFO 1000 #define MAX_SKILL_INVENTORY_STORE_INFO 1000 #define MAX_STYLE_INFO 1000 #define MAX_MAP_INFO 100 #define MAX_SHOP_INFO 1000 #define MAX_ITEM_COMPOSITE_INFO 100 #define MAX_ITEM_CRYSTALIZE_INFO 50 #define MAX_ITEM_COMPOSITE_NPC_INFO 50 #define MAX_SOCKET_DESC_INFO 50 #define MAX_GRAPHIC_INFO 10000 #define MAX_DIALOG 100 #define MAX_BGM 100 #define MAX_STYLE_QUICK_REGISTER 100 #define MAX_ITEM_SOUND_INFO 50 #define MAX_NPC_PORTAL_INFO 50 #define MAX_ENCHANT_INFO 100 #define MAX_SKILL_TEXT_INFO 1000 #define MAX_MISSION_MESSAGE_LENGTH 2048 #define MAX_MESSAGE_LENGTH 1024 #define MAX_HELP_INFO 100 #define MAX_QUEST_TEXT_INFO 50000 #define MAX_MISSION_REWARD_INFO 100 #define MAX_ATTACH_ITEM_INFO 1000 #define MAX_EXPVALUE_INFO 100 #define GROUP_ID_NONE 0 #define MAX_MISSION_TEXT_INFO 500 #ifdef _JAPAN #define MAX_SSN_COUNT 8 #else #ifdef _MOD_IDENTITY_NUM__FOR_CHANNELING #define MAX_SSN_COUNT 6 #else #define MAX_SSN_COUNT 7 #endif #endif #define MAX_ICON_IMAGE 50000 #define DISTANCE_NPC_MEET_EXT 0.70f // 无法与NPC见面时,DISTANC_NPC_MEET的70%距离的值 #define DISTANCE_TAB_TARGET_MONSTER 30.0f // 可通过TAB选择的怪物距离30米 #define DISTANCE_TRADING 6.0f // 只有在6米以内才能进行交易. #define DISTANCE_FOLLOW_PLAYER 3.0f // 跟随玩家角色的距离 #define NONE_ID 0xFFFFFFFF // 时间相关 #define SEC_PER_TICK 1000 // 一秒 #define MIN_PER_TICK SEC_PER_TICK * 60 // 一分钟 #define HOUR_PER_TICK MIN_PER_TICK * 60 // 一小时 #define DAY_PER_TICK HOUR_PER_TICK * 24 // 一天 #define NO_COOLTIME //关闭冷却时间校验 #define DELAY_LEAVE_FIELD_TICK 10*SEC_PER_TICK // 10秒 #define DEALY_SPAWN_VILLAGE 5*SEC_PER_TICK // 10秒 // PVP相关 #define MAX_TEAM 2 // font 相关 define // 与信息提示相关 #ifdef _SCJ_SETITEM_TOOLTIP_REFORM #define MAX_SLOTINFO_LINE 70 #else #define MAX_SLOTINFO_LINE 60 #endif //_SCJ_SETITEM_TOOLTIP_REFORM #define MAX_SLOTINFO_LENGTH 256 #define MAX_TEMP_VARIABLE 20 // 任务相关 #define MAX_QUEST_AREA_ID 1000 #define HEIGHT_GAP 0.3f // 颜色相关 #define DEFAULT_FONT_WZCOLOR WzColor_RGBA(165,165,165,255) #define TOOLTIP_FONT_WZCOLOR DEFAULT_FONT_WZCOLOR #define TOOLTIP_BG_WZCOLOR WzColor_RGBA(0,0,0,200) #define TOOLTIP_SIDE_LINE_WZCOLOR WzColor_RGBA(119,119,119,255) // 外角线 #define TOOLTIP_OPTION_NAME_WZCOLOR DEFAULT_FONT_WZCOLOR #define REVENGE_STONE 7243 #define SSQ_PORTAL 61009 //------------------------------------------------------------------------------ /** 游戏服务器列表的最大列表个数 (used in GameServerListParser) */ const int c_iMAX_GAMESERVERLIST_PARSER = 50; using namespace util; class Quest; // typedefs typedef DWORD RESOURCECODE; ///< 图形资源 typedef WORD KEYSETCODE; ///< DInput CODE typedef util::_tstring SUN_STRING; ///< typedef std::basic_string::size_type STR_INDEX; /// #ifdef _NA_007060_20140210_DIFFERENT_QUEST_WINDOW_OPENBUG_FIX typedef WORD QCODE; typedef std::list QUEST_LIST; typedef std::list::iterator QUEST_LIST_ITER; #else typedef std::list QUEST_LIST; typedef std::list::iterator QUEST_LIST_ITER; #endif //_NA_007060_20140210_DIFFERENT_QUEST_WINDOW_OPENBUG_FIX //--------------------------------------------------------------------------------------- // 动态窗口ID大小 //--------------------------------------------------------------------------------------- #define DYNAMIC_WINDOW_ID_MIN 1500 #define DYNAMIC_WINDOW_ID_MAX 1600 #define RANDOM_ITEM_CODE 65535 #define WzIdToConst(l1,l2,l3,l4) ((l1) * 0x01000000 + (l2) * 0x00010000 + (l3) * 0x00000100 + (l4) * 0x00000001) #define EFFECT_HIGHT 4000 #define EFFECT_MIDDLE 500 #define EFFECT_LOW 50 #endif // GAMEDEFINE_H