public TankData(int entityId, int typeId, CampType camp, string tankId) : base(entityId, typeId, camp) { IDataTable <DRTank> dtTank = GameEntry.DataTable.GetDataTable <DRTank>(); DRTank drTank = dtTank.GetDataRow(TypeId); if (drTank == null) { return; } m_ThrusterData = new ThrusterData(GameEntry.Entity.GenerateSerialId(), drTank.ThrusterId, Id, Camp); m_WeaponData = new WeaponData(GameEntry.Entity.GenerateSerialId(), drTank.WeaponId, Id, Camp); m_ArmorData = new ArmorData(GameEntry.Entity.GenerateSerialId(), drTank.ArmorId, Id, Camp); m_DeadEffectId = drTank.DeadEffectId; m_DeadSoundId = drTank.DeadSoundId; m_TankColor = drTank.TankColor; HP = m_ArmorData.MaxHP; m_Defense = m_ArmorData.Defense; m_TankId = tankId; }
protected override void OnShow(object userData) { base.OnShow(userData); //Debug.Log(System.Reflection.MethodBase.GetCurrentMethod().Name); m_ArmorData = userData as ArmorData; if (m_ArmorData == null) { Log.Error("Armor data is invalid."); return; } GameEntry.Entity.AttachEntity(Entity, m_ArmorData.OwnerId, AttachPoint); //Debug.LogFormat(Constant.Logger.loggerFormat4, GetType(), System.Reflection.MethodBase.GetCurrentMethod().Name, Name, "Instantiation a Armor prefab and ArmorData"); }
public static void ShowArmor(this EntityComponent entityComponent, ArmorData data) { entityComponent.ShowEntity(typeof(Armor), "Armor", Constant.AssetPriority.ArmorAsset, data); }