test(upserver): 归档存档迁移与玩法闭环回归工具
This commit is contained in:
56
CodexOutput/upserver/KVFishingRewardTests/PanelSlice.cs.txt
Normal file
56
CodexOutput/upserver/KVFishingRewardTests/PanelSlice.cs.txt
Normal file
@@ -0,0 +1,56 @@
|
||||
using System;using System.Threading.Tasks;
|
||||
public class ActualPanel {
|
||||
game.PlayerDataStorage.PlayerKVGameplayLoop.FishingRewardAction kvReward; Func<Task> kvPresentation;
|
||||
public bool isActiveAndEnabled=true; public Canvas canvasGroup=new(); public Fish playerFishData=new();public Player playerData=new(); int fishID=7;public int Applied;
|
||||
bool KVRewardViewCurrent()=>this!=null && isActiveAndEnabled && game.PlayerDataStorage.PlayerKVGameplayLoop.RewardPanelCurrent(kvReward,this);
|
||||
public Button playButton=new();public bool NonKvOnly;public int HomeClicks;
|
||||
public void StartTail()
|
||||
{
|
||||
playButton.onClick.AddListener(OnClickInHome);
|
||||
#if UNITY_EDITOR && !SERVICE_HOST
|
||||
if(!game.PlayerDataStorage.PlayerKVGameplayLoop.Enabled)
|
||||
#endif
|
||||
{
|
||||
NonKvOnly=true;
|
||||
}
|
||||
OnShow();
|
||||
}
|
||||
void OnClickInHome()=>HomeClicks++;
|
||||
void OnShowCore(){Applied++;}public void Run()=>OnShow();
|
||||
void OnShow()
|
||||
{
|
||||
#if UNITY_EDITOR && !SERVICE_HOST
|
||||
if(game.PlayerDataStorage.PlayerKVGameplayLoop.Enabled)
|
||||
{
|
||||
try
|
||||
{
|
||||
var bound=game.PlayerDataStorage.PlayerKVGameplayLoop.BindRewardPanel(this);
|
||||
if(bound==null) return;
|
||||
kvReward=bound;
|
||||
game.PlayerDataStorage.PlayerKVEditResult primary;
|
||||
using(game.PlayerDataStorage.PlayerKVGameplayLoop.BeginRewardSegment("reward"))
|
||||
{
|
||||
OnShowCore();
|
||||
playerFishData.SaveCaughtFishForKVLoop(fishID);
|
||||
primary=playerData.SaveFishingRewardForKVLoop();
|
||||
}
|
||||
_=ConfirmKVRewardAsync(primary);
|
||||
}
|
||||
catch(System.Exception e) { game.PlayerDataStorage.PlayerKVGameplayLoop.Fault(e.Message); }
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
OnShowCore();
|
||||
}
|
||||
async System.Threading.Tasks.Task ConfirmKVRewardAsync(game.PlayerDataStorage.PlayerKVEditResult primary)
|
||||
{
|
||||
try
|
||||
{
|
||||
await game.PlayerDataStorage.PlayerKVGameplayLoop.ConfirmRewardAsync(kvReward,primary);
|
||||
if(!KVRewardViewCurrent()) return;
|
||||
game.PlayerDataStorage.PlayerKVGameplayLoop.PresentReward(kvReward,()=>{canvasGroup.alpha=1;canvasGroup.blocksRaycasts=true;canvasGroup.interactable=true;});
|
||||
if(kvPresentation!=null) await kvPresentation();
|
||||
}
|
||||
catch(System.Exception e) { game.PlayerDataStorage.PlayerKVGameplayLoop.Fault(e.Message); }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user