【技能】增加 buff额外退出类型 创建者离开载具

main
刘涛 2025-02-19 16:35:23 +08:00
parent 430cc2e959
commit a8c6c5764d
18 changed files with 341 additions and 57 deletions

View File

@ -354,6 +354,14 @@ namespace Gameplay.Buff
return GameUnitManager.instance.infightUnits.Contains(creator.GetID());
case EExitType.OnTakeDamage:
return _extNeedRemove;
case EExitType.CreaterOutVehicle:
if (creator == null
|| creator.statusData.isDead
|| !creator.statusData.isOnVehicle)
{
return true;
}
return false;
default:
DebugUtil.LogError("暂未处理的buff extExitType:{0}",configData.ExExitType);
return _extNeedRemove;

View File

@ -236,8 +236,12 @@ namespace Gameplay.Unit.Data
/// <summary>
/// 装弹时间
/// </summary>
public ObscuredFloat reloadTime;
public ObscuredFloat reloadTime
{
get;
set;
}
/// <summary>
/// 装弹时间-基础值
/// </summary>

View File

@ -0,0 +1,77 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using Bright.Serialization;
using System.Collections.Generic;
using SimpleJSON;
namespace cfg.ActorCfg
{
public sealed partial class DataGoodsPool : Bright.Config.BeanBase
{
public DataGoodsPool(JSONNode _json)
{
{ if(!_json["GroupID"].IsNumber) { throw new SerializationException(); } GroupID = _json["GroupID"]; }
{ if(!_json["ID"].IsNumber) { throw new SerializationException(); } ID = _json["ID"]; }
{ var __json0 = _json["GoodsPathList"]; if(!__json0.IsArray) { throw new SerializationException(); } int _n0 = __json0.Count; GoodsPathList = new string[_n0]; int __index0=0; foreach(JSONNode __e0 in __json0.Children) { string __v0; { if(!__e0.IsString) { throw new SerializationException(); } __v0 = __e0; } GoodsPathList[__index0++] = __v0; } }
PostInit();
}
public DataGoodsPool(int GroupID, int ID, string[] GoodsPathList )
{
this.GroupID = GroupID;
this.ID = ID;
this.GoodsPathList = GoodsPathList;
PostInit();
}
public static DataGoodsPool DeserializeDataGoodsPool(JSONNode _json)
{
return new ActorCfg.DataGoodsPool(_json);
}
/// <summary>
/// 组ID
/// </summary>
public int GroupID { get; private set; }
/// <summary>
/// 池ID
/// </summary>
public int ID { get; private set; }
/// <summary>
/// 商品图片路径现路径“Assets\Art\UI\Texture\Icon\MaterialFragment”
/// </summary>
public string[] GoodsPathList { get; private set; }
public const int __ID__ = -2095092087;
public override int GetTypeId() => __ID__;
public void Resolve(Dictionary<string, object> _tables)
{
PostResolve();
}
public void TranslateText(System.Func<string, string, string> translator)
{
}
public override string ToString()
{
return "{ "
+ "GroupID:" + GroupID + ","
+ "ID:" + ID + ","
+ "GoodsPathList:" + Bright.Common.StringUtil.CollectionToString(GoodsPathList) + ","
+ "}";
}
partial void PostInit();
partial void PostResolve();
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 717e93ef84f674c4880e57d8914e38e9
guid: 4372f6ea337865747ba633d6d815a05c
MonoImporter:
externalObjects: {}
serializedVersion: 2

View File

@ -0,0 +1,72 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using Bright.Serialization;
using System.Collections.Generic;
using SimpleJSON;
namespace cfg.ActorCfg
{
public sealed partial class GoodsPool
{
private readonly Dictionary<int, ActorCfg.DataGoodsPool> _dataMap;
private readonly List<ActorCfg.DataGoodsPool> _dataList;
public GoodsPool(JSONNode _json)
{
_dataMap = new Dictionary<int, ActorCfg.DataGoodsPool>();
_dataList = new List<ActorCfg.DataGoodsPool>();
foreach(JSONNode _row in _json.Children)
{
var _v = ActorCfg.DataGoodsPool.DeserializeDataGoodsPool(_row);
_dataList.Add(_v);
_dataMap.Add(_v.GroupID, _v);
}
PostInit();
}
public Dictionary<int, ActorCfg.DataGoodsPool> DataMap => _dataMap;
public List<ActorCfg.DataGoodsPool> DataList => _dataList;
public ActorCfg.DataGoodsPool GetOrDefault(int key) => _dataMap.TryGetValue(key, out var v) ? v : null;
public ActorCfg.DataGoodsPool Get(int key) {
if (_dataMap.TryGetValue(key, out var v)) {
return v;
} else {
UnityEngine.Debug.LogError($"table GoodsPool key not found: {key}");
return null;
}
}
public ActorCfg.DataGoodsPool this[int key] => _dataMap[key];
public void Resolve(Dictionary<string, object> _tables)
{
foreach(var v in _dataList)
{
v.Resolve(_tables);
}
PostResolve();
}
public void TranslateText(System.Func<string, string, string> translator)
{
foreach(var v in _dataList)
{
v.TranslateText(translator);
}
}
partial void PostInit();
partial void PostResolve();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 13d03b41e7b112249a8d0c90420361ab
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -9,20 +9,17 @@
namespace cfg.ActorCfg
{
public enum GachaType
public enum ShopContentRefreshType
{
None = 0,
/// <summary>
/// 常驻卡池
/// 常驻
/// </summary>
Normal = 0,
Permanent = 1,
/// <summary>
/// 新手卡池
/// 限时售卖
/// </summary>
New = 1,
/// <summary>
/// 限定卡池
/// </summary>
Limit = 2,
LimitedTime = 2,
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c119f8207fca5704498861e541765e69
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace cfg.ActorCfg
{
public enum ShopType
{
None = 0,
/// <summary>
/// 推荐商店
/// </summary>
Recommended = 1,
/// <summary>
/// 兑换商店
/// </summary>
Exchange = 2,
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9b40aad24b9b0d14cb6260911a767b74
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -27,6 +27,10 @@ namespace cfg.BuffCfg
/// 被攻击
/// </summary>
OnTakeDamage = 3,
/// <summary>
/// 创建者离开载具
/// </summary>
CreaterOutVehicle = 4,
}
}

View File

@ -115,6 +115,7 @@ public sealed partial class Tables
public LegionBattleCfg.LegionBattleMap LegionBattleMap {get; }
public ActorCfg.MonthlyPass MonthlyPass {get; }
public ActorCfg.GiftBagShop GiftBagShop {get; }
public ActorCfg.GoodsPool GoodsPool {get; }
public Tables(System.Func<string, JSONNode> loader)
{
@ -317,6 +318,8 @@ public sealed partial class Tables
tables.Add("ActorCfg.MonthlyPass", MonthlyPass);
GiftBagShop = new ActorCfg.GiftBagShop(loader("actorcfg_giftbagshop"));
tables.Add("ActorCfg.GiftBagShop", GiftBagShop);
GoodsPool = new ActorCfg.GoodsPool(loader("actorcfg_goodspool"));
tables.Add("ActorCfg.GoodsPool", GoodsPool);
PostInit();
CharacterAttri.Resolve(tables);
@ -418,6 +421,7 @@ public sealed partial class Tables
LegionBattleMap.Resolve(tables);
MonthlyPass.Resolve(tables);
GiftBagShop.Resolve(tables);
GoodsPool.Resolve(tables);
PostResolve();
}
@ -521,6 +525,7 @@ public sealed partial class Tables
loader("legionbattlecfg_legionbattlemap");
loader("actorcfg_monthlypass");
loader("actorcfg_giftbagshop");
loader("actorcfg_goodspool");
}
public static void AfterLoaded(Action<string> loader) {
@ -623,6 +628,7 @@ public sealed partial class Tables
loader("legionbattlecfg_legionbattlemap");
loader("actorcfg_monthlypass");
loader("actorcfg_giftbagshop");
loader("actorcfg_goodspool");
}
public void TranslateText(System.Func<string, string, string> translator)
@ -726,6 +732,7 @@ public sealed partial class Tables
LegionBattleMap.TranslateText(translator);
MonthlyPass.TranslateText(translator);
GiftBagShop.TranslateText(translator);
GoodsPool.TranslateText(translator);
}
partial void PostInit();

View File

@ -0,0 +1,31 @@
[
{
"GroupID": 10001,
"ID": 400001,
"GoodsPathList": [
"MaterialFragment/Icon_8.png",
"MaterialFragment/Icon_3.png",
"MaterialFragment/Icon_3.png",
"MaterialFragment/Icon_3.png"
]
},
{
"GroupID": 10002,
"ID": 400002,
"GoodsPathList": [
"MaterialFragment/Icon_1.png",
"CharacterChip/Icon_101001.png",
"CharacterChip/Icon_101002.png",
"CharacterChip/Icon_101003.png",
"CharacterChip/Icon_101004.png",
"CharacterChip/Icon_101005.png",
"MaterialFragment/Icon_104001.png",
"MaterialFragment/Icon_104002.png",
"MaterialFragment/Icon_104003.png",
"MaterialFragment/Icon_104004.png",
"MaterialFragment/Icon_104005.png",
"MaterialFragment/Icon_104006.png",
"MaterialFragment/Icon_300014.png"
]
}
]

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: f65360de80ed797419f44f094bf527e5
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -42,37 +42,33 @@
{
"Id": 20000,
"Type": 3,
"StartTime": "15:10:00",
"EndTime": "15:20:00",
"StartDayValue": 3,
"EndDayValue": 3,
"ServerEP": 9
"StartTime": "08:00:00",
"EndTime": "20:00:00",
"StartDayValue": 6,
"EndDayValue": 6
},
{
"Id": 20001,
"Type": 3,
"StartTime": "15:20:00",
"EndTime": "15:55:00",
"StartDayValue": 3,
"EndDayValue": 3,
"ServerEP": 9
"StartTime": "20:00:00",
"EndTime": "10:00:00",
"StartDayValue": 6,
"EndDayValue": 0
},
{
"Id": 20002,
"Type": 3,
"StartTime": "15:55:00",
"EndTime": "16:30:00",
"StartDayValue": 3,
"EndDayValue": 3,
"ServerEP": 9
"StartTime": "10:00:00",
"EndTime": "20:00:00",
"StartDayValue": 0,
"EndDayValue": 1
},
{
"Id": 20003,
"Type": 3,
"StartTime": "16:00:00",
"EndTime": "16:30:00",
"StartDayValue": 3,
"EndDayValue": 3,
"ServerEP": 9
"StartTime": "20:00:00",
"EndTime": "20:30:00",
"StartDayValue": 1,
"EndDayValue": 1
}
]

View File

@ -6990,6 +6990,29 @@
"PorpParams": [],
"FloatParams": []
},
{
"ID": 10102,
"Name": "弹药补充-换弹buff",
"GroupId": 10102,
"Level": 1,
"BuffEffectType": 2,
"CanTriggerOnDead": false,
"RepeatType": 1,
"BuffType": 26,
"ExistType": 2,
"ExExitType": 4,
"TriggerType": 3,
"MaxExistTime": 10,
"ExistEffectId": 0,
"BuffDisplayIcon": "UI_Buff_17",
"TiggerUnitTime": 0,
"PorpParams": [
9
],
"FloatParams": [
-0.5
]
},
{
"ID": 20001,
"Name": "特效buff",

View File

@ -1266,7 +1266,7 @@
"AreaId": 1,
"LightDuring": 0,
"BuffList": [
10050,
10102,
20001
]
},

View File

@ -13932,7 +13932,7 @@
"LogicId": 10016,
"ShowInSkillEditor": true,
"ReferIds": [
1001610
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -13962,7 +13962,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001620
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -13992,7 +13992,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001630
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14022,7 +14022,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001640
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14052,7 +14052,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001650
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14082,7 +14082,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001610
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14112,7 +14112,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001620
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14142,7 +14142,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001630
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14172,7 +14172,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001640
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14202,7 +14202,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001650
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14232,7 +14232,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001610
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14262,7 +14262,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001620
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14292,7 +14292,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001630
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14322,7 +14322,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001640
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14352,7 +14352,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001650
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14382,7 +14382,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001610
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14412,7 +14412,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001620
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14442,7 +14442,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001630
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14472,7 +14472,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001640
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14502,7 +14502,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001650
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14532,7 +14532,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001610
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14562,7 +14562,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001620
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14592,7 +14592,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001630
530018
],
"IconPath": "Icon_skill_10016.png"
},
@ -14622,7 +14622,7 @@
"LogicId": 10016,
"ShowInSkillEditor": false,
"ReferIds": [
1001640
530018
],
"IconPath": "Icon_skill_10016.png"
},