cyzhao 1 gadu atpakaļ
vecāks
revīzija
76ce053450

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 369 - 0
DevOps/flscfg/sqlback/jzhj2023_cfg20230925163735.sql


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 369 - 0
DevOps/flscfg/sqlback/jzhj2023_cfg20230925174950.sql


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

@@ -3,7 +3,7 @@
  // 由CodeGenerator创建。
  // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
  // author: gwang 
- // 日期: 2023-09-22 15:32:03
+ // 日期: 2023-09-25 16:37:34
 ////////////////////
 
 /**
@@ -189,22 +189,6 @@ class GameConfig {
         return self::get_hash_item('errmsg', $itemid);
     }
     /**
-    * 技能表
-    * @return \skills
-    */
-    public static function skills()
-    { 
-        static $a = null; 
-        return self::initValue($a, 'skills');
-    }
-    /**
-    * @return \sm_skills skills item数据 
-    */
-    public static function skills_getItem($itemid)
-    { 
-        return self::get_hash_item('skills', $itemid);
-    }
-    /**
     * 活动: 七日签到
     * @return \activity_day7
     */
@@ -269,22 +253,6 @@ class GameConfig {
         return self::get_hash_item('activity_levelgift', $itemid);
     }
     /**
-    * 技能表根据分类分组
-    * @return \skillTypeArr
-    */
-    public static function skillTypeArr()
-    { 
-        static $a = null; 
-        return self::initValue($a, 'skillTypeArr');
-    }
-    /**
-    * @return \sm_skillTypeArr skillTypeArr itemArray 
-    */
-    public static function skillTypeArr_getItemArray($key)
-    { 
-        return self::get_hash_item('skillTypeArr', $key);
-    }
-    /**
     * 章节表
     * @return \gate
     */
@@ -525,38 +493,6 @@ class GameConfig {
         return self::get_hash_item('equip_compose', $itemid);
     }
     /**
-    * 剧情表
-    * @return \plot
-    */
-    public static function plot()
-    { 
-        static $a = null; 
-        return self::initValue($a, 'plot');
-    }
-    /**
-    * @return \sm_plot plot item数据 
-    */
-    public static function plot_getItem($gateId, $stage)
-    { 
-        return self::get_hash_item('plot', "$gateId-$stage");
-    }
-    /**
-    * buff配置表
-    * @return \buff
-    */
-    public static function buff()
-    { 
-        static $a = null; 
-        return self::initValue($a, 'buff');
-    }
-    /**
-    * @return \sm_buff buff item数据 
-    */
-    public static function buff_getItem($itemid)
-    { 
-        return self::get_hash_item('buff', $itemid);
-    }
-    /**
     * 任务表
     * @return \task_step
     */
@@ -589,22 +525,6 @@ class GameConfig {
         return self::get_hash_item('taskcard', $itemid);
     }
     /**
-    * 怪物技能表
-    * @return \monster_Skill
-    */
-    public static function monster_Skill()
-    { 
-        static $a = null; 
-        return self::initValue($a, 'monster_Skill');
-    }
-    /**
-    * @return \sm_monster_Skill monster_Skill item数据 
-    */
-    public static function monster_Skill_getItem($itemid)
-    { 
-        return self::get_hash_item('monster_Skill', $itemid);
-    }
-    /**
     * 每日任务累计
     * @return \task_accumulate_daily
     */

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

@@ -3,7 +3,7 @@
  // 由CodeGenerator创建。
  // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
  // author: gwang 
- // 日期: 2023-09-18 10:46:34
+ // 日期: 2023-09-25 15:04:52
 ////////////////////
 
 

+ 11 - 6
Gameserver/App/model/Const/sm_gate.php

@@ -3,7 +3,7 @@
  // 由CodeGenerator创建。
  // Copyright (C) gwang (wanggangzero@qq.com), Loyalsoft@sjz Inc
  // author: gwang 
- // 日期: 2023-09-22 14:25:37
+ // 日期: 2023-09-25 14:31:21
 ////////////////////
 
 
@@ -13,11 +13,6 @@
 class sm_gate
 {
 
-    /**
-    * @var UInt32 用途未知!!请到数据库中添加字段注释。  
-    */
-    public $id;
-
     /**
     * @var Int32 关卡id: 
     *  命名规律:关卡类型(1主线2主线挑战)+关卡序号(最大999)+关卡风格(编号待定)+关卡类型(0四方连续1上下连续2固定)+关卡难度(1普通2困难3噩梦)
@@ -25,6 +20,11 @@ class sm_gate
     */
     public $gateId;
 
+    /**
+    * @var Int32 关卡类型: 1 主线剧情, 2 主线挑战关卡  
+    */
+    public $type;
+
     /**
     * @var String 名称  
     */
@@ -150,5 +150,10 @@ class sm_gate
     */
     public $xueluo_quick_num;
 
+    /**
+    * @var String 章节磁条Id  
+    */
+    public $gatePredicateId;
+
 }
 

+ 21 - 0
Gameserver/App/model/User/Enum_GateType.php

@@ -0,0 +1,21 @@
+<?php
+
+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 主线剧情, 
+     */
+    const MainStoryGate = 1;
+    
+    /**
+     * 2 主线挑战关卡
+     */
+    const MainChallengeGate = 2;
+}

+ 25 - 8
Gameserver/App/process/FightProc.php

@@ -330,24 +330,41 @@ class FightProc {
         list($resultType, $gateId, $gold, $curTs, $pickups) = req()->paras;
 
         $gateMo = GameConfig::gate_getItem($gateId);
-        my_Assert($gateMo != null, ErrCode::err_const_no);
+        my_Assert($gateMo != null, ErrCode::err_const_no);              
         my_Assert(StlUtil::dictHasProperty(ctx()->gates->GateList, $gateId), ErrCode::user_Gate_NoUserGateInfo);
         $gateInfo = ctx()->gates->GateList->$gateId;
         $ts = $gateInfo->MaxSeconds;
         if ($curTs >= $ts) {
             $gateInfo->MaxSeconds = $curTs;
         }
-
-        if ($resultType) {                                                        # 胜利
+                              
+        if ($resultType) {                                                      # 胜利
             if (ctx()->gates->GateList->$gateId->pass == 0) {
-                ctx()->gates->GateList->$gateId->pass = 1;
+                ctx()->gates->GateList->$gateId->pass = 1;                                             
             }
             StoreProc::AddMultiItemInStore($gateMo->reward_win);
-            if (Ins_GateInfo::GateTypeFromId($gateId) == 1) {                   # 是主线据情关卡
-                ctx()->gates->UnlockNextPlotGate();                             # 解锁下一剧情关卡
-            } else {                                                            # 其他类型, 比如挑战关卡
-                // 刷新挑战关卡记录
+            if(Ins_GateInfo::GateTypeFromId($gateId) == Enum_GateType::MainStoryGate){
+                ctx()->gates->UnlockNextPlotGate();    
+                $dic = GameConfig::gate();
+                $index = 0;
+                foreach ($dic as $id => $item) {
+                    if(Ints::Slice($gateId, 0, 1) == 2 && $item->challengeGateId == $gateId){
+                        $index += 1;
+                        $gate = new Ins_GateInfo();
+                        $gate->GateId = $id;                                             
+                        ctx()->gates->GateList->$id = $gate;
+                    }
+                    
+                    if($index >= 3){
+                        break;
+                    }
+                        
+                }
+                
+            } else {
+                
             }
+            
         } else {                                                                # 失败
             StoreProc::AddMultiItemInStore($gateMo->reward_fail);
         }

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels