Explorar o código

Merge branch 'dev' of http://ylsjtt.game7000.com:3000/YLSJ/jzhj2024server into dev

cyzhao hai 1 ano
pai
achega
bf85f2418b

+ 410 - 391
Gameserver/App/configs/GameConfig.php

@@ -1,38 +1,41 @@
 <?php
+
 ////////////////////
- // 由CodeGenerator创建。
- // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
- // author: gwang 
- // 日期: 2024-05-30 13:54:56
+// 由CodeGenerator创建。
+// Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
+// author: gwang
+// 日期: 2024-05-30 17:32:02
 ////////////////////
 
 namespace loyalsoft;
 
 /**
- * 常量配置数据 
+ * 常量配置数据
  */
 class GameConfig {
-// <editor-fold defaultstate="collapsed" desc="  基础代码 ">    
+// <editor-fold defaultstate="collapsed" desc="  基础代码 ">
+
     /**
-     * 是否启用codegen 
+     * 是否启用codegen
      */
-    private static function isCG()  {
-        return defined('CodeGen_Enabled') && CodeGen_Enabled; 
+    private static function isCG() {
+        return defined('CodeGen_Enabled') && CodeGen_Enabled;
     }
+
     /**
      * @var bool 分区是否使用独立的常量配置数据
      */
     private static $useZoneId = false;
+
     /**
      * 追加分区列表字符串
      * @return string
      */
-    private static function zoneid()
-    {
+    private static function zoneid() {
         global $zoneid;
         return self::$useZoneId ? "-zone$zoneid" : "";
     }
-	
+
     /**
      * @return ClientVersion
      */
@@ -84,609 +87,625 @@ class GameConfig {
         }
         return null;
     }
+
 // </editor-fold>
+
     /**
-    * 全局参数
-    * @return \globalsettings
-    */
-    public static function globalsettings()
-    { 
-        static $a = null; 
+     * 全局参数
+     * @return \globalsettings
+     */
+    public static function globalsettings() {
+        static $a = null;
         return self::initValue($a, 'globalsettings');
     }
+
     /**
-    * 停服计划
-    * @return \service_schedule
-    */
-    public static function service_schedule()
-    { 
-        static $a = null; 
+     * 停服计划
+     * @return \service_schedule
+     */
+    public static function service_schedule() {
+        static $a = null;
         return self::initValue($a, 'service_schedule');
     }
+
     /**
-    * @return \sm_service_schedule service_schedule item数据 
-    */
-    public static function service_schedule_getItem($itemid)
-    { 
+     * @return \sm_service_schedule service_schedule item数据
+     */
+    public static function service_schedule_getItem($itemid) {
         return self::get_hash_item('service_schedule', $itemid);
     }
+
     /**
-    * 道具表
-    * @return \item
-    */
-    public static function item()
-    { 
-        static $a = null; 
+     * 道具表
+     * @return \item
+     */
+    public static function item() {
+        static $a = null;
         return self::initValue($a, 'item');
     }
+
     /**
-    * @return \sm_item item item数据 
-    */
-    public static function item_getItem($itemid)
-    { 
+     * @return \sm_item item item数据
+     */
+    public static function item_getItem($itemid) {
         return self::get_hash_item('item', $itemid);
     }
+
     /**
-    * 系统邮件
-    * @return \sysmail
-    */
-    public static function sysmail()
-    { 
-        static $a = null; 
+     * 系统邮件
+     * @return \sysmail
+     */
+    public static function sysmail() {
+        static $a = null;
         return self::initValue($a, 'sysmail');
     }
+
     /**
-    * @return \sm_sysmail sysmail item数据 
-    */
-    public static function sysmail_getItem($itemid)
-    { 
+     * @return \sm_sysmail sysmail item数据
+     */
+    public static function sysmail_getItem($itemid) {
         return self::get_hash_item('sysmail', $itemid);
     }
+
     /**
-    * 客户端版本信息
-    * @return \clientVersionHistory
-    */
-    public static function clientVersionHistory()
-    { 
-        static $a = null; 
+     * 客户端版本信息
+     * @return \clientVersionHistory
+     */
+    public static function clientVersionHistory() {
+        static $a = null;
         return self::initValue($a, 'clientVersionHistory');
     }
+
     /**
-    * @return \sm_clientVersionHistory clientVersionHistory item数据 
-    */
-    public static function clientVersionHistory_getItem($itemid)
-    { 
+     * @return \sm_clientVersionHistory clientVersionHistory item数据
+     */
+    public static function clientVersionHistory_getItem($itemid) {
         return self::get_hash_item('clientVersionHistory', $itemid);
     }
+
     /**
-    * 错误信息表
-    * @return \errmsg
-    */
-    public static function errmsg()
-    { 
-        static $a = null; 
+     * 错误信息表
+     * @return \errmsg
+     */
+    public static function errmsg() {
+        static $a = null;
         return self::initValue($a, 'errmsg');
     }
+
     /**
-    * @return \sm_errmsg errmsg item数据 
-    */
-    public static function errmsg_getItem($itemid)
-    { 
+     * @return \sm_errmsg errmsg item数据
+     */
+    public static function errmsg_getItem($itemid) {
         return self::get_hash_item('errmsg', $itemid);
     }
+
     /**
-    * 战斗: 波次表
-    * @return \waves
-    */
-    public static function waves()
-    { 
-        static $a = null; 
+     * 战斗: 波次表
+     * @return \waves
+     */
+    public static function waves() {
+        static $a = null;
         return self::initValue($a, 'waves');
     }
+
     /**
-    * @return \sm_waves waves itemArray 
-    */
-    public static function waves_getItemArray($key)
-    { 
+     * @return \sm_waves waves itemArray
+     */
+    public static function waves_getItemArray($key) {
         return self::get_hash_item('waves', $key);
     }
+
     /**
-    * 活动: 七日签到
-    * @return \activity_day7
-    */
-    public static function activity_day7()
-    { 
-        static $a = null; 
+     * 活动: 七日签到
+     * @return \activity_day7
+     */
+    public static function activity_day7() {
+        static $a = null;
         return self::initValue($a, 'activity_day7');
     }
+
     /**
-    * @return \sm_activity_day7 activity_day7 item数据 
-    */
-    public static function activity_day7_getItem($itemid)
-    { 
+     * @return \sm_activity_day7 activity_day7 item数据
+     */
+    public static function activity_day7_getItem($itemid) {
         return self::get_hash_item('activity_day7', $itemid);
     }
+
     /**
-    * 章节表
-    * @return \gate
-    */
-    public static function gate()
-    { 
-        static $a = null; 
+     * 章节表
+     * @return \gate
+     */
+    public static function gate() {
+        static $a = null;
         return self::initValue($a, 'gate');
     }
+
     /**
-    * @return \sm_gate gate item数据 
-    */
-    public static function gate_getItem($itemid)
-    { 
+     * @return \sm_gate gate item数据
+     */
+    public static function gate_getItem($itemid) {
         return self::get_hash_item('gate', $itemid);
     }
+
     /**
-    * 角色
-    * @return \hero
-    */
-    public static function hero()
-    { 
-        static $a = null; 
+     * 角色
+     * @return \hero
+     */
+    public static function hero() {
+        static $a = null;
         return self::initValue($a, 'hero');
     }
+
     /**
-    * @return \sm_hero hero item数据 
-    */
-    public static function hero_getItem($itemid)
-    { 
+     * @return \sm_hero hero item数据
+     */
+    public static function hero_getItem($itemid) {
         return self::get_hash_item('hero', $itemid);
     }
+
     /**
-    * 装备表
-    * @return \equip
-    */
-    public static function equip()
-    { 
-        static $a = null; 
+     * 装备表
+     * @return \equip
+     */
+    public static function equip() {
+        static $a = null;
         return self::initValue($a, 'equip');
     }
+
     /**
-    * @return \sm_equip equip item数据 
-    */
-    public static function equip_getItem($itemid)
-    { 
+     * @return \sm_equip equip item数据
+     */
+    public static function equip_getItem($itemid) {
         return self::get_hash_item('equip', $itemid);
     }
+
     /**
-    * 装备升级表
-    * @return \equip_levelupgrade
-    */
-    public static function equip_levelupgrade()
-    { 
-        static $a = null; 
+     * 装备升级表
+     * @return \equip_levelupgrade
+     */
+    public static function equip_levelupgrade() {
+        static $a = null;
         return self::initValue($a, 'equip_levelupgrade');
     }
+
     /**
-    * @return \sm_equip_levelupgrade equip_levelupgrade item数据 
-    */
-    public static function equip_levelupgrade_getItem($itemid)
-    { 
+     * @return \sm_equip_levelupgrade equip_levelupgrade item数据
+     */
+    public static function equip_levelupgrade_getItem($itemid) {
         return self::get_hash_item('equip_levelupgrade', $itemid);
     }
+
     /**
-    * 章节礼包表
-    * @return \shop_gategift
-    */
-    public static function shop_gategift()
-    { 
-        static $a = null; 
+     * 章节礼包表
+     * @return \shop_gategift
+     */
+    public static function shop_gategift() {
+        static $a = null;
         return self::initValue($a, 'shop_gategift');
     }
+
     /**
-    * @return \sm_shop_gategift shop_gategift item数据 
-    */
-    public static function shop_gategift_getItem($itemid)
-    { 
+     * @return \sm_shop_gategift shop_gategift item数据
+     */
+    public static function shop_gategift_getItem($itemid) {
         return self::get_hash_item('shop_gategift', $itemid);
     }
+
     /**
-    * 每日商店
-    * @return \shop_daily
-    */
-    public static function shop_daily()
-    { 
-        static $a = null; 
+     * 每日商店
+     * @return \shop_daily
+     */
+    public static function shop_daily() {
+        static $a = null;
         return self::initValue($a, 'shop_daily');
     }
+
     /**
-    * @return \sm_shop_daily shop_daily item数据 
-    */
-    public static function shop_daily_getItem($itemid)
-    { 
+     * @return \sm_shop_daily shop_daily item数据
+     */
+    public static function shop_daily_getItem($itemid) {
         return self::get_hash_item('shop_daily', $itemid);
     }
+
     /**
-    * 钻石商店
-    * @return \shop_cash
-    */
-    public static function shop_cash()
-    { 
-        static $a = null; 
+     * 钻石商店
+     * @return \shop_cash
+     */
+    public static function shop_cash() {
+        static $a = null;
         return self::initValue($a, 'shop_cash');
     }
+
     /**
-    * @return \sm_shop_cash shop_cash item数据 
-    */
-    public static function shop_cash_getItem($itemid)
-    { 
+     * @return \sm_shop_cash shop_cash item数据
+     */
+    public static function shop_cash_getItem($itemid) {
         return self::get_hash_item('shop_cash', $itemid);
     }
+
     /**
-    * 金币商店
-    * @return \shop_gold
-    */
-    public static function shop_gold()
-    { 
-        static $a = null; 
+     * 金币商店
+     * @return \shop_gold
+     */
+    public static function shop_gold() {
+        static $a = null;
         return self::initValue($a, 'shop_gold');
     }
+
     /**
-    * @return \sm_shop_gold shop_gold item数据 
-    */
-    public static function shop_gold_getItem($itemid)
-    { 
+     * @return \sm_shop_gold shop_gold item数据
+     */
+    public static function shop_gold_getItem($itemid) {
         return self::get_hash_item('shop_gold', $itemid);
     }
+
     /**
-    * 商城供给表-应该是废弃了
-    * @return \shop_supply
-    */
-    public static function shop_supply()
-    { 
-        static $a = null; 
+     * 商城供给表-应该是废弃了
+     * @return \shop_supply
+     */
+    public static function shop_supply() {
+        static $a = null;
         return self::initValue($a, 'shop_supply');
     }
+
     /**
-    * @return \sm_shop_supply shop_supply item数据 
-    */
-    public static function shop_supply_getItem($itemid)
-    { 
+     * @return \sm_shop_supply shop_supply item数据
+     */
+    public static function shop_supply_getItem($itemid) {
         return self::get_hash_item('shop_supply', $itemid);
     }
+
     /**
-    * 词条配置表
-    * @return \predicate
-    */
-    public static function predicate()
-    { 
-        static $a = null; 
+     * 词条配置表
+     * @return \predicate
+     */
+    public static function predicate() {
+        static $a = null;
         return self::initValue($a, 'predicate');
     }
+
     /**
-    * @return \sm_predicate predicate item数据 
-    */
-    public static function predicate_getItem($itemid)
-    { 
+     * @return \sm_predicate predicate item数据
+     */
+    public static function predicate_getItem($itemid) {
         return self::get_hash_item('predicate', $itemid);
     }
+
     /**
-    * 商城军备
-    * @return \shop_junbei
-    */
-    public static function shop_junbei()
-    { 
-        static $a = null; 
+     * 商城军备
+     * @return \shop_junbei
+     */
+    public static function shop_junbei() {
+        static $a = null;
         return self::initValue($a, 'shop_junbei');
     }
+
     /**
-    * @return \sm_shop_junbei shop_junbei item数据 
-    */
-    public static function shop_junbei_getItem($itemid)
-    { 
+     * @return \sm_shop_junbei shop_junbei item数据
+     */
+    public static function shop_junbei_getItem($itemid) {
         return self::get_hash_item('shop_junbei', $itemid);
     }
+
     /**
-    * 进化表
-    * @return \evolve
-    */
-    public static function evolve()
-    { 
-        static $a = null; 
+     * 进化表
+     * @return \evolve
+     */
+    public static function evolve() {
+        static $a = null;
         return self::initValue($a, 'evolve');
     }
+
     /**
-    * @return \sm_evolve evolve item数据 
-    */
-    public static function evolve_getItem($itemid)
-    { 
+     * @return \sm_evolve evolve item数据
+     */
+    public static function evolve_getItem($itemid) {
         return self::get_hash_item('evolve', $itemid);
     }
+
     /**
-    * 7日签到累计
-    * @return \active_day7_accumulate
-    */
-    public static function active_day7_accumulate()
-    { 
-        static $a = null; 
+     * 7日签到累计
+     * @return \active_day7_accumulate
+     */
+    public static function active_day7_accumulate() {
+        static $a = null;
         return self::initValue($a, 'active_day7_accumulate');
     }
+
     /**
-    * @return \sm_active_day7_accumulate active_day7_accumulate item数据 
-    */
-    public static function active_day7_accumulate_getItem($itemid)
-    { 
+     * @return \sm_active_day7_accumulate active_day7_accumulate item数据
+     */
+    public static function active_day7_accumulate_getItem($itemid) {
         return self::get_hash_item('active_day7_accumulate', $itemid);
     }
+
     /**
-    * 宝石表
-    * @return \gem
-    */
-    public static function gem()
-    { 
-        static $a = null; 
+     * 宝石表
+     * @return \gem
+     */
+    public static function gem() {
+        static $a = null;
         return self::initValue($a, 'gem');
     }
+
     /**
-    * @return \sm_gem gem item数据 
-    */
-    public static function gem_getItem($itemid)
-    { 
+     * @return \sm_gem gem item数据
+     */
+    public static function gem_getItem($itemid) {
         return self::get_hash_item('gem', $itemid);
     }
+
     /**
-    * 秘宝表
-    * @return \gate_sbox
-    */
-    public static function gate_sbox()
-    { 
-        static $a = null; 
+     * 秘宝表
+     * @return \gate_sbox
+     */
+    public static function gate_sbox() {
+        static $a = null;
         return self::initValue($a, 'gate_sbox');
     }
+
     /**
-    * @return \sm_gate_sbox gate_sbox itemArray 
-    */
-    public static function gate_sbox_getItemArray($key)
-    { 
+     * @return \sm_gate_sbox gate_sbox itemArray
+     */
+    public static function gate_sbox_getItemArray($key) {
         return self::get_hash_item('gate_sbox', $key);
     }
+
     /**
-    * 最新的成就
-    * @return \achieve_new
-    */
-    public static function achieve_new()
-    { 
-        static $a = null; 
+     * 最新的成就
+     * @return \achieve_new
+     */
+    public static function achieve_new() {
+        static $a = null;
         return self::initValue($a, 'achieve_new');
     }
+
     /**
-    * @return \sm_achieve_new achieve_new item数据 
-    */
-    public static function achieve_new_getItem($itemid)
-    { 
+     * @return \sm_achieve_new achieve_new item数据
+     */
+    public static function achieve_new_getItem($itemid) {
         return self::get_hash_item('achieve_new', $itemid);
     }
+
     /**
-    * 人物属性
-    * @return \heroattr
-    */
-    public static function heroattr()
-    { 
-        static $a = null; 
+     * 人物属性
+     * @return \heroattr
+     */
+    public static function heroattr() {
+        static $a = null;
         return self::initValue($a, 'heroattr');
     }
+
     /**
-    * @return \sm_heroattr heroattr item数据 
-    */
-    public static function heroattr_getItem($itemid)
-    { 
+     * @return \sm_heroattr heroattr item数据
+     */
+    public static function heroattr_getItem($itemid) {
         return self::get_hash_item('heroattr', $itemid);
     }
+
     /**
-    * 剧情对话
-    * @return \plots
-    */
-    public static function plots()
-    { 
-        static $a = null; 
+     * 剧情对话
+     * @return \plots
+     */
+    public static function plots() {
+        static $a = null;
         return self::initValue($a, 'plots');
     }
+
     /**
-    * @return \sm_plots plots item数据 
-    */
-    public static function plots_getItem($itemid)
-    { 
+     * @return \sm_plots plots item数据
+     */
+    public static function plots_getItem($itemid) {
         return self::get_hash_item('plots', $itemid);
     }
+
     /**
-    * 商城宝箱表
-    * @return \shop_box
-    */
-    public static function shop_box()
-    { 
-        static $a = null; 
+     * 商城宝箱表
+     * @return \shop_box
+     */
+    public static function shop_box() {
+        static $a = null;
         return self::initValue($a, 'shop_box');
     }
+
     /**
-    * @return \sm_shop_box shop_box item数据 
-    */
-    public static function shop_box_getItem($itemid)
-    { 
+     * @return \sm_shop_box shop_box item数据
+     */
+    public static function shop_box_getItem($itemid) {
         return self::get_hash_item('shop_box', $itemid);
     }
+
     /**
-    * 商城月卡
-    * @return \shop_monthcard
-    */
-    public static function shop_monthcard()
-    { 
-        static $a = null; 
+     * 商城月卡
+     * @return \shop_monthcard
+     */
+    public static function shop_monthcard() {
+        static $a = null;
         return self::initValue($a, 'shop_monthcard');
     }
+
     /**
-    * @return \sm_shop_monthcard shop_monthcard item数据 
-    */
-    public static function shop_monthcard_getItem($itemid)
-    { 
+     * @return \sm_shop_monthcard shop_monthcard item数据
+     */
+    public static function shop_monthcard_getItem($itemid) {
         return self::get_hash_item('shop_monthcard', $itemid);
     }
+
     /**
-    * 7日狂欢活跃点奖励
-    * @return \activepointreward
-    */
-    public static function activepointreward()
-    { 
-        static $a = null; 
+     * 7日狂欢活跃点奖励
+     * @return \activepointreward
+     */
+    public static function activepointreward() {
+        static $a = null;
         return self::initValue($a, 'activepointreward');
     }
+
     /**
-    * @return \sm_activepointreward activepointreward item数据 
-    */
-    public static function activepointreward_getItem($type, $pointId)
-    { 
+     * @return \sm_activepointreward activepointreward item数据
+     */
+    public static function activepointreward_getItem($type, $pointId) {
         return self::get_hash_item('activepointreward', "$type-$pointId");
     }
+
     /**
-    * 活动任务
-    * @return \activeTask
-    */
-    public static function activeTask()
-    { 
-        static $a = null; 
+     * 活动任务
+     * @return \activeTask
+     */
+    public static function activeTask() {
+        static $a = null;
         return self::initValue($a, 'activeTask');
     }
+
     /**
-    * @return \sm_activeTask activeTask item数据 
-    */
-    public static function activeTask_getItem($itemid)
-    { 
+     * @return \sm_activeTask activeTask item数据
+     */
+    public static function activeTask_getItem($itemid) {
         return self::get_hash_item('activeTask', $itemid);
     }
+
     /**
-    * 活动任务根据类型的不同分开
-    * @return \activeTask_type
-    */
-    public static function activeTask_type()
-    { 
-        static $a = null; 
+     * 活动任务根据类型的不同分开
+     * @return \activeTask_type
+     */
+    public static function activeTask_type() {
+        static $a = null;
         return self::initValue($a, 'activeTask_type');
     }
+
     /**
-    * @return \sm_activeTask_type activeTask_type itemArray 
-    */
-    public static function activeTask_type_getItemArray($key)
-    { 
+     * @return \sm_activeTask_type activeTask_type itemArray
+     */
+    public static function activeTask_type_getItemArray($key) {
         return self::get_hash_item('activeTask_type', $key);
     }
+
     /**
-    * 活动
-    * @return \activity
-    */
-    public static function activity()
-    { 
-        static $a = null; 
+     * 活动
+     * @return \activity
+     */
+    public static function activity() {
+        static $a = null;
         return self::initValue($a, 'activity');
     }
+
     /**
-    * @return \sm_activity activity item数据 
-    */
-    public static function activity_getItem($itemid)
-    { 
+     * @return \sm_activity activity item数据
+     */
+    public static function activity_getItem($itemid) {
         return self::get_hash_item('activity', $itemid);
     }
+
     /**
-    * 公告
-    * @return \announcement
-    */
-    public static function announcement()
-    { 
-        static $a = null; 
+     * 公告
+     * @return \announcement
+     */
+    public static function announcement() {
+        static $a = null;
         return self::initValue($a, 'announcement');
     }
+
     /**
-    * @return \sm_announcement announcement item数据 
-    */
-    public static function announcement_getItem($itemid)
-    { 
+     * @return \sm_announcement announcement item数据
+     */
+    public static function announcement_getItem($itemid) {
         return self::get_hash_item('announcement', $itemid);
     }
+
     /**
-    * 战力荣誉榜信息
-    * @return \rank_fightpowerreward
-    */
-    public static function rank_fightpowerreward()
-    { 
-        static $a = null; 
+     * 战力荣誉榜信息
+     * @return \rank_fightpowerreward
+     */
+    public static function rank_fightpowerreward() {
+        static $a = null;
         return self::initValue($a, 'rank_fightpowerreward');
     }
+
     /**
-    * @return \sm_rank_fightpowerreward rank_fightpowerreward item数据 
-    */
-    public static function rank_fightpowerreward_getItem($itemid)
-    { 
+     * @return \sm_rank_fightpowerreward rank_fightpowerreward item数据
+     */
+    public static function rank_fightpowerreward_getItem($itemid) {
         return self::get_hash_item('rank_fightpowerreward', $itemid);
     }
+
     /**
-    * 主线荣誉榜信息
-    * @return \rank_passgatereward
-    */
-    public static function rank_passgatereward()
-    { 
-        static $a = null; 
+     * 主线荣誉榜信息
+     * @return \rank_passgatereward
+     */
+    public static function rank_passgatereward() {
+        static $a = null;
         return self::initValue($a, 'rank_passgatereward');
     }
+
     /**
-    * @return \sm_rank_passgatereward rank_passgatereward item数据 
-    */
-    public static function rank_passgatereward_getItem($itemid)
-    { 
+     * @return \sm_rank_passgatereward rank_passgatereward item数据
+     */
+    public static function rank_passgatereward_getItem($itemid) {
         return self::get_hash_item('rank_passgatereward', $itemid);
     }
+
     /**
-    * 玩家等级表
-    * @return \player_level
-    */
-    public static function player_level()
-    { 
-        static $a = null; 
+     * 玩家等级表
+     * @return \player_level
+     */
+    public static function player_level() {
+        static $a = null;
         return self::initValue($a, 'player_level');
     }
+
     /**
-    * @return \sm_player_level player_level item数据 
-    */
-    public static function player_level_getItem($itemid)
-    { 
+     * @return \sm_player_level player_level item数据
+     */
+    public static function player_level_getItem($itemid) {
         return self::get_hash_item('player_level', $itemid);
     }
+
     /**
-    *  辅助:主线剧情解锁
-    * @return \gate_unlock
-    */
-    public static function gate_unlock()
-    { 
-        static $a = null; 
+     *  辅助:主线剧情解锁
+     * @return \gate_unlock
+     */
+    public static function gate_unlock() {
+        static $a = null;
         return self::initValue($a, 'gate_unlock');
     }
+
     /**
-    * @return \sm_gate_unlock gate_unlock itemArray 
-    */
-    public static function gate_unlock_getItemArray($key)
-    { 
+     * @return \sm_gate_unlock gate_unlock itemArray
+     */
+    public static function gate_unlock_getItemArray($key) {
         return self::get_hash_item('gate_unlock', $key);
     }
+
+    /**
+     * 辅助: 波次直查
+     * @return \waveItem
+     */
+    public static function waveItem() {
+        static $a = null;
+        return self::initValue($a, 'waveItem');
+    }
+
+    /**
+     * @return \sm_waveItem waveItem item数据
+     */
+    public static function waveItem_getItem($gateId, $waveId) {
+        return self::get_hash_item('waveItem', "$gateId-$waveId");
+    }
+
     /**
-    * 当前版本(时间戳)
-    * @return \ver
-    */
-    public static function ver()
-    { 
-        static $a = null; 
+     * 当前版本(时间戳)
+     * @return \ver
+     */
+    public static function ver() {
+        static $a = null;
         return self::initValue($a, 'ver', false);
     }
+
     /**
-    * 客户端配置数据
-    * @return \client
-    */
-    public static function client()
-    { 
-        static $a = null; 
+     * 客户端配置数据
+     * @return \client
+     */
+    public static function client() {
+        static $a = null;
         return self::initValue($a, 'client', false);
     }
 }
-

+ 17 - 1
Gameserver/App/model/Const/GameConfig.php

@@ -3,7 +3,7 @@
  // 由CodeGenerator创建。
  // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
  // author: gwang 
- // 日期: 2024-05-30 13:54:56
+ // 日期: 2024-05-30 17:32:02
 ////////////////////
 
 /**
@@ -669,6 +669,22 @@ class GameConfig {
         return self::get_hash_item('gate_unlock', $key);
     }
     /**
+    * 辅助: 波次直查
+    * @return \waveItem
+    */
+    public static function waveItem()
+    { 
+        static $a = null; 
+        return self::initValue($a, 'waveItem');
+    }
+    /**
+    * @return \sm_waveItem waveItem item数据 
+    */
+    public static function waveItem_getItem($gateId, $waveId)
+    { 
+        return self::get_hash_item('waveItem', "$gateId-$waveId");
+    }
+    /**
     * 当前版本(时间戳)
     * @return \ver
     */

+ 0 - 50
Gameserver/App/model/Const/sm_gate_unlock.php

@@ -21,55 +21,5 @@ class sm_gate_unlock
     */
     public $gateId;
 
-    /**
-    * @var Int32 复活次数限制: 1(次)/0(无)/999(无限) default(0) 
-    */
-    public $reliveLimit;
-
-    /**
-    * @var Int32 金币补给宝箱金币基础值(0:关闭) default(100) 
-    */
-    public $goldBujiBox;
-
-    /**
-    * @var Int32 是否开放地图: 0 否, 1 是(默认) default(1) 
-    */
-    public $isOpenMap;
-
-    /**
-    * @var String 用途未知!!请到数据库中添加字段注释。  
-    */
-    public $icon;
-
-    /**
-    * @var Int32 通关X关解锁  
-    */
-    public $unlockGateId;
-
-    /**
-    * @var String 章节磁条Id  
-    */
-    public $gatePredicateId;
-
-    /**
-    * @var Int32 扫荡消耗体力 default(0) 
-    */
-    public $sweep_cost_tili;
-
-    /**
-    * @var Int32 扫荡次数 default(0) 
-    */
-    public $sweepNum;
-
-    /**
-    * @var String 挑战模式里奖励的描述信息  
-    */
-    public $layerPriceDesc;
-
-    /**
-    * @var String 挑战模式里说明描述信息  
-    */
-    public $layerRuleDesc;
-
 }
 

+ 92 - 0
Gameserver/App/model/Const/sm_waveItem.php

@@ -0,0 +1,92 @@
+<?php
+////////////////////
+ // 由CodeGenerator创建。
+ // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
+ // author: gwang 
+ // 日期: 2024-05-30 17:20:46
+////////////////////
+
+
+/**
+ * Static Model waveItem 辅助: 波次直查
+ */
+class sm_waveItem
+{
+
+    /**
+    * @var Int32 关卡id  
+    */
+    public $gateId;
+
+    /**
+    * @var Int32 自战场开始以来的分钟数  
+    */
+    public $waveId;
+
+    /**
+    * @var String 怪物id(池)列表(id:权重,id:权重...)最多16个怪物id  
+    */
+    public $monsterIds;
+
+    /**
+    * @var Int32 最小数量: n(数量) default(0) 
+    */
+    public $minnum;
+
+    /**
+    * @var Int32 最大数量 default(300) 
+    */
+    public $maxnum;
+
+    /**
+    * @var Int32 补充频率(单位:毫秒)  
+    */
+    public $frequency;
+
+    /**
+    * @var String 波次事件ids(逗号分隔)  
+    */
+    public $events;
+
+    /**
+    * @var Int32 bossID default(0) 
+    */
+    public $bossId;
+
+    /**
+    * @var Int32 第二个bossID default(0) 
+    */
+    public $bossId2;
+
+    /**
+    * @var String 通向下一波的条件(1:击杀数量(不限种类)满足xxx后跳转; 2:倒计时xx秒结束后跳转; 3: 击杀指定id的怪物后跳转, 4: 限定xx秒内击杀指定id的怪物(boss)后跳转)  
+    */
+    public $condition;
+
+    /**
+    * @var String 【挑战模式】本层奖励: (id,数量;id,数量;...)  
+    */
+    public $rewards;
+
+    /**
+    * @var String 通关宝石奖励(min-max;qual:weight,qual:weight,...)  
+    */
+    public $rewardGem;
+
+    /**
+    * @var Int32 通关金币奖励 default(0) 
+    */
+    public $rewardGold;
+
+    /**
+    * @var Int32 通关(指挥官)经验奖励 default(0) 
+    */
+    public $rewardExp;
+
+    /**
+    * @var String 通关图纸奖励(数量min-max)  
+    */
+    public $rewardTuZhi;
+
+}
+

+ 1 - 1
Gameserver/App/model/Const/sm_waves.php

@@ -3,7 +3,7 @@
  // 由CodeGenerator创建。
  // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
  // author: gwang 
- // 日期: 2024-05-30 10:57:10
+ // 日期: 2024-05-30 17:20:46
 ////////////////////
 
 

+ 10 - 4
Gameserver/App/model/User/Enum_GateType.php

@@ -2,20 +2,26 @@
 
 namespace loyalsoft;
 
-/* 
+/*
  * To change this license header, choose License Headers in Project Properties.
  * To change this template file, choose Tools | Templates
  * and open the template in the editor.
  */
+
 class Enum_GateType extends Enum {
-    
+
     /**
-     * 1 主线剧情, 
+     * 1 主线剧情,
      */
     const MainStoryGate = 1;
-    
+
     /**
      * 2 主线挑战关卡
      */
     const MainChallengeGate = 2;
+
+    /**
+     * 9 挑战模式
+     */
+    const ChallengeMode = 9;
 }

+ 21 - 1
Gameserver/App/model/User/Info_Gates.php

@@ -145,7 +145,7 @@ class Info_Gates extends Object_ext {
     }
 
     /**
-     * @return 解锁下一剧情关卡
+     * @return int 解锁下一剧情关卡
      */
     public function UnlockNextPlotGate() {
         $nextId = $this->CurrentGateId;
@@ -165,4 +165,24 @@ class Info_Gates extends Object_ext {
 
         return $nextId;
     }
+
+    /**
+     * @param int $gateId 通关的关卡id
+     */
+    public function UnlockMainChallengeGate($gateId) {
+        $dic = GameConfig::gate();
+        $index = 0;                                                   # 挑战关卡解锁逻辑. -gwang 2024年4月15日
+        foreach ($dic as $id => $item) {
+            if (Ins_GateInfo::GateTypeFromId($id) == Enum_GateType::MainChallengeGate #
+                    && $item->challengeGateId == $gateId) {
+                $index += 1;
+                $gate = new Ins_GateInfo();
+                $gate->GateId = $id;
+                ctx()->gates->GateList->$id = $gate;
+            }
+            if ($index >= 3) {                                                  # 最多3个难度
+                break;
+            }
+        }
+    }
 }

+ 87 - 47
Gameserver/App/process/FightProc.php

@@ -529,7 +529,8 @@ class FightProc {
      * @return type
      */
     public static function Settle() {
-        list($resultType, $gateId, $gold, $curTs, $pickups) = req()->paras;
+        list($resultType, $gateId, $gold, $curTs, $pickups,
+                $finalLayer, $finalHpPercent, $killMonsterNum, $killBossNum) = req()->paras;
         # 客户端需要增加参数: killmonserNum,killBosssNum, finalHpPercent(最终血量百分比)
         $gateMo = GameConfig::gate_getItem($gateId);
         my_Assert($gateMo != null, ErrCode::err_const_no);
@@ -542,49 +543,84 @@ class FightProc {
         if ($resultType) {                                                      # 胜利
             if (ctx()->gates->GateList->$gateId->pass == 0) {
                 ctx()->gates->GateList->$gateId->pass = 1;
-                TaskProc::Day7TaskReset($gateId);
+                TaskProc::Day7TaskReset($gateId);                               # 刷新七日任务
             }
-            TaskProc::OnPassGate_X($gateId);
-            StoreProc::AddMultiItemInStore($gateMo->reward_win);
+            TaskProc::OnPassGate_X($gateId);                                    # 刷新任务进度: 通关第X关
+
             if (Ins_GateInfo::GateTypeFromId($gateId) == Enum_GateType::MainStoryGate) {
-                ctx()->gates->UnlockNextPlotGate();
-                $dic = GameConfig::gate();
-                $index = 0;                                                   # 挑战关卡解锁逻辑. -gwang 2024年4月15日
-                foreach ($dic as $id => $item) {
-                    if (Ins_GateInfo::GateTypeFromId($id) == Enum_GateType::MainChallengeGate && $item->challengeGateId == $gateId) {
-                        $index += 1;
-                        $gate = new Ins_GateInfo();
-                        $gate->GateId = $id;
-                        ctx()->gates->GateList->$id = $gate;
-                    }
-                    if ($index >= 3) {
+                ctx()->gates()->UnlockNextPlotGate();                           # 解锁下一主线关卡
+//                ctx()->gates()->UnlockMainChallengeGate($gateId);              # 挑战关卡解锁逻辑. -gwang 2024年4月15日
+            } else {                                                            # 不是主线关卡, 暂时没有其他逻辑
+            }
+//            StoreProc::AddMultiItemInStore($gateMo->reward_win);                # 发放胜利奖励(2024.5.30 过期)
+        }
+//        else {                                                                # 失败
+////            StoreProc::AddMultiItemInStore($gateMo->reward_fail);               # 发放失败奖励(2024.5.30 过期)
+//        }
+
+        StoreProc::AddMultiItemInStore($pickups);                               # 战场拾取道具直接入背包
+        ctx()->base()->Add_Gold($gold);                                         # 战场拾取的金币直接入背包
+        //ctx()->base()->Add_Exp($exp);
+        $waveMo = GameConfig::waveItem_getItem($gateId, $finalLayer);
+        my_Assert(null != $waveMo, ErrCode::err_const_no);
+        ctx()->base()->Add_Exp($waveMo->rewardExp);                             # 指挥官经验
+        ctx()->base()->Add_Gold($waveMo->rewardGold);                           # 金币奖励
+        # 图纸奖励: 数量min-max, 部位随机
+        if (str_len($waveMo->rewardTuZhi) > 0 && str_contains($waveMo->rewardTuZhi, '-')) {
+            list($tz_min, $tz_max) = str_split($waveMo->rewardTuZhi);           # 图纸数量
+            $tz_n = rand($tz_min, $tz_max);
+            # 图纸部位数据源 1001, 1002, 1003, 1004, 1005, 1006
+            for ($i = 0; $i < $tz_n; $i++) {
+                $id = 1000 + rand(1, 6);
+                StoreProc::AddMultiItemInStore("$id,1");                        # 获得图纸
+                $pickups .= ";$id,1";
+            }
+        }
+        # 宝石奖励: 数量min-max;品质:权重,品质:权重...
+        if (strlen($waveMo->rewardGem) > 0) {
+            list($gs_num, $gs_props) = str_split($waveMo->rewardGem, ';');
+            list($gem_min, $gem_max) = str_split($gs_num);                      # 宝石数量
+            $gem_n = rand($gem_min, $gem_max);
+            $arr = str_split($gs_props, ",");
+            $pool = array();
+            $n = 0;
+            foreach ($arr as $str) {
+                list($qual, $props) = str_split($str, ':');
+                $pool[] = array('q' => $qual, 'p' => $props);
+                $n += $props;
+            }
+            for ($i = 0; $i < $gem_n; $i++) {                                   # 随机n块宝石
+                $r = rand($n);                                                  # 投色子
+                $l = 0;
+                foreach ($pool as $item) {
+                    if ($r < ($l + $item->p)) {
+                        $gemId = $item->q * 10000 + rand(6) * 1000;
+                        StoreProc::PutGemInStore($gemId);                       # 发放宝石并退出本次投色子
+                        $pickups .= ";$gemId,1";
                         break;
                     }
+                    $l += $item->p;                                             # 累计到下一段
                 }
-            } else {
-
             }
-        } else {                                                                # 失败
-            StoreProc::AddMultiItemInStore($gateMo->reward_fail);
         }
 
-        StoreProc::AddMultiItemInStore($pickups);                               # 战场拾取道具
-        ctx()->baseInfo->Add_Gold($gold);
-        //ctx()->baseInfo->Add_Exp($exp);
-
-        if (Ins_GateInfo::GateTypeFromId($gateId) == Enum_GateType::MainStoryGate) {
+        if (Ins_GateInfo::GateTypeFromId($gateId) == Enum_GateType::MainStoryGate) {            # 主线剧情,
             TaskProc::OnFightNumMainGate();
-        } else if (Ins_GateInfo::GateTypeFromId($gateId) == Enum_GateType::MainChallengeGate) {
+        } else if (Ins_GateInfo::GateTypeFromId($gateId) == Enum_GateType::MainChallengeGate) { # 主线剧情对应的难度挑战
             TaskProc::OnFightNumChallengeGate();
         }
-        TaskProc::OnKillCommonNumMonster(1000);
-        TaskProc::OnKillleaderNumMonster(500);
+        TaskProc::OnKillCommonNumMonster($killMonsterNum);
+        TaskProc::OnKillleaderNumMonster($killBossNum);
 
         UserProc::updateUserInfo();
         $ret = array(
             'gates' => ctx()->gates,
             'store' => ctx()->store,
             'task' => ctx()->task,
+            'baseInfo' => ctx()->base(),
+            'gold' => $gold + $waveMo->rewardGold,
+            'exp' => $waveMo->rewardExp,
+            'rewardStr' => $pickups
         );
         return Resp::ok($ret);
     }
@@ -654,6 +690,8 @@ class FightProc {
         return Resp::ok($ret);
     }
 
+// <editor-fold defaultstate="collapsed" desc="排行榜">
+
     /**
      * 参与主线关卡排行榜
      * @param type $gateIndex
@@ -826,9 +864,9 @@ class FightProc {
             $ins_rank->name = $userInfo->baseInfo->name;
             $ins_rank->headImg = $userInfo->baseInfo->headImg;
             $ins_rank->score = $gateId;
-            $retArr->$gateId= $ins_rank;
+            $retArr->$gateId = $ins_rank;
         }
-        
+
         UserProc::updateUserInfo();
         $ret = array(
             'rankReward' => $retArr,
@@ -854,10 +892,10 @@ class FightProc {
             $ins_rank->name = $userInfo->baseInfo->name;
             $ins_rank->headImg = $userInfo->baseInfo->headImg;
             $ins_rank->score = $fightPower;
-            $retArr->$fightPower= $ins_rank;
+            $retArr->$fightPower = $ins_rank;
         }
-        
-        
+
+
         UserProc::updateUserInfo();
         $ret = array(
             'rankReward' => $retArr,
@@ -870,44 +908,46 @@ class FightProc {
      * @return type
      */
     public static function ReceiveRankReward_MainGate() {
-        list($gateId) = req()->paras;               
-        
+        list($gateId) = req()->paras;
+
         my_Assert(!in_array($gateId, ctx()->privateState->rankReward_drawed_MainGate), ErrCode::rankReward_HasReceive);
-        
+
         $mo = GameConfig::rank_passgatereward_getItem($gateId);
         my_Assert($mo != null, ErrCode::err_const_no);
-                       
-        $memKey = MemKey_GameRun::RankReward_MainGateIndex_Zone_hash(req()->zoneid);              
-        if(gMem()->hexists($memKey,$gateId)){
+
+        $memKey = MemKey_GameRun::RankReward_MainGateIndex_Zone_hash(req()->zoneid);
+        if (gMem()->hexists($memKey, $gateId)) {
             StoreProc::AddMultiItemInStore($mo->reward);
             ctx()->privateState->rankReward_drawed_MainGate[] = $gateId;
         }
-        
+
         UserProc::updateUserInfo();
         $ret = array();
         return Resp::ok($ret);
     }
-    
+
     /**
      * 6816 领取战力荣誉榜奖励
      * @return type
      */
     public static function ReceiveRankReward_FightPower() {
-        list($fightPower) = req()->paras;               
-        
+        list($fightPower) = req()->paras;
+
         my_Assert(!in_array($fightPower, ctx()->privateState->rankReward_drawed_fightPower), ErrCode::rankReward_HasReceive);
-        
+
         $mo = GameConfig::rank_passgatereward_getItem($fightPower);
         my_Assert($mo != null, ErrCode::err_const_no);
-                       
-        $memKey = MemKey_GameRun::RankReward_FightPower_Zone_hash(req()->zoneid);              
-        if(gMem()->hexists($memKey,$fightPower)){
+
+        $memKey = MemKey_GameRun::RankReward_FightPower_Zone_hash(req()->zoneid);
+        if (gMem()->hexists($memKey, $fightPower)) {
             StoreProc::AddMultiItemInStore($mo->reward);
             ctx()->privateState->rankReward_drawed_fightPower[] = $fightPower;
         }
-        
+
         UserProc::updateUserInfo();
         $ret = array();
         return Resp::ok($ret);
     }
+
+    // </editor-fold>
 }