【PVP建筑】增加 基地水晶

main
刘涛 2025-03-10 15:20:55 +08:00
parent 47c19fc603
commit 4c4eaa700d
11 changed files with 214 additions and 4 deletions

View File

@ -0,0 +1,117 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &7522714355286572494
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7945404320345911588}
- component: {fileID: 2867291973727607777}
- component: {fileID: 4185479424212337259}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7945404320345911588
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522714355286572494}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.5, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8834162455939277662}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &2867291973727607777
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522714355286572494}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &4185479424212337259
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7522714355286572494}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: ecfa89995575fd147b394fb60ad13590, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &8240190585337329970
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8834162455939277662}
m_Layer: 0
m_Name: build_headquarters
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8834162455939277662
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8240190585337329970}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 7945404320345911588}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 489cbb615d0621b4a840cdd5605ddfdd
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -37,5 +37,10 @@
/// 反坦克阵地
/// </summary>
AntitankCell = 6,
/// <summary>
/// 基地水晶
/// </summary>
Headquarters = 7,
}
}

View File

@ -0,0 +1,24 @@
using Gameplay.Building.Impl.Common;
namespace Gameplay.Building.Impl
{
public class BuildHeadquarters : UnitBuild
{
public BuildHeadquarters(uint id,
int troopId) : base(id, troopId)
{
}
protected override void _InitFsm()
{
base._InitFsm();
_fsm.Add(new CommonBuildStateIdle(this));
_fsm.Add(new CommonBuildStateDestroy(this));
_fsm.Add(new CommonBuildStateWaitRemove(this));
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 6b18127148854d89845048b2f2437788
timeCreated: 1741590804

View File

@ -34,6 +34,10 @@ namespace Gameplay.Building
var antitankCell = new BuildAntitankCell(uId, troopId);
unitBuild = antitankCell;
break;
case EFightBuildType.Headquarters:
var headquarters = new BuildHeadquarters(uId, troopId);
unitBuild = headquarters;
break;
}
if (unitBuild != null)
{

View File

@ -135,7 +135,7 @@ namespace Gameplay.Level
else
{
await _LoadNPCFromPVPData();
// await _TempCreateBuild(1006, 54);
// await _TempCreateBuild(1007, 54);
}
}

View File

@ -22,10 +22,12 @@ public sealed partial class DataCurrencyShopCfg : Bright.Config.BeanBase
{ if(!_json["AppleProductID"].IsString) { throw new SerializationException(); } AppleProductID = _json["AppleProductID"]; }
{ if(!_json["PhxhProductID"].IsString) { throw new SerializationException(); } PhxhProductID = _json["PhxhProductID"]; }
{ if(!_json["AppleBuyType"].IsNumber) { throw new SerializationException(); } AppleBuyType = (ChargeCfg.AppleBuyType)_json["AppleBuyType"].AsInt; }
{ if(!_json["IsFirstDouble"].IsNumber) { throw new SerializationException(); } IsFirstDouble = _json["IsFirstDouble"]; }
{ if(!_json["Name"].IsString) { throw new SerializationException(); } Name = _json["Name"]; }
{ if(!_json["NameLocal"].IsString) { throw new SerializationException(); } NameLocal = _json["NameLocal"]; }
{ if(!_json["ItemID"].IsNumber) { throw new SerializationException(); } ItemID = _json["ItemID"]; }
{ if(!_json["ItemCount"].IsNumber) { throw new SerializationException(); } ItemCount = _json["ItemCount"]; }
{ if(!_json["ExtraItemCount"].IsNumber) { throw new SerializationException(); } ExtraItemCount = _json["ExtraItemCount"]; }
{ if(!_json["MaxCount"].IsNumber) { throw new SerializationException(); } MaxCount = _json["MaxCount"]; }
{ if(!_json["NowPriceDollar"].IsNumber) { throw new SerializationException(); } NowPriceDollar = _json["NowPriceDollar"]; }
{ if(!_json["NowPriceRMB"].IsNumber) { throw new SerializationException(); } NowPriceRMB = _json["NowPriceRMB"]; }
@ -34,16 +36,18 @@ public sealed partial class DataCurrencyShopCfg : Bright.Config.BeanBase
PostInit();
}
public DataCurrencyShopCfg(int Id, string AppleProductID, string PhxhProductID, ChargeCfg.AppleBuyType AppleBuyType, string Name, string NameLocal, int ItemID, int ItemCount, int MaxCount, int NowPriceDollar, int NowPriceRMB, bool ShowInShop, string IconPath )
public DataCurrencyShopCfg(int Id, string AppleProductID, string PhxhProductID, ChargeCfg.AppleBuyType AppleBuyType, int IsFirstDouble, string Name, string NameLocal, int ItemID, int ItemCount, int ExtraItemCount, int MaxCount, int NowPriceDollar, int NowPriceRMB, bool ShowInShop, string IconPath )
{
this.Id = Id;
this.AppleProductID = AppleProductID;
this.PhxhProductID = PhxhProductID;
this.AppleBuyType = AppleBuyType;
this.IsFirstDouble = IsFirstDouble;
this.Name = Name;
this.NameLocal = NameLocal;
this.ItemID = ItemID;
this.ItemCount = ItemCount;
this.ExtraItemCount = ExtraItemCount;
this.MaxCount = MaxCount;
this.NowPriceDollar = NowPriceDollar;
this.NowPriceRMB = NowPriceRMB;
@ -74,6 +78,10 @@ public sealed partial class DataCurrencyShopCfg : Bright.Config.BeanBase
/// </summary>
public ChargeCfg.AppleBuyType AppleBuyType { get; private set; }
/// <summary>
/// 是否首充双倍
/// </summary>
public int IsFirstDouble { get; private set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; private set; }
@ -90,6 +98,10 @@ public sealed partial class DataCurrencyShopCfg : Bright.Config.BeanBase
/// </summary>
public int ItemCount { get; private set; }
/// <summary>
/// 额外赠送数量
/// </summary>
public int ExtraItemCount { get; private set; }
/// <summary>
/// 最大购买次数
/// </summary>
public int MaxCount { get; private set; }
@ -129,10 +141,12 @@ public sealed partial class DataCurrencyShopCfg : Bright.Config.BeanBase
+ "AppleProductID:" + AppleProductID + ","
+ "PhxhProductID:" + PhxhProductID + ","
+ "AppleBuyType:" + AppleBuyType + ","
+ "IsFirstDouble:" + IsFirstDouble + ","
+ "Name:" + Name + ","
+ "NameLocal:" + NameLocal + ","
+ "ItemID:" + ItemID + ","
+ "ItemCount:" + ItemCount + ","
+ "ExtraItemCount:" + ExtraItemCount + ","
+ "MaxCount:" + MaxCount + ","
+ "NowPriceDollar:" + NowPriceDollar + ","
+ "NowPriceRMB:" + NowPriceRMB + ","

View File

@ -4,10 +4,12 @@
"AppleProductID": "Try_Consumable_099_15",
"PhxhProductID": "Phxh_Try_Consumable_099_15",
"AppleBuyType": 0,
"IsFirstDouble": 1,
"Name": "测试消耗品1",
"NameLocal": "CurrencyShop_GoodsName_001",
"ItemID": 11,
"ItemCount": 60,
"ExtraItemCount": 30,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 6,
@ -19,10 +21,12 @@
"AppleProductID": "Try_Consumable_099_16",
"PhxhProductID": "Phxh_Try_Consumable_099_16",
"AppleBuyType": 0,
"IsFirstDouble": 1,
"Name": "测试消耗品2",
"NameLocal": "CurrencyShop_GoodsName_002",
"ItemID": 11,
"ItemCount": 300,
"ExtraItemCount": 100,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 30,
@ -34,10 +38,12 @@
"AppleProductID": "Try_Consumable_099_17",
"PhxhProductID": "Phxh_Try_Consumable_099_17",
"AppleBuyType": 0,
"IsFirstDouble": 1,
"Name": "测试消耗品3",
"NameLocal": "CurrencyShop_GoodsName_003",
"ItemID": 11,
"ItemCount": 1280,
"ExtraItemCount": 300,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 128,
@ -49,10 +55,12 @@
"AppleProductID": "Test_NonConsumable_099_20",
"PhxhProductID": "Phxh_Test_NonConsumable_099_20",
"AppleBuyType": 1,
"IsFirstDouble": 1,
"Name": "测试非消耗品1",
"NameLocal": "CurrencyShop_GoodsName_004",
"ItemID": 11,
"ItemCount": 3280,
"ExtraItemCount": 800,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 328,
@ -64,10 +72,12 @@
"AppleProductID": "Test_NonConsumable_199_21",
"PhxhProductID": "Phxh_Test_NonConsumable_199_21",
"AppleBuyType": 1,
"IsFirstDouble": 1,
"Name": "测试非消耗品2",
"NameLocal": "CurrencyShop_GoodsName_005",
"ItemID": 11,
"ItemCount": 6480,
"ExtraItemCount": 600,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 648,
@ -79,10 +89,12 @@
"AppleProductID": "",
"PhxhProductID": "",
"AppleBuyType": 0,
"IsFirstDouble": 1,
"Name": "测试消耗品4",
"NameLocal": "CurrencyShop_GoodsName_006",
"ItemID": 1110001,
"ItemCount": 10,
"ExtraItemCount": 0,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 36,
@ -94,10 +106,12 @@
"AppleProductID": "",
"PhxhProductID": "Phxh_Advanced_Account",
"AppleBuyType": 1,
"IsFirstDouble": 0,
"Name": "高级通行证资格",
"NameLocal": "CurrencyShop_GoodsName_007",
"ItemID": 1220002,
"ItemCount": 1,
"ExtraItemCount": 0,
"MaxCount": 1,
"NowPriceDollar": 10,
"NowPriceRMB": 68,
@ -109,10 +123,12 @@
"AppleProductID": "",
"PhxhProductID": "Phxh_PremiumAdvanced_Account",
"AppleBuyType": 1,
"IsFirstDouble": 0,
"Name": "高级通行证尊享版资格",
"NameLocal": "CurrencyShop_GoodsName_008",
"ItemID": 1220003,
"ItemCount": 1,
"ExtraItemCount": 0,
"MaxCount": 1,
"NowPriceDollar": 14,
"NowPriceRMB": 99,
@ -124,10 +140,12 @@
"AppleProductID": "",
"PhxhProductID": "Phxh_PremiumAdvanced_Account_Levelup",
"AppleBuyType": 1,
"IsFirstDouble": 0,
"Name": "高级通行证尊享版资格升级",
"NameLocal": "CurrencyShop_GoodsName_008",
"ItemID": 1220004,
"ItemCount": 1,
"ExtraItemCount": 0,
"MaxCount": 1,
"NowPriceDollar": 4,
"NowPriceRMB": 31,
@ -139,10 +157,12 @@
"AppleProductID": "",
"PhxhProductID": "Phxh_MonthlyPass_Account",
"AppleBuyType": 1,
"IsFirstDouble": 0,
"Name": "月卡资格",
"NameLocal": "CurrencyShop_GoodsName_009",
"ItemID": 1230001,
"ItemCount": 1,
"ExtraItemCount": 0,
"MaxCount": 1,
"NowPriceDollar": 5,
"NowPriceRMB": 30,

View File

@ -110,5 +110,21 @@
"fight_attack": 0,
"ShootDistanceRate": [],
"float_params": []
},
{
"id": 1007,
"name": "基地水晶",
"build_type": 7,
"model_path": "build_headquarters",
"icon": "Assets/Art/UI/Texture/Icon/PVPBuilding/UI_PVPBuilding_00004.png",
"hp": 1000,
"CanClaimStandCellIndex": true,
"stand_cross_level": 999,
"block_attack": true,
"fight_level": 1,
"fight_defense": 0,
"fight_attack": 0,
"ShootDistanceRate": [],
"float_params": []
}
]

View File

@ -26,7 +26,7 @@ Material:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: a018b6d1688fd7548b07606b38a577b0, type: 3}
m_Texture: {fileID: 2800000, guid: 93c9ba6367fc60b41a5aa3926ae8a543, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap2:
@ -62,7 +62,7 @@ Material:
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Texture: {fileID: 2800000, guid: 93c9ba6367fc60b41a5aa3926ae8a543, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MaskMap: