zc 2 лет назад
Родитель
Сommit
14fcac769e

+ 3 - 0
assets/scripts/OptionsCtr.ts

@@ -53,6 +53,9 @@ export class OptionsCtr extends Component {
                 })
                 })
                 .call(() => {
                 .call(() => {
                     if (index === 3) {
                     if (index === 3) {
+
+                        console.log("展示投票处理完成,处理下一个")
+
                         processCtr.doneProcessing()
                         processCtr.doneProcessing()
                     }
                     }
                     index++
                     index++

+ 11 - 0
assets/scripts/StoryPannelCtr.ts

@@ -34,6 +34,9 @@ export class StoryPannelCtr extends Component {
         "《隐形守护者》巧妙的结合了影视剧专业的演技造诣和电子游戏独有的交互体验,用电子游戏独有的表现手法,让玩家对当时那段充满色彩的历史有了新的认识。剧本没有模仿传统谍战剧,整个故事设定都非常符合当时那个年代,游戏中的每个人物都信手拈来展现出难以想象的独创性。游戏提供了传统游戏所不具备的沉浸式的互动体验、真正意义上的多样选择所导致的不同结局。更强调简化的互动性和操作性,以完全影视剧的镜头和剧本来叙事。游戏采用高成本但效果好的真人实拍的方式。对剧本细节的打磨和对当时人物环境的考究。通过演员精湛的演技给玩家营造出真实的体验。这款游戏用一种特殊的方式,为玩家讲述了一个精彩的抗战背景下的谍战故事。《隐形守护者》是一部国内首款创新性互动影像作品。全程采用真人拍摄,以定格图像辅之以影视化剪辑的手法。游戏还利用真人互动影像的优势为用户进行了一场行之有效的爱国主义教育。人实景拍摄,所有场景均为实拍影像,包括为了增加历史真实感而添加的影像史料。加上精良的影音演绎的方式大大的增加了代入感,选角上,演员颜值、演技双在线,除了主角肖途展现出贯穿全剧的人性弧光外,女性角色都演绎得各有特点。而极为考究的场景、道具和服装,也都彰显出制作组的用心和细致。而全程语音加持,以及根据剧情推进或激燃或紧张的配乐,让人有亲临谍战大片的错觉。看似是一个拥有四大结局,多达12个小时的故事情节,但从整个故事来看,它的主旋律其实很简单。"
         "《隐形守护者》巧妙的结合了影视剧专业的演技造诣和电子游戏独有的交互体验,用电子游戏独有的表现手法,让玩家对当时那段充满色彩的历史有了新的认识。剧本没有模仿传统谍战剧,整个故事设定都非常符合当时那个年代,游戏中的每个人物都信手拈来展现出难以想象的独创性。游戏提供了传统游戏所不具备的沉浸式的互动体验、真正意义上的多样选择所导致的不同结局。更强调简化的互动性和操作性,以完全影视剧的镜头和剧本来叙事。游戏采用高成本但效果好的真人实拍的方式。对剧本细节的打磨和对当时人物环境的考究。通过演员精湛的演技给玩家营造出真实的体验。这款游戏用一种特殊的方式,为玩家讲述了一个精彩的抗战背景下的谍战故事。《隐形守护者》是一部国内首款创新性互动影像作品。全程采用真人拍摄,以定格图像辅之以影视化剪辑的手法。游戏还利用真人互动影像的优势为用户进行了一场行之有效的爱国主义教育。人实景拍摄,所有场景均为实拍影像,包括为了增加历史真实感而添加的影像史料。加上精良的影音演绎的方式大大的增加了代入感,选角上,演员颜值、演技双在线,除了主角肖途展现出贯穿全剧的人性弧光外,女性角色都演绎得各有特点。而极为考究的场景、道具和服装,也都彰显出制作组的用心和细致。而全程语音加持,以及根据剧情推进或激燃或紧张的配乐,让人有亲临谍战大片的错觉。看似是一个拥有四大结局,多达12个小时的故事情节,但从整个故事来看,它的主旋律其实很简单。"
 
 
     updateStory(str: string) {
     updateStory(str: string) {
+
+        console.log("开始更新故事!!!!!!!!!!!!!")
+
         //this.fullText = str.replace(/[\r\n]+/g, ' ').trim();
         //this.fullText = str.replace(/[\r\n]+/g, ' ').trim();
         this.fullText = str.replace(/[\r\n]+/g, ' ').replace(/\s+/g, ' ').trim();
         this.fullText = str.replace(/[\r\n]+/g, ' ').replace(/\s+/g, ' ').trim();
         if (!this.node) {
         if (!this.node) {
@@ -41,6 +44,12 @@ export class StoryPannelCtr extends Component {
             return
             return
         }
         }
 
 
+        //初始化中间值
+        this.processedCharsCount = 0;
+        this.currentLine = "";
+        this.allLines = [];
+        this.audioSource.pause()
+
         this.currentText = ""
         this.currentText = ""
         this.label.string = this.currentText
         this.label.string = this.currentText
 
 
@@ -82,6 +91,8 @@ export class StoryPannelCtr extends Component {
             this.audioSource.pause()
             this.audioSource.pause()
             if(this.isOnProcess)
             if(this.isOnProcess)
             {
             {
+                console.log("展示剧情处理完成,处理下一个")
+
                 this.processCtr.doneProcessing()
                 this.processCtr.doneProcessing()
                 this.isOnProcess = false;
                 this.isOnProcess = false;
             }
             }

+ 28 - 5
assets/scripts/gameCtr.ts

@@ -388,6 +388,7 @@ export class GameCtr extends Component {
                 this.optionsAppearAction()
                 this.optionsAppearAction()
             }
             }
         } else {
         } else {
+            console.log('handleOptions处理完成处理下一个')
             this.processCtr.doneProcessing()
             this.processCtr.doneProcessing()
         }
         }
     }
     }
@@ -406,6 +407,8 @@ export class GameCtr extends Component {
                 this.optionsAppearAction()
                 this.optionsAppearAction()
             }
             }
         } else {
         } else {
+            console.log('handleVoteResul处理完成处理下一个')
+
             this.processCtr.doneProcessing()
             this.processCtr.doneProcessing()
         }
         }
     }
     }
@@ -427,23 +430,35 @@ export class GameCtr extends Component {
 
 
         this.roleNodes[data.data.name] = role
         this.roleNodes[data.data.name] = role
 
 
+        console.log('handleNewPlayer处理完成处理下一个')
+
         this.processCtr.doneProcessing()
         this.processCtr.doneProcessing()
     }
     }
 
 
     //单独处理死亡
     //单独处理死亡
     handleDeath(data: any) {
     handleDeath(data: any) {
         this.roleCtr.deathNodes = data.data
         this.roleCtr.deathNodes = data.data
+
         this.processCtr.doneProcessing()
         this.processCtr.doneProcessing()
     }
     }
 
 
     //处理收到state时间:如果realStart == false ,则更新游戏初始状态
     //处理收到state时间:如果realStart == false ,则更新游戏初始状态
     handleStateResul(data: any) {
     handleStateResul(data: any) {
         if (!this.realStart) {
         if (!this.realStart) {
+            console.log("处理开始前的status")
             this.historyInfo.push(data.data)
             this.historyInfo.push(data.data)
-
             this.updateGame(this.gameInfo, this.historyInfo)
             this.updateGame(this.gameInfo, this.historyInfo)
+
+            console.log('handleStateResul处理完成处理下一个')
+
+            this.processCtr.doneProcessing()
+
         }
         }
-        this.processCtr.doneProcessing()
+        else{
+            console.log("处理开始后的status完成,处理下一个")
+            this.processCtr.doneProcessing()
+        }
+
     }
     }
 
 
     //处理重置
     //处理重置
@@ -489,7 +504,10 @@ export class GameCtr extends Component {
             } else {
             } else {
                 this.optionsCtr.setOptions(this.optionsLabel)
                 this.optionsCtr.setOptions(this.optionsLabel)
             }
             }
+
+
             this.playShowOptionsOneShot()
             this.playShowOptionsOneShot()
+            console.log("展示选项处理完成,处理下一个")
             this.processCtr.doneProcessing()
             this.processCtr.doneProcessing()
             this.storyActionStatus = 1
             this.storyActionStatus = 1
         } else if (this.storyActionStatus === 1) {
         } else if (this.storyActionStatus === 1) {
@@ -499,6 +517,9 @@ export class GameCtr extends Component {
             console.log("selectedOptionNum:" + this.selectedOptionNum)
             console.log("selectedOptionNum:" + this.selectedOptionNum)
             this.optionsCtr.selectOption(this.selectedOptionNum + 1)
             this.optionsCtr.selectOption(this.selectedOptionNum + 1)
             this.playSelectedOneShot()
             this.playSelectedOneShot()
+
+            console.log("选中选项处理完成,处理下一个")
+
             this.processCtr.doneProcessing()
             this.processCtr.doneProcessing()
             this.storyActionStatus = 2
             this.storyActionStatus = 2
         } else if (this.storyActionStatus === 2) {
         } else if (this.storyActionStatus === 2) {
@@ -587,6 +608,8 @@ export class GameCtr extends Component {
                         .call(() => {
                         .call(() => {
                             this.storyActionStatus = 0
                             this.storyActionStatus = 0
                             this.optionsAppearAction()
                             this.optionsAppearAction()
+
+                            console.log("剧情上移处理完成,处理下一个")
                             this.processCtr.doneProcessing()
                             this.processCtr.doneProcessing()
                         })
                         })
                         .start()
                         .start()
@@ -641,9 +664,7 @@ export class GameCtr extends Component {
                 this.roleNodes[this.player[i].name] = role
                 this.roleNodes[this.player[i].name] = role
             }
             }
 
 
-            this.scheduleOnce(() => {
-                this.processCtr.doneProcessing()
-            }, 3)
+            
         } else {
         } else {
             throw new Error("gameInfo or historyInfo is null")
             throw new Error("gameInfo or historyInfo is null")
         }
         }
@@ -690,6 +711,8 @@ export class GameCtr extends Component {
         const differenceInDays = differenceInMilliseconds / (1000 * 60 * 60 * 24) + 1
         const differenceInDays = differenceInMilliseconds / (1000 * 60 * 60 * 24) + 1
         this.dayLabel.string = "第" + differenceInDays + "天"
         this.dayLabel.string = "第" + differenceInDays + "天"
 
 
+        console.log("更新日期处理完成,处理下一个")
+
         this.processCtr.doneProcessing()
         this.processCtr.doneProcessing()
     }
     }
 
 

+ 0 - 1
assets/scripts/socket/processCtr.ts

@@ -102,7 +102,6 @@ export class processCtr extends Component {
         console.log("Received State message:", data)
         console.log("Received State message:", data)
         // 在这里处理 "State" 类型的消息.
         // 在这里处理 "State" 类型的消息.
         this.gameCtr.handleStateResul(data);
         this.gameCtr.handleStateResul(data);
-        this.doneProcessing()
     }
     }
 
 
     private handleTimeMessage(data: any) {
     private handleTimeMessage(data: any) {