NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/Debug/SROptions.GM.cs

233 lines
5.8 KiB
C#
Raw Normal View History

2024-01-22 15:38:06 +08:00
using cfg.ActorCfg;
using Code.Scripts.Gameplay.Game;
2024-01-19 17:05:59 +08:00
using Cysharp.Threading.Tasks;
2024-01-22 15:38:06 +08:00
using Framework;
using Gameplay;
2023-10-19 15:00:19 +08:00
using Gameplay.Character;
2024-01-19 17:05:59 +08:00
using Gameplay.Net;
2023-12-13 16:20:41 +08:00
using Gameplay.Unit;
using Gameplay.Unit.Data;
2024-01-19 17:05:59 +08:00
using System.ComponentModel;
2024-01-22 15:38:06 +08:00
using System.Drawing.Text;
2024-10-18 14:53:50 +08:00
using Gameplay.Common;
2024-04-15 12:48:19 +08:00
using YooAsset;
2023-10-19 15:00:19 +08:00
public partial class SROptions
{
2023-12-13 15:14:52 +08:00
2023-10-19 15:00:19 +08:00
private bool _useFullCharacters;
private bool _useTestTeam;
2023-12-13 15:14:52 +08:00
2023-10-19 15:00:19 +08:00
[Category("GM"), DisplayName("使用全角色")]
public bool UseFullCharacters
{
get { return _useFullCharacters; }
2023-12-13 15:14:52 +08:00
set { _useFullCharacters = value; }
2023-10-19 15:00:19 +08:00
}
[Category("GM"), DisplayName("使用测试编队")]
public bool UseTestTeam
{
get { return _useTestTeam; }
set { _useTestTeam = value; }
}
2024-01-11 14:12:39 +08:00
[Category("GM"), DisplayName("添加所有角色")]
public void ForceAddAllRoles()
{
CharacterDataInfoManager.Instance.AddAllCfgCharacter();
VehicleCultivateDataManager.Instance.AddAllCfgVehicles();
}
2023-12-13 15:14:52 +08:00
2024-10-18 14:53:50 +08:00
[Category("GM"), DisplayName("己方血量无敌")]
2023-10-19 15:00:19 +08:00
public bool SelfUnbeatable
{
2024-10-18 14:53:50 +08:00
get { return CodeDefine.Fight.HP_NOCOST; }
set { CodeDefine.Fight.HP_NOCOST = value; }
2023-10-19 15:00:19 +08:00
}
2024-10-18 14:53:50 +08:00
[Category("GM"), DisplayName("敌方血量无敌")]
2023-10-19 15:00:19 +08:00
public bool EnemyUnbeatable
{
2024-10-18 14:53:50 +08:00
get { return CodeDefine.Fight.HP_NOCOST_ENEMY; }
set { CodeDefine.Fight.HP_NOCOST_ENEMY = value; }
2023-10-19 15:00:19 +08:00
}
2024-10-18 14:53:50 +08:00
[Category("GM"), DisplayName("己方士气无敌")]
public bool SelfMoraleUnbeatable
{
get { return CodeDefine.Fight.MORALE_NOCOST; }
set { CodeDefine.Fight.MORALE_NOCOST = value; }
}
[Category("GM"), DisplayName("敌方士气无敌")]
public bool EnemyMoraleUnbeatable
{
get { return CodeDefine.Fight.MORALE_NOCOST_ENEMY; }
set { CodeDefine.Fight.MORALE_NOCOST_ENEMY = value; }
}
2023-10-19 15:00:19 +08:00
[Category("GM"), DisplayName("机器人数据初始化")]
public void SendRobotTestInit()
{
2023-12-13 15:14:52 +08:00
if (UnityEngine.Application.isPlaying)
2023-10-19 15:00:19 +08:00
{
Gameplay.Net.NetHelper.RobotTestInit();
}
}
2024-07-04 19:59:20 +08:00
[Category("GM"), DisplayName("测试剧情ID")]
public string testStoryId
{
get;
set;
} = "0_1_1";
[Category("GM"), DisplayName("进入测试剧情")]
2023-10-19 15:00:19 +08:00
public void EnterStory()
{
2024-07-04 19:59:20 +08:00
GameStateManager.Instance.ChangeState(new GameStateStory(testStoryId));
2023-10-19 15:00:19 +08:00
}
2023-12-13 15:14:52 +08:00
2023-10-19 15:00:19 +08:00
private string gc;
[Category("礼包兑换")]
2023-12-13 15:14:52 +08:00
public string GiftCode
{
get { return gc; }
set { gc = value; }
}
2023-10-19 15:00:19 +08:00
[Category("礼包兑换")]
public void DoGiftCode()
{
2023-12-13 15:14:52 +08:00
if (UnityEngine.Application.isPlaying)
2023-10-19 15:00:19 +08:00
{
Gameplay.Net.NetHelper.GiftCode(GiftCode);
}
}
2023-11-29 13:02:18 +08:00
[Category("屏幕适配"), DisplayName("显示UI适配安全区域")]
public bool IsShowScreenSafeArea
{
2023-12-13 15:14:52 +08:00
get { return DebugScreen.Instance.IsShowSafeArea; }
set
{
DebugScreen.Instance.IsShowSafeArea = value;
DebugScreen.Instance.DebugChangeShowAreaState();
}
}
2023-12-13 15:14:52 +08:00
[Category("角色语音开关"), DisplayName("开启角色语音")]
public bool IsOpenSpeakVoice
{
get { return AudioManager.Instance.GlobalIsSpeakOpen; }
set { AudioManager.Instance.GlobalIsSpeakOpen = value; }
}
2024-01-22 15:38:06 +08:00
2024-01-19 17:05:59 +08:00
private int _itemId;
[Category("GM增加物品"), DisplayName("物品ID")]
public int ItemId
{
get { return _itemId; }
set
{
if (_itemId.Equals(value)) return;
2024-01-22 15:38:06 +08:00
SetItemId(value);
2024-01-19 17:05:59 +08:00
_itemId = value;
}
}
2024-01-22 15:38:06 +08:00
private void SetItemId(int id)
{
DataItem dataItem = TableManager.Instance.Tables.Item.Get(id);
if ( dataItem==null)
{
SRDebug.Instance.ShowBugReportSheet(descriptionContent: "此ID不在item表里查一下是不是填错了");
return;
}
_itemId = id;
}
2024-01-19 17:05:59 +08:00
private int _itemsCount=1;
[Category("GM增加物品"), DisplayName("物品个数")]
public int ItemsCount
{
get { return _itemsCount; }
set
{
if (_itemsCount.Equals(value)) return;
_itemsCount = value;
}
}
private string GMToken = "phxh666";
[Category("GM增加物品"), DisplayName("增加指定物品")]
public async void AddItem()
{
if(_itemsCount==0)
{
return;
}
2024-01-22 15:38:06 +08:00
2024-01-19 17:05:59 +08:00
string url = GetURL(GMToken, GetIp(), Actor.Instance.Base.GetProp(NLDPB.ActorProp.ActorId).ToString());
var request = UnityEngine.Networking.UnityWebRequest.Get(url);
await request.SendWebRequest();
//DebugUtil.LogError("gm新错" + request.downloadHandler.text);
}
2024-05-22 15:44:31 +08:00
[Category("IAP客户端验证"), DisplayName("客户端验证")]
public bool ClientVerify
{
2024-06-06 15:44:06 +08:00
get { return IAPManager.Instance.ClientVerify; }
set { IAPManager.Instance.ClientVerify = value; }
2024-05-22 15:44:31 +08:00
}
2024-05-27 19:37:13 +08:00
[Category("IAP客户端验证"), DisplayName("初始化IAP")]
public void InitIAP()
{
2024-06-06 15:44:06 +08:00
IAPManager.Instance.ReLoad();
2024-05-27 19:37:13 +08:00
}
2024-06-11 15:58:47 +08:00
[Category("IAP客户端验证"), DisplayName("完成所有交易")]
public void ConfirmPending()
{
IAPManager.Instance.ConfirmPending();
}
2024-01-19 17:05:59 +08:00
2024-05-22 17:21:54 +08:00
[Category("删除本地缓存"), DisplayName("删除本地缓存数据")]
public void DeleteData()
{
StorageMgr.Instance.DeleteSaveData();
}
2024-01-19 17:05:59 +08:00
private string GetURL(string token, string ip, string actor)
{
string param = "";
if (_itemId <= 0 || _itemsCount <= 0)
return null;
param = $"{_itemId},{_itemsCount}";
return $"http://{ip}/gm?actor_id={actor}&command=AddItem&gm_token={token}&param={param}";
}
private string GetIp()
{
var serverInfo = AppConfig.Instance.GetCurrent();
return serverInfo.addrs[0].ip + ":8080";
}
2023-10-19 15:00:19 +08:00
}