指挥官技能升级对接服务器新协议

main
yurui 2024-03-21 15:29:38 +08:00
parent 4290c13547
commit a5b2b9805e
10 changed files with 363 additions and 128 deletions

View File

@ -8501,8 +8501,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 0, y: 0.5}
m_AnchoredPosition: {x: 5, y: 333}
m_SizeDelta: {x: 0, y: 0}
m_AnchoredPosition: {x: 5, y: -114}
m_SizeDelta: {x: 505, y: 900}
m_Pivot: {x: 0, y: 0.5}
--- !u!114 &85554148978965730
MonoBehaviour:
@ -13592,7 +13592,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!224 &3997610456769359836
RectTransform:
m_ObjectHideFlags: 0

View File

@ -178,11 +178,12 @@ namespace Gameplay.Net
/// 升级指挥官技能
/// </summary>
/// <param name="nSkillID"></param>
public static void PlayerSkillUpgrade(uint nSkillID)
public static void PlayerSkillUpgrade(uint nSkillID, uint toLevel)
{
MSG_Clt_G_PlayerSkillUpgrade msg =
NetManager.Instance.GetMessage(MSGID.CltGPlayerSkillUpgrade) as MSG_Clt_G_PlayerSkillUpgrade;
msg.mPB.SkillId = nSkillID;
msg.mPB.Level = toLevel;
NetManager.Instance.mClient.SendMessage(msg);
}

View File

@ -110,44 +110,45 @@ namespace NLDPB {
"ZXgYAiABKA0SDQoFY291bnQYAyABKA0iKwoOTVNHX1NraWxsTGV2ZWwSCgoC",
"aWQYASABKA0SDQoFbGV2ZWwYAiABKA0iTwoWR19DbHRfQWN0b3JQbGF5ZXJT",
"a2lsbBINCgVjbGVhchgBIAEoCBImCgZza2lsbHMYAiADKAsyFi5OTERfUEIu",
"TVNHX1NraWxsTGV2ZWwiLAoYQ2x0X0dfUGxheWVyU2tpbGxVcGdyYWRlEhAK",
"CHNraWxsX2lkGAEgASgNIhEKD01TR19QdnBUZWFtRGF0YSJZChpDbHRfR19T",
"ZXREZWZlbmNlVGVhbUZvclB2cBIUCgxjaGFyYWN0ZXJfaWQYASADKA0SEgoK",
"dmVoaWNsZV9pZBgCIAEoDRIRCgl0ZWFtX2RhdGEYAyABKAwigAEKEk1TR19Q",
"dnBEZWZlbmNlRGF0YRItCgpjaGFyYWN0ZXJzGAEgAygLMhkuTkxEX1BCLk1T",
"R19DaGFyYWN0ZXJJbmZvEigKB3ZlaGljbGUYAiABKAsyFy5OTERfUEIuTVNH",
"X1ZlaGljbGVJbmZvEhEKCXRlYW1fZGF0YRgDIAEoDCJmCgxNU0dfUHZwQWN0",
"b3ISEAoIYWN0b3JfaWQYASABKA0SEAoIbmlja25hbWUYAiABKAkSDQoFc29j",
"cmUYAyABKA0SDQoFb3JkZXIYBCABKA0SFAoMZGVmZW5jZV9kYXRhGAUgASgM",
"IhcKFUNsdF9NZ19QdnBJbmZvcm1hdGlvbiJaChRHX0NsdF9QdnBJbmZvcm1h",
"dGlvbhINCgVzY29yZRgBIAEoDRINCgVvcmRlchgCIAEoDRIkCgZyaXZhbHMY",
"AyADKAsyFC5OTERfUEIuTVNHX1B2cEFjdG9yIiIKDkNsdF9HX1B2cFN0YXJ0",
"EhAKCGFjdG9yX2lkGAEgASgNIi4KD0NsdF9HX1B2cFJlc3VsdBILCgNrZXkY",
"ASABKA0SDgoGaXNfd2luGAIgASgIIk4KDkdfQ2x0X0FjdG9yUHZwEhUKDWNo",
"YXJhY3Rlcl9pZHMYASADKA0SEgoKdmVoaWNsZV9pZBgCIAEoDRIRCgl0ZWFt",
"X2RhdGEYAyABKAwidQoUR19DbHRfUHZwRGVmZW5jZURhdGESDQoFc2NvcmUY",
"ASABKA0SFQoNZGVmZW5jZV9zY29yZRgCIAEoDRIcChRkZWZlbmNlX2NvbWJh",
"dF9jb3VudBgDIAEoDRIZChFkZWZlbmNlX3dpbl9jb3VudBgEIAEoDSIjChND",
"bHRfTWdfUHZwT3JkZXJMaXN0EgwKBHBhZ2UYASABKA0iRQoQTVNHX1B2cE9y",
"ZGVyRGF0YRINCgVvcmRlchgBIAEoDRIQCghhY3Rvcl9pZBgCIAEoDRIQCghu",
"aWNrbmFtZRgDIAEoCSJQChdNZ19DbHRfUHZwT3JkZXJMaXN0RGF0YRIMCgRw",
"YWdlGAEgASgNEicKBWRhdGFzGAIgAygLMhguTkxEX1BCLk1TR19QdnBPcmRl",
"ckRhdGEiNgoTQ2x0X0dfUGF0aW9FeGNoYW5nZRIQCghnYWNoYV9pZBgBIAEo",
"DRINCgVpbmRleBgCIAEoDSJnChNDbHRfR19JbkFwcFB1cmNoYXNlEhAKCHBs",
"YXRmb3JtGAEgASgNEhIKCmlzX3NhbmRib3gYAiABKAgSFgoOdHJhbnNhY3Rp",
"b25faWQYAyABKAkSEgoKcHJvZHVjdF9pZBgEIAEoCSItChBNU0dfUHVyY2hh",
"c2VEYXRhEgoKAmlkGAEgASgNEg0KBWNvdW50GAIgASgNIkwKE0dfQ2x0X0Fj",
"dG9yUHVyY2hhc2USDAoEdXVpZBgBIAEoCRInCgVkYXRhcxgCIAMoCzIYLk5M",
"RF9QQi5NU0dfUHVyY2hhc2VEYXRhKjwKCUxvZ2luVHlwZRIICgROb25lEAAS",
"CQoEUEhYSBDoBxILCgZUYXBUYXAQ6QcSDQoIRmlyZWJhc2UQ6gcqOgoNUEhY",
"SExvZ2luRGF0YRILCgdBY2NvdW50EAASDAoIUGFzc3dvcmQQARIOCgpQSFhI",
"TERfTWF4EAIqQAoPVGFwVGFwTG9naW5EYXRhEg8KC0FjY2Vzc1Rva2VuEAAS",
"CgoGTWFjS2V5EAESEAoMVGFwVGFwTERfTWF4EAIqLgoRRmlyZWJhc2VMb2dp",
"bkRhdGESCwoHSURUb2tlbhAAEgwKCEZCTERfTWF4EAEqYwoLVXBncmFkZVR5",
"cGUSCwoHVVRfTm9uZRAAEgwKCFVUX0xldmVsEAESDAoIVVRfQnJlYWsQAhIR",
"Cg1VVF9VbHRyYVNraWxsEAMSDAoIVVRfQXdha2UQBBIKCgZVSV9NYXgQBSpE",
"ChBQdXJjaGFzZVBsYXRmb3JtEgoKBlBQTm9uZRAAEgcKA0lPUxABEgsKB0Fu",
"ZHJvaWQQAhIOCgpTdGFuZGFsb25lEANCC1oJcGIveHNmX3BiYgZwcm90bzM="));
"TVNHX1NraWxsTGV2ZWwiOwoYQ2x0X0dfUGxheWVyU2tpbGxVcGdyYWRlEhAK",
"CHNraWxsX2lkGAEgASgNEg0KBWxldmVsGAIgASgNIhEKD01TR19QdnBUZWFt",
"RGF0YSJZChpDbHRfR19TZXREZWZlbmNlVGVhbUZvclB2cBIUCgxjaGFyYWN0",
"ZXJfaWQYASADKA0SEgoKdmVoaWNsZV9pZBgCIAEoDRIRCgl0ZWFtX2RhdGEY",
"AyABKAwigAEKEk1TR19QdnBEZWZlbmNlRGF0YRItCgpjaGFyYWN0ZXJzGAEg",
"AygLMhkuTkxEX1BCLk1TR19DaGFyYWN0ZXJJbmZvEigKB3ZlaGljbGUYAiAB",
"KAsyFy5OTERfUEIuTVNHX1ZlaGljbGVJbmZvEhEKCXRlYW1fZGF0YRgDIAEo",
"DCJmCgxNU0dfUHZwQWN0b3ISEAoIYWN0b3JfaWQYASABKA0SEAoIbmlja25h",
"bWUYAiABKAkSDQoFc29jcmUYAyABKA0SDQoFb3JkZXIYBCABKA0SFAoMZGVm",
"ZW5jZV9kYXRhGAUgASgMIhcKFUNsdF9NZ19QdnBJbmZvcm1hdGlvbiJaChRH",
"X0NsdF9QdnBJbmZvcm1hdGlvbhINCgVzY29yZRgBIAEoDRINCgVvcmRlchgC",
"IAEoDRIkCgZyaXZhbHMYAyADKAsyFC5OTERfUEIuTVNHX1B2cEFjdG9yIiIK",
"DkNsdF9HX1B2cFN0YXJ0EhAKCGFjdG9yX2lkGAEgASgNIi4KD0NsdF9HX1B2",
"cFJlc3VsdBILCgNrZXkYASABKA0SDgoGaXNfd2luGAIgASgIIk4KDkdfQ2x0",
"X0FjdG9yUHZwEhUKDWNoYXJhY3Rlcl9pZHMYASADKA0SEgoKdmVoaWNsZV9p",
"ZBgCIAEoDRIRCgl0ZWFtX2RhdGEYAyABKAwidQoUR19DbHRfUHZwRGVmZW5j",
"ZURhdGESDQoFc2NvcmUYASABKA0SFQoNZGVmZW5jZV9zY29yZRgCIAEoDRIc",
"ChRkZWZlbmNlX2NvbWJhdF9jb3VudBgDIAEoDRIZChFkZWZlbmNlX3dpbl9j",
"b3VudBgEIAEoDSIjChNDbHRfTWdfUHZwT3JkZXJMaXN0EgwKBHBhZ2UYASAB",
"KA0iRQoQTVNHX1B2cE9yZGVyRGF0YRINCgVvcmRlchgBIAEoDRIQCghhY3Rv",
"cl9pZBgCIAEoDRIQCghuaWNrbmFtZRgDIAEoCSJQChdNZ19DbHRfUHZwT3Jk",
"ZXJMaXN0RGF0YRIMCgRwYWdlGAEgASgNEicKBWRhdGFzGAIgAygLMhguTkxE",
"X1BCLk1TR19QdnBPcmRlckRhdGEiNgoTQ2x0X0dfUGF0aW9FeGNoYW5nZRIQ",
"CghnYWNoYV9pZBgBIAEoDRINCgVpbmRleBgCIAEoDSJnChNDbHRfR19JbkFw",
"cFB1cmNoYXNlEhAKCHBsYXRmb3JtGAEgASgNEhIKCmlzX3NhbmRib3gYAiAB",
"KAgSFgoOdHJhbnNhY3Rpb25faWQYAyABKAkSEgoKcHJvZHVjdF9pZBgEIAEo",
"CSItChBNU0dfUHVyY2hhc2VEYXRhEgoKAmlkGAEgASgNEg0KBWNvdW50GAIg",
"ASgNIkwKE0dfQ2x0X0FjdG9yUHVyY2hhc2USDAoEdXVpZBgBIAEoCRInCgVk",
"YXRhcxgCIAMoCzIYLk5MRF9QQi5NU0dfUHVyY2hhc2VEYXRhKjwKCUxvZ2lu",
"VHlwZRIICgROb25lEAASCQoEUEhYSBDoBxILCgZUYXBUYXAQ6QcSDQoIRmly",
"ZWJhc2UQ6gcqOgoNUEhYSExvZ2luRGF0YRILCgdBY2NvdW50EAASDAoIUGFz",
"c3dvcmQQARIOCgpQSFhITERfTWF4EAIqQAoPVGFwVGFwTG9naW5EYXRhEg8K",
"C0FjY2Vzc1Rva2VuEAASCgoGTWFjS2V5EAESEAoMVGFwVGFwTERfTWF4EAIq",
"LgoRRmlyZWJhc2VMb2dpbkRhdGESCwoHSURUb2tlbhAAEgwKCEZCTERfTWF4",
"EAEqYwoLVXBncmFkZVR5cGUSCwoHVVRfTm9uZRAAEgwKCFVUX0xldmVsEAES",
"DAoIVVRfQnJlYWsQAhIRCg1VVF9VbHRyYVNraWxsEAMSDAoIVVRfQXdha2UQ",
"BBIKCgZVSV9NYXgQBSpEChBQdXJjaGFzZVBsYXRmb3JtEgoKBlBQTm9uZRAA",
"EgcKA0lPUxABEgsKB0FuZHJvaWQQAhIOCgpTdGFuZGFsb25lEANCC1oJcGIv",
"eHNmX3BiYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::NLDPB.LoginType), typeof(global::NLDPB.PHXHLoginData), typeof(global::NLDPB.TapTapLoginData), typeof(global::NLDPB.FirebaseLoginData), typeof(global::NLDPB.UpgradeType), typeof(global::NLDPB.PurchasePlatform), }, null, new pbr::GeneratedClrTypeInfo[] {
@ -210,7 +211,7 @@ namespace NLDPB {
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.Clt_G_ShopPurchase), global::NLDPB.Clt_G_ShopPurchase.Parser, new[]{ "ShopId", "Index", "Count" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.MSG_SkillLevel), global::NLDPB.MSG_SkillLevel.Parser, new[]{ "Id", "Level" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.G_Clt_ActorPlayerSkill), global::NLDPB.G_Clt_ActorPlayerSkill.Parser, new[]{ "Clear", "Skills" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.Clt_G_PlayerSkillUpgrade), global::NLDPB.Clt_G_PlayerSkillUpgrade.Parser, new[]{ "SkillId" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.Clt_G_PlayerSkillUpgrade), global::NLDPB.Clt_G_PlayerSkillUpgrade.Parser, new[]{ "SkillId", "Level" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.MSG_PvpTeamData), global::NLDPB.MSG_PvpTeamData.Parser, null, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.Clt_G_SetDefenceTeamForPvp), global::NLDPB.Clt_G_SetDefenceTeamForPvp.Parser, new[]{ "CharacterId", "VehicleId", "TeamData" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::NLDPB.MSG_PvpDefenceData), global::NLDPB.MSG_PvpDefenceData.Parser, new[]{ "Characters", "Vehicle", "TeamData" }, null, null, null, null),
@ -14544,6 +14545,7 @@ namespace NLDPB {
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public Clt_G_PlayerSkillUpgrade(Clt_G_PlayerSkillUpgrade other) : this() {
skillId_ = other.skillId_;
level_ = other.level_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
@ -14565,6 +14567,18 @@ namespace NLDPB {
}
}
/// <summary>Field number for the "level" field.</summary>
public const int LevelFieldNumber = 2;
private uint level_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public uint Level {
get { return level_; }
set {
level_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
@ -14581,6 +14595,7 @@ namespace NLDPB {
return true;
}
if (SkillId != other.SkillId) return false;
if (Level != other.Level) return false;
return Equals(_unknownFields, other._unknownFields);
}
@ -14589,6 +14604,7 @@ namespace NLDPB {
public override int GetHashCode() {
int hash = 1;
if (SkillId != 0) hash ^= SkillId.GetHashCode();
if (Level != 0) hash ^= Level.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
@ -14611,6 +14627,10 @@ namespace NLDPB {
output.WriteRawTag(8);
output.WriteUInt32(SkillId);
}
if (Level != 0) {
output.WriteRawTag(16);
output.WriteUInt32(Level);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
@ -14625,6 +14645,10 @@ namespace NLDPB {
output.WriteRawTag(8);
output.WriteUInt32(SkillId);
}
if (Level != 0) {
output.WriteRawTag(16);
output.WriteUInt32(Level);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
@ -14638,6 +14662,9 @@ namespace NLDPB {
if (SkillId != 0) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(SkillId);
}
if (Level != 0) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Level);
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
@ -14653,6 +14680,9 @@ namespace NLDPB {
if (other.SkillId != 0) {
SkillId = other.SkillId;
}
if (other.Level != 0) {
Level = other.Level;
}
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
@ -14672,6 +14702,10 @@ namespace NLDPB {
SkillId = input.ReadUInt32();
break;
}
case 16: {
Level = input.ReadUInt32();
break;
}
}
}
#endif
@ -14691,6 +14725,10 @@ namespace NLDPB {
SkillId = input.ReadUInt32();
break;
}
case 16: {
Level = input.ReadUInt32();
break;
}
}
}
}

View File

@ -37,7 +37,7 @@ namespace NLDPB {
"b2dpbkxvY2sQBxIUChBMUk90aGVyTG9naW5HYW1lEAgSDwoLU3RhdHVzRXJy",
"b3IQCRISCg5Mb2dpbkF1dGhFcnJvchAKEhMKD0xvZ2luUGFyYW1FcnJvchAL",
"EhIKDlJlbG9naW5UaW1lb3V0EAwSFQoRUmVsb2dpbktleUludmFsaWQQDRIW",
"ChJSZWxvZ2luU3RhdHVzRXJyb3IQDiq5GgoIT3BSZXN1bHQSBgoCT2sQABIL",
"ChJSZWxvZ2luU3RhdHVzRXJyb3IQDirXGgoIT3BSZXN1bHQSBgoCT2sQABIL",
"CgdUb29GYXN0EAESEgoNSXRlbV9DZmdFcnJvchCQThIWChFJdGVtX0NmZ1R5",
"cGVFcnJvchCRThIYChNJdGVtX0NmZ1N5c3RlbUVycm9yEJJOEhMKDkl0ZW1f",
"Q2Fubm90VXNlEJNOEhMKDkl0ZW1fTm90RW5vdWdoEJROEhgKEkNoYXJhY3Rl",
@ -81,55 +81,56 @@ namespace NLDPB {
"U2tpbGxfTm90RXhpc3QQqMMBEhgKElBsYXllclNraWxsX0lzRnVsbBCpwwES",
"HgoYUGxheWVyU2tpbGxfTGF5ZXJOb3RPcGVuEKrDARIfChlQbGF5ZXJTa2ls",
"bF9MYXllckNmZ0Vycm9yEKvDARIfChlQbGF5ZXJTa2lsbF9Db3N0Tm90RW5v",
"dWdoEKzDARITCg1OaWNrbmFtZUV4aXN0ELDqARIZChNUYXNrX1NjaGVtYU5v",
"dEV4aXN0ELHqARIZChNUYXNrX0FscmVhZHlDbGFpbWVkELLqARISCgxUYXNr",
"X05vdERvbmUQs+oBEhwKFlRhc2tfQ2hlY2tUeXBlTm90RXhpc3QQtOoBEhkK",
"E1Nob3BfU2NoZW1hTm90RXhpc3QQmPIBEh0KF1Nob3BfR29vZFNjaGVtYU5v",
"dEV4aXN0EJnyARITCg1TaG9wX05vdEV4aXN0EJryARIVCg9TaG9wX1BhcmFt",
"RXJyb3IQm/IBEiEKG1Nob3BfUHVyY2hhc2VDb3VudE5vdEVub3VnaBCc8gES",
"GAoSU2hvcF9JdGVtTm90RW5vdWdoEJ3yARIbChVQdnBfQ2hhcmFjdGVyTm90",
"RXhpc3QQgPoBEhkKE1B2cF9WZWhpY2xlTm90RXhpc3QQgfoBEiAKGlB2cF9O",
"ZWVkQ2hhcmFjdGVyT3JWZWhpY2xlEIL6ARIVCg9QdnBfU3lzdGVtRXJyb3IQ",
"g/oBEhsKFVB2cF9BY3RvckRhdGFOb3RFeGlzdBCE+gESGgoUUHZwX1RlYW1E",
"YXRhTm90RXhpc3QQhfoBEhEKC1B2cF9Ub29GYXN0EIb6ARIWChBQdnBfTm9S",
"aXZhbHNEYXRhEIf6ARIXChFQdnBfUml2YWxTZWxlY3RlZBCI+gESFwoRUHZw",
"X1JpdmFsTm90RXhpc3QQifoBEhcKEVB2cF9Db3N0Tm90RW5vdWdoEIr6ARIb",
"ChVQdnBfUmVzdWx0U3RhdHVzRXJyb3IQi/oBEhgKElB2cF9SZXN1bHRLZXlF",
"cnJvchCM+gESJAoeUHVyY2hhc2VfSU9TX1NpZ25lZFN0cmluZ0Vycm9yEMG4",
"AhIYChJQdXJjaGFzZV9IdHRwRXJyb3IQwrgCEhUKD1B1cmNoYXNlX0ZhaWxl",
"ZBDDuAISHAoWUHVyY2hhc2VfSU9TX0pzb25FcnJvchDEuAISGwoVUHVyY2hh",
"c2VfQWN0b3JPZmZsaW5lEMW4AhIdChdQdXJjaGFzZV9Qcm9kdWN0SURFcnJv",
"chDGuAISIwodUHVyY2hhc2VfVHJhbnNhY3Rpb25EdXBsaWNhdGUQx7gCEh4K",
"GFB1cmNoYXNlX1BsYXRmb3JtSW52YWxpZBDIuAISIwodUHVyY2hhc2VfQXBw",
"QWNjb3VudFRva2VuRXJyb3IQybgCEhcKEVB1cmNoYXNlX0RlYnVnUnVuEMq4",
"AhIZChNHaWZ0Q29kZV9QYXJhbUVycm9yEKGNBhIYChJHaWZ0Q29kZV9Db2Rl",
"RXJyb3IQpI0GEhoKFEdpZnRDb2RlX1BhcmFtRXJyb3IyEKWNBhIZChNHaWZ0",
"Q29kZV9Db3VudExpbWl0EKaNBhIYChJHaWZ0Q29kZV9PdXRPZkRhdGUQqI0G",
"EhYKEEdpZnRDb2RlX05vdE9wZW4QqY0GEhoKFEdpZnRDb2RlX091dE9mU2Vy",
"dmVyEKqNBhIWChBHaWZ0Q29kZV9Ub29GYXN0EKuNBhIYChJHaWZ0Q29kZV9O",
"b3RFbm91Z2gQrI0GEhgKEkdpZnRDb2RlX0F1dGhFcnJvchCtjQYSEwoNR2lm",
"dENvZGVfQnVzeRCujQYSHAoWR2lmdENvZGVfU2VuZEl0ZW1FcnJvchCvjQYS",
"GgoUR2lmdENvZGVfQ29kZUludmFsaWQQsI0GEhoKFEdpZnRDb2RlX0NvdW50",
"TGltaXQyELGNBhIaChRHaWZ0Q29kZV9TZXJ2ZXJFcnJvchCyjQYSGwoVR2lm",
"dENvZGVfU2VydmVyRXJyb3IyELaNBhIbChVHaWZ0Q29kZV9TZXJ2ZXJFcnJv",
"cjMQocIeEhsKFUdpZnRDb2RlX1NlcnZlckVycm9yNBCiwh4qtQEKCUFjdG9y",
"UHJvcBINCglBY2NvdW50SUQQABILCgdBY3RvcklEEAESDAoITmlja25hbWUQ",
"AhIMCghIZWFkSWNvbhADEg4KCkNyZWF0ZVRpbWUQBBINCglMYXN0TG9naW4Q",
"BRIPCgtTZXROaWNrVGltZRAGEg4KCkxvZ291dFRpbWUQBxIJCgVMZXZlbBAI",
"EgcKA0V4cBAJEhAKDExvY2FsQWNjb3VudBAKEgoKBkFQX01heBALKsQBCgdM",
"b2dpY0lEEhEKDURheUNoYW5nZVRpbWUQABIOCgpSYWZmbGVJbmZvEAISDgoK",
"QmF0dGxlVGVhbRADEhUKEUVuZXJneVJlY292ZXJUaW1lEAQSEgoOV2Vla0No",
"YW5nZVRpbWUQBRIOCgpMYXN0TWFpbElEEAYSDQoJU2lnbkNvdW50EAcSEwoP",
"TW9udGhDaGFuZ2VUaW1lEAgSCAoEU2hvcBAJEg8KC1BsYXllclNraWxsEAoS",
"DAoHTElEX01heBCIJyr5AQoKSXRlbVNvdXJjZRIUChBMZXZlbFBhc3NfTm9y",
"bWFsEAASEwoPTGV2ZWxQYXNzX0ZpcnN0EAESEwoPTGV2ZWxQYXNzX1N0YXIx",
"EAISEwoPTGV2ZWxQYXNzX1N0YXIyEAMSEwoPTGV2ZWxQYXNzX1N0YXIzEAQS",
"DwoLQ2hhcHRlclN0YXIQBRIKCgZSYWZmbGUQBhIMCghHaWZ0Q29kZRAHEgwK",
"CE1haWxJdGVtEAgSCAoEVGFzaxAJEhAKDFNob3BQdXJjaGFzZRAKEhEKDVBh",
"dGlvRXhjaGFuZ2UQCxIQCgxDdXJyZW5jeVNob3AQDBIHCgNNYXgQZCpBCgpU",
"YXNrU3RhdHVzEg0KCVRTSW52YWxpZBAAEgsKB05ld1Rhc2sQARINCglUU0Ns",
"YWltZWQQAhIICgREb25lEAMqLgoKTWFpbFN0YXR1cxIHCgNOZXcQABIKCgZP",
"cGVuZWQQARILCgdDbGlhbWVkEAJCC1oJcGIveHNmX3BiYgZwcm90bzM="));
"dWdoEKzDARIcChZQbGF5ZXJTa2lsbF9QYXJhbUVycm9yEK3DARITCg1OaWNr",
"bmFtZUV4aXN0ELDqARIZChNUYXNrX1NjaGVtYU5vdEV4aXN0ELHqARIZChNU",
"YXNrX0FscmVhZHlDbGFpbWVkELLqARISCgxUYXNrX05vdERvbmUQs+oBEhwK",
"FlRhc2tfQ2hlY2tUeXBlTm90RXhpc3QQtOoBEhkKE1Nob3BfU2NoZW1hTm90",
"RXhpc3QQmPIBEh0KF1Nob3BfR29vZFNjaGVtYU5vdEV4aXN0EJnyARITCg1T",
"aG9wX05vdEV4aXN0EJryARIVCg9TaG9wX1BhcmFtRXJyb3IQm/IBEiEKG1No",
"b3BfUHVyY2hhc2VDb3VudE5vdEVub3VnaBCc8gESGAoSU2hvcF9JdGVtTm90",
"RW5vdWdoEJ3yARIbChVQdnBfQ2hhcmFjdGVyTm90RXhpc3QQgPoBEhkKE1B2",
"cF9WZWhpY2xlTm90RXhpc3QQgfoBEiAKGlB2cF9OZWVkQ2hhcmFjdGVyT3JW",
"ZWhpY2xlEIL6ARIVCg9QdnBfU3lzdGVtRXJyb3IQg/oBEhsKFVB2cF9BY3Rv",
"ckRhdGFOb3RFeGlzdBCE+gESGgoUUHZwX1RlYW1EYXRhTm90RXhpc3QQhfoB",
"EhEKC1B2cF9Ub29GYXN0EIb6ARIWChBQdnBfTm9SaXZhbHNEYXRhEIf6ARIX",
"ChFQdnBfUml2YWxTZWxlY3RlZBCI+gESFwoRUHZwX1JpdmFsTm90RXhpc3QQ",
"ifoBEhcKEVB2cF9Db3N0Tm90RW5vdWdoEIr6ARIbChVQdnBfUmVzdWx0U3Rh",
"dHVzRXJyb3IQi/oBEhgKElB2cF9SZXN1bHRLZXlFcnJvchCM+gESJAoeUHVy",
"Y2hhc2VfSU9TX1NpZ25lZFN0cmluZ0Vycm9yEMG4AhIYChJQdXJjaGFzZV9I",
"dHRwRXJyb3IQwrgCEhUKD1B1cmNoYXNlX0ZhaWxlZBDDuAISHAoWUHVyY2hh",
"c2VfSU9TX0pzb25FcnJvchDEuAISGwoVUHVyY2hhc2VfQWN0b3JPZmZsaW5l",
"EMW4AhIdChdQdXJjaGFzZV9Qcm9kdWN0SURFcnJvchDGuAISIwodUHVyY2hh",
"c2VfVHJhbnNhY3Rpb25EdXBsaWNhdGUQx7gCEh4KGFB1cmNoYXNlX1BsYXRm",
"b3JtSW52YWxpZBDIuAISIwodUHVyY2hhc2VfQXBwQWNjb3VudFRva2VuRXJy",
"b3IQybgCEhcKEVB1cmNoYXNlX0RlYnVnUnVuEMq4AhIZChNHaWZ0Q29kZV9Q",
"YXJhbUVycm9yEKGNBhIYChJHaWZ0Q29kZV9Db2RlRXJyb3IQpI0GEhoKFEdp",
"ZnRDb2RlX1BhcmFtRXJyb3IyEKWNBhIZChNHaWZ0Q29kZV9Db3VudExpbWl0",
"EKaNBhIYChJHaWZ0Q29kZV9PdXRPZkRhdGUQqI0GEhYKEEdpZnRDb2RlX05v",
"dE9wZW4QqY0GEhoKFEdpZnRDb2RlX091dE9mU2VydmVyEKqNBhIWChBHaWZ0",
"Q29kZV9Ub29GYXN0EKuNBhIYChJHaWZ0Q29kZV9Ob3RFbm91Z2gQrI0GEhgK",
"EkdpZnRDb2RlX0F1dGhFcnJvchCtjQYSEwoNR2lmdENvZGVfQnVzeRCujQYS",
"HAoWR2lmdENvZGVfU2VuZEl0ZW1FcnJvchCvjQYSGgoUR2lmdENvZGVfQ29k",
"ZUludmFsaWQQsI0GEhoKFEdpZnRDb2RlX0NvdW50TGltaXQyELGNBhIaChRH",
"aWZ0Q29kZV9TZXJ2ZXJFcnJvchCyjQYSGwoVR2lmdENvZGVfU2VydmVyRXJy",
"b3IyELaNBhIbChVHaWZ0Q29kZV9TZXJ2ZXJFcnJvcjMQocIeEhsKFUdpZnRD",
"b2RlX1NlcnZlckVycm9yNBCiwh4qtQEKCUFjdG9yUHJvcBINCglBY2NvdW50",
"SUQQABILCgdBY3RvcklEEAESDAoITmlja25hbWUQAhIMCghIZWFkSWNvbhAD",
"Eg4KCkNyZWF0ZVRpbWUQBBINCglMYXN0TG9naW4QBRIPCgtTZXROaWNrVGlt",
"ZRAGEg4KCkxvZ291dFRpbWUQBxIJCgVMZXZlbBAIEgcKA0V4cBAJEhAKDExv",
"Y2FsQWNjb3VudBAKEgoKBkFQX01heBALKsQBCgdMb2dpY0lEEhEKDURheUNo",
"YW5nZVRpbWUQABIOCgpSYWZmbGVJbmZvEAISDgoKQmF0dGxlVGVhbRADEhUK",
"EUVuZXJneVJlY292ZXJUaW1lEAQSEgoOV2Vla0NoYW5nZVRpbWUQBRIOCgpM",
"YXN0TWFpbElEEAYSDQoJU2lnbkNvdW50EAcSEwoPTW9udGhDaGFuZ2VUaW1l",
"EAgSCAoEU2hvcBAJEg8KC1BsYXllclNraWxsEAoSDAoHTElEX01heBCIJyr5",
"AQoKSXRlbVNvdXJjZRIUChBMZXZlbFBhc3NfTm9ybWFsEAASEwoPTGV2ZWxQ",
"YXNzX0ZpcnN0EAESEwoPTGV2ZWxQYXNzX1N0YXIxEAISEwoPTGV2ZWxQYXNz",
"X1N0YXIyEAMSEwoPTGV2ZWxQYXNzX1N0YXIzEAQSDwoLQ2hhcHRlclN0YXIQ",
"BRIKCgZSYWZmbGUQBhIMCghHaWZ0Q29kZRAHEgwKCE1haWxJdGVtEAgSCAoE",
"VGFzaxAJEhAKDFNob3BQdXJjaGFzZRAKEhEKDVBhdGlvRXhjaGFuZ2UQCxIQ",
"CgxDdXJyZW5jeVNob3AQDBIHCgNNYXgQZCpBCgpUYXNrU3RhdHVzEg0KCVRT",
"SW52YWxpZBAAEgsKB05ld1Rhc2sQARINCglUU0NsYWltZWQQAhIICgREb25l",
"EAMqLgoKTWFpbFN0YXR1cxIHCgNOZXcQABIKCgZPcGVuZWQQARILCgdDbGlh",
"bWVkEAJCC1oJcGIveHNmX3BiYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::NLDPB.GlobalDefine), typeof(global::NLDPB.DisconnectReason), typeof(global::NLDPB.LoginResult), typeof(global::NLDPB.OpResult), typeof(global::NLDPB.ActorProp), typeof(global::NLDPB.LogicID), typeof(global::NLDPB.ItemSource), typeof(global::NLDPB.TaskStatus), typeof(global::NLDPB.MailStatus), }, null, null));
@ -524,6 +525,10 @@ namespace NLDPB {
/// </summary>
[pbr::OriginalName("PlayerSkill_CostNotEnough")] PlayerSkillCostNotEnough = 25004,
/// <summary>
/// 参数错误
/// </summary>
[pbr::OriginalName("PlayerSkill_ParamError")] PlayerSkillParamError = 25005,
/// <summary>
/// 昵称已存在
/// </summary>
[pbr::OriginalName("NicknameExist")] NicknameExist = 30000,

View File

@ -640,6 +640,10 @@ public class UI_TeamAndSkillSelectController : UIWindow
/// 显示队伍角色
/// </summary>
public RawImage RawImage_Scene;
/// <summary>
/// 队伍根节点
/// </summary>
private RectTransform rtsTeamRoot;
#endregion
/// <summary>
@ -663,6 +667,17 @@ public class UI_TeamAndSkillSelectController : UIWindow
/// </summary>
private int curLevelId;
public bool IsCover
{
set
{
if (value)
rtsTeamRoot.DOPivotX(0f, 0.3f);
else
rtsTeamRoot.DOPivotX(1f, 0.3f);
}
}
/// <summary>
/// 初始化
/// </summary>
@ -670,6 +685,8 @@ public class UI_TeamAndSkillSelectController : UIWindow
{
TeamAndSkillSelectBinder.GetComponents(this);
rtsTeamRoot = FindObj("ImageBG/Teams").GetComponent<RectTransform>();
selectSkillPanel = new SelectSkillPanel(FindObj("ImageBG/SelectSkillPanel"), OnChangeSkill);
Transform tsTeamRoot = FindObj("ImageBG/Teams").transform;

View File

@ -432,9 +432,9 @@ public class UI_CommandSkillCultivateController : UIWindow
/// </summary>
private SkillItem curSelectItem;
/// <summary>
/// 升级等级
/// 升级到指定等级
/// </summary>
private int upLevel;
private int toUpLevel;
/// <summary>
/// 消耗的货币id
/// </summary>
@ -446,15 +446,16 @@ public class UI_CommandSkillCultivateController : UIWindow
#endregion
/// <summary>
/// 要升级的技能等级
/// 升级到指定技能等级
/// </summary>
public int UpLevel
public int ToUpLevel
{
get { return upLevel; }
get { return toUpLevel; }
set
{
upLevel = value;
toUpLevel = value;
RefreshCost();
RefreshSkillDetail();
}
}
@ -542,10 +543,12 @@ public class UI_CommandSkillCultivateController : UIWindow
return;
}
DataPlayerSkillUpgrade skillUpgradeData = TableManager.Instance.Tables.PlayerSkillUpgrade.Get(curSelectItem.SkillData.SkillID, ToUpLevel);
Image_ChooseIcon.sprite = curSelectItem.IconSprite;
Text_IconName.text = curSelectItem.SkillData.Name;
Text_IconDescribe.text = curSelectItem.SkillData.Desc;
Text_Level.text = $"LV.{Actor.Instance.PlayerSkill.GetLevel(curSelectItem.SkillData.SkillID)}";
Text_IconDescribe.text = CommonUtils.GetLocalizeText(skillUpgradeData.Desc);
Text_Level.text = $"LV.{ToUpLevel}";
#region 解锁条件
bool isShowUnLockText = false;
@ -612,7 +615,7 @@ public class UI_CommandSkillCultivateController : UIWindow
/// </summary>
private void RefreshCost()
{
Text_Num.text = UpLevel.ToString();
Text_Num.text = ToUpLevel.ToString();
levelCost = 0;
moneyId = Constants.INVALID_ID;
@ -620,24 +623,47 @@ public class UI_CommandSkillCultivateController : UIWindow
{
Go_PhysicalBG.IsScaleShow(false);
Text_PhysicalNum.text = $"-{levelCost}";
Button_Minus.interactable = false;
Button_Plus.interactable = false;
return;
}
if (UpLevel <= 0)
{
if (curSelectItem.SkillData.IsLock)
{
Go_PhysicalBG.IsScaleShow(false);
goLevelUpButtonGrey.IsScaleShow(true);
goLevelUpButtonGrey.IsScaleShow(true);
Button_Minus.interactable = false;
Button_Plus.interactable = false;
return;
}
for (int addLevel = 1; addLevel <= UpLevel; addLevel++)
{
if (ToUpLevel <= curSelectItem.SkillData.Level)
{
Go_PhysicalBG.IsScaleShow(false);
goLevelUpButtonGrey.IsScaleShow(true);
Button_Minus.interactable = false;
}
else
Button_Minus.interactable = true;
if (ToUpLevel >= curSelectItem.SkillData.MaxLevel)
{
Go_PhysicalBG.IsScaleShow(false);
goLevelUpButtonGrey.IsScaleShow(true);
Button_Plus.interactable = false;
}
else
Button_Plus.interactable = true;
for (int addLevel = 1; addLevel <= ToUpLevel - curSelectItem.SkillData.Level; addLevel++)
{
DataPlayerSkillUpgrade data = TableManager.Instance.Tables.PlayerSkillUpgrade.Get(curSelectItem.SkillData.SkillID, curSelectItem.SkillData.Level + addLevel);
moneyId = data.Cost[0].Id;
levelCost += data.Cost[0].Count;
}
levelCost += data.Cost[0].Count;
}
if (IsMoneyEnough)
{
@ -661,10 +687,10 @@ public class UI_CommandSkillCultivateController : UIWindow
/// </summary>
private void OnLevelUp()
{
if (UpLevel <= 0)
if (ToUpLevel <= curSelectItem.SkillData.Level)
return;
if (UpLevel + curSelectItem.SkillData.Level > curSelectItem.SkillData.MaxLevel)
if (ToUpLevel > curSelectItem.SkillData.MaxLevel)
return;
if (curSelectItem.SkillData.Level >= curSelectItem.SkillData.MaxLevel) // 技能满级
@ -690,7 +716,7 @@ public class UI_CommandSkillCultivateController : UIWindow
Button_LevelUp.interactable = false; // 防止快速重复点击
NetHelper.PlayerSkillUpgrade((uint)curSelectItem.SkillData.SkillID);
NetHelper.PlayerSkillUpgrade((uint)curSelectItem.SkillData.SkillID, (uint)ToUpLevel);
}
/// <summary>
@ -720,10 +746,10 @@ public class UI_CommandSkillCultivateController : UIWindow
if (curSelectItem.SkillData.IsLock)
return;
if (UpLevel + curSelectItem.SkillData.Level >= curSelectItem.SkillData.MaxLevel)
if (ToUpLevel >= curSelectItem.SkillData.MaxLevel)
return;
++UpLevel;
++ToUpLevel;
}
/// <summary>
@ -737,10 +763,10 @@ public class UI_CommandSkillCultivateController : UIWindow
if (curSelectItem.SkillData.IsLock)
return;
if (UpLevel <= 0)
if (ToUpLevel <= curSelectItem.SkillData.Level)
return;
--UpLevel;
--ToUpLevel;
}
/// <summary>
@ -759,16 +785,7 @@ public class UI_CommandSkillCultivateController : UIWindow
curSelectItem.IsSelect = true;
#endregion
#region 处理要升级的值
if (curSelectItem.SkillData.IsLock)
UpLevel = 0;
else if (curSelectItem.SkillData.Level >= curSelectItem.SkillData.MaxLevel)
UpLevel = 0;
else
UpLevel = 1;
#endregion
RefreshSkillDetail();
ToUpLevel = curSelectItem.SkillData.Level;
}
#endregion
}

View File

@ -19,6 +19,7 @@ public sealed partial class DataPlayerSkillUpgrade : Bright.Config.BeanBase
public DataPlayerSkillUpgrade(JSONNode _json)
{
{ if(!_json["ID"].IsNumber) { throw new SerializationException(); } ID = _json["ID"]; }
{ if(!_json["Desc"].IsString) { throw new SerializationException(); } Desc = _json["Desc"]; }
{ if(!_json["Level"].IsNumber) { throw new SerializationException(); } Level = _json["Level"]; }
{ if(!_json["MaxLevel"].IsNumber) { throw new SerializationException(); } MaxLevel = _json["MaxLevel"]; }
{ if(!_json["skillType"].IsNumber) { throw new SerializationException(); } SkillType = (PlayerSkillCfg.PlayerSkillType)_json["skillType"].AsInt; }
@ -33,9 +34,10 @@ public sealed partial class DataPlayerSkillUpgrade : Bright.Config.BeanBase
PostInit();
}
public DataPlayerSkillUpgrade(int ID, int Level, int MaxLevel, PlayerSkillCfg.PlayerSkillType skillType, int LayerID, int SkillID, int[] Unlock, System.Collections.Generic.List<item.ItemCounts> Cost, System.Collections.Generic.List<string> DescParamProperty, float CDTime, float ShiedValue, int[] PreSkillID )
public DataPlayerSkillUpgrade(int ID, string Desc, int Level, int MaxLevel, PlayerSkillCfg.PlayerSkillType skillType, int LayerID, int SkillID, int[] Unlock, System.Collections.Generic.List<item.ItemCounts> Cost, System.Collections.Generic.List<string> DescParamProperty, float CDTime, float ShiedValue, int[] PreSkillID )
{
this.ID = ID;
this.Desc = Desc;
this.Level = Level;
this.MaxLevel = MaxLevel;
this.SkillType = skillType;
@ -60,6 +62,10 @@ public sealed partial class DataPlayerSkillUpgrade : Bright.Config.BeanBase
/// </summary>
public int ID { get; private set; }
/// <summary>
/// 描述
/// </summary>
public string Desc { get; private set; }
/// <summary>
/// 等级
/// </summary>
public int Level { get; private set; }
@ -122,6 +128,7 @@ public sealed partial class DataPlayerSkillUpgrade : Bright.Config.BeanBase
{
return "{ "
+ "ID:" + ID + ","
+ "Desc:" + Desc + ","
+ "Level:" + Level + ","
+ "MaxLevel:" + MaxLevel + ","
+ "SkillType:" + SkillType + ","

View File

@ -36,9 +36,13 @@ namespace cfg.ActorCfg
/// </summary>
Useable = 5,
/// <summary>
/// 指挥官技能
/// </summary>
PlayerSkill = 6,
/// <summary>
/// 最大
/// </summary>
Max = 6,
Max = 7,
}
}

View File

@ -2388,5 +2388,105 @@
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010001,
"Type": 6,
"NameLocal": "",
"Param1": 111,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010002,
"Type": 6,
"NameLocal": "",
"Param1": 1003,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010003,
"Type": 6,
"NameLocal": "",
"Param1": 1003,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010004,
"Type": 6,
"NameLocal": "",
"Param1": 3001,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010005,
"Type": 6,
"NameLocal": "",
"Param1": 2002,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010006,
"Type": 6,
"NameLocal": "",
"Param1": 112,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010007,
"Type": 6,
"NameLocal": "",
"Param1": 311,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010008,
"Type": 6,
"NameLocal": "",
"Param1": 1001,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010009,
"Type": 6,
"NameLocal": "",
"Param1": 3002,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
},
{
"ID": 1010010,
"Type": 6,
"NameLocal": "",
"Param1": 231,
"Param2": 0,
"Param3": 0,
"MaxCount": 0,
"IconPath": ""
}
]

View File

@ -1,6 +1,7 @@
[
{
"ID": 111,
"Desc": "技能111",
"Level": 0,
"MaxLevel": 5,
"skillType": 0,
@ -22,6 +23,7 @@
},
{
"ID": 111,
"Desc": "技能111",
"Level": 1,
"MaxLevel": 5,
"skillType": 0,
@ -43,6 +45,7 @@
},
{
"ID": 111,
"Desc": "技能111",
"Level": 2,
"MaxLevel": 5,
"skillType": 0,
@ -64,6 +67,7 @@
},
{
"ID": 111,
"Desc": "技能111",
"Level": 3,
"MaxLevel": 5,
"skillType": 0,
@ -85,6 +89,7 @@
},
{
"ID": 111,
"Desc": "技能111",
"Level": 4,
"MaxLevel": 5,
"skillType": 0,
@ -107,6 +112,7 @@
},
{
"ID": 111,
"Desc": "技能111",
"Level": 5,
"MaxLevel": 5,
"skillType": 0,
@ -128,6 +134,7 @@
},
{
"ID": 1003,
"Desc": "技能1003",
"Level": 0,
"MaxLevel": 5,
"skillType": 0,
@ -151,6 +158,7 @@
},
{
"ID": 1003,
"Desc": "技能1003",
"Level": 1,
"MaxLevel": 5,
"skillType": 0,
@ -174,6 +182,7 @@
},
{
"ID": 1003,
"Desc": "技能1003",
"Level": 2,
"MaxLevel": 5,
"skillType": 0,
@ -197,6 +206,7 @@
},
{
"ID": 1003,
"Desc": "技能1003",
"Level": 3,
"MaxLevel": 5,
"skillType": 0,
@ -220,6 +230,7 @@
},
{
"ID": 1003,
"Desc": "技能1003",
"Level": 4,
"MaxLevel": 5,
"skillType": 0,
@ -243,6 +254,7 @@
},
{
"ID": 1003,
"Desc": "技能1003",
"Level": 5,
"MaxLevel": 5,
"skillType": 0,
@ -266,6 +278,7 @@
},
{
"ID": 3001,
"Desc": "技能3001",
"Level": 0,
"MaxLevel": 3,
"skillType": 0,
@ -289,6 +302,7 @@
},
{
"ID": 3001,
"Desc": "技能3001",
"Level": 1,
"MaxLevel": 3,
"skillType": 0,
@ -312,6 +326,7 @@
},
{
"ID": 3001,
"Desc": "技能3001",
"Level": 2,
"MaxLevel": 3,
"skillType": 0,
@ -335,6 +350,7 @@
},
{
"ID": 3001,
"Desc": "技能3001",
"Level": 3,
"MaxLevel": 3,
"skillType": 0,
@ -358,6 +374,7 @@
},
{
"ID": 2002,
"Desc": "技能2002",
"Level": 0,
"MaxLevel": 2,
"skillType": 0,
@ -381,6 +398,7 @@
},
{
"ID": 2002,
"Desc": "技能2002",
"Level": 1,
"MaxLevel": 2,
"skillType": 0,
@ -404,6 +422,7 @@
},
{
"ID": 2002,
"Desc": "技能2002",
"Level": 2,
"MaxLevel": 2,
"skillType": 0,
@ -427,6 +446,7 @@
},
{
"ID": 112,
"Desc": "技能112",
"Level": 0,
"MaxLevel": 2,
"skillType": 0,
@ -451,6 +471,7 @@
},
{
"ID": 112,
"Desc": "技能112",
"Level": 1,
"MaxLevel": 2,
"skillType": 0,
@ -475,6 +496,7 @@
},
{
"ID": 112,
"Desc": "技能112",
"Level": 2,
"MaxLevel": 2,
"skillType": 0,
@ -499,6 +521,7 @@
},
{
"ID": 311,
"Desc": "技能311",
"Level": 0,
"MaxLevel": 5,
"skillType": 1,
@ -520,6 +543,7 @@
},
{
"ID": 311,
"Desc": "技能311",
"Level": 1,
"MaxLevel": 5,
"skillType": 1,
@ -541,6 +565,7 @@
},
{
"ID": 311,
"Desc": "技能311",
"Level": 2,
"MaxLevel": 5,
"skillType": 1,
@ -562,6 +587,7 @@
},
{
"ID": 311,
"Desc": "技能311",
"Level": 3,
"MaxLevel": 5,
"skillType": 1,
@ -583,6 +609,7 @@
},
{
"ID": 311,
"Desc": "技能311",
"Level": 4,
"MaxLevel": 5,
"skillType": 1,
@ -604,6 +631,7 @@
},
{
"ID": 311,
"Desc": "技能311",
"Level": 5,
"MaxLevel": 5,
"skillType": 1,
@ -625,6 +653,7 @@
},
{
"ID": 1001,
"Desc": "技能1001",
"Level": 0,
"MaxLevel": 5,
"skillType": 1,
@ -648,6 +677,7 @@
},
{
"ID": 1001,
"Desc": "技能1001",
"Level": 1,
"MaxLevel": 5,
"skillType": 1,
@ -671,6 +701,7 @@
},
{
"ID": 1001,
"Desc": "技能1001",
"Level": 2,
"MaxLevel": 5,
"skillType": 1,
@ -694,6 +725,7 @@
},
{
"ID": 1001,
"Desc": "技能1001",
"Level": 3,
"MaxLevel": 5,
"skillType": 1,
@ -717,6 +749,7 @@
},
{
"ID": 1001,
"Desc": "技能1001",
"Level": 4,
"MaxLevel": 5,
"skillType": 1,
@ -740,6 +773,7 @@
},
{
"ID": 1001,
"Desc": "技能1001",
"Level": 5,
"MaxLevel": 5,
"skillType": 1,
@ -763,6 +797,7 @@
},
{
"ID": 3002,
"Desc": "技能3002",
"Level": 0,
"MaxLevel": 5,
"skillType": 2,
@ -782,6 +817,7 @@
},
{
"ID": 3002,
"Desc": "技能3002",
"Level": 1,
"MaxLevel": 5,
"skillType": 2,
@ -801,6 +837,7 @@
},
{
"ID": 3002,
"Desc": "技能3002",
"Level": 2,
"MaxLevel": 5,
"skillType": 2,
@ -820,6 +857,7 @@
},
{
"ID": 3002,
"Desc": "技能3002",
"Level": 3,
"MaxLevel": 5,
"skillType": 2,
@ -839,6 +877,7 @@
},
{
"ID": 3002,
"Desc": "技能3002",
"Level": 4,
"MaxLevel": 5,
"skillType": 2,
@ -858,6 +897,7 @@
},
{
"ID": 3002,
"Desc": "技能3002",
"Level": 5,
"MaxLevel": 5,
"skillType": 2,
@ -877,6 +917,7 @@
},
{
"ID": 231,
"Desc": "技能231",
"Level": 0,
"MaxLevel": 5,
"skillType": 2,
@ -898,6 +939,7 @@
},
{
"ID": 231,
"Desc": "技能231",
"Level": 1,
"MaxLevel": 5,
"skillType": 2,
@ -919,6 +961,7 @@
},
{
"ID": 231,
"Desc": "技能231",
"Level": 2,
"MaxLevel": 5,
"skillType": 2,
@ -940,6 +983,7 @@
},
{
"ID": 231,
"Desc": "技能231",
"Level": 3,
"MaxLevel": 5,
"skillType": 2,
@ -961,6 +1005,7 @@
},
{
"ID": 231,
"Desc": "技能231",
"Level": 4,
"MaxLevel": 5,
"skillType": 2,
@ -982,6 +1027,7 @@
},
{
"ID": 231,
"Desc": "技能231",
"Level": 5,
"MaxLevel": 5,
"skillType": 2,