| | |
| | | |
| | | GuardModel model { get { return ModelCenter.Instance.GetModel<GuardModel>(); } } |
| | | |
| | | DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } |
| | | |
| | | public GActorPlayerBase targetPlayer |
| | | { |
| | | get |
| | |
| | | get; private set; |
| | | } |
| | | |
| | | private DungeonOpenTimeConfig dungeonConfig { get; set; } |
| | | |
| | | |
| | | |
| | | private SFXController m_SFXController = null; |
| | | |
| | | public sealed override void Die() { } |
| | |
| | | DTC0429_tagObjResetPos.ResetPlayerPosEvent += ResetPlayerPosEvent; |
| | | if (IsHeroControl) |
| | | { |
| | | dungeonConfig = Config.Instance.Get<DungeonOpenTimeConfig>(PlayerDatas.Instance.baseData.MapID); |
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent += RefreshInfo; |
| | | StageManager.Instance.onStageLoadFinish += OnStageLoadFinish; |
| | | } |
| | | |
| | |
| | | DTC0429_tagObjResetPos.ResetPlayerPosEvent -= ResetPlayerPosEvent; |
| | | if (IsHeroControl) |
| | | { |
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= RefreshInfo; |
| | | StageManager.Instance.onStageLoadFinish -= OnStageLoadFinish; |
| | | ReleasePickUpBehaviour(); |
| | | } |
| | |
| | | } |
| | | |
| | | IsStateActive = false; |
| | | dungeonConfig = null; |
| | | pickUpBehaviour = null; |
| | | |
| | | base.OnUnit(); |
| | |
| | | { |
| | | SetPosition(vNetData.PosX / 2, vNetData.PosY / 2); |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void RefreshInfo(PlayerDataRefresh refreshType) |
| | | { |
| | | if (refreshType == PlayerDataRefresh.MapID) |
| | | { |
| | | dungeonConfig = Config.Instance.Get<DungeonOpenTimeConfig>(PlayerDatas.Instance.baseData.MapID); |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | public bool CheckPickupItem() |
| | | { |
| | | if (dungeonConfig != null) |
| | | { |
| | | if (dungeonConfig.GuardPick == 0) |
| | | |
| | | { |
| | | |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | if (Root == null) |
| | | |
| | | { |
| | | |
| | | return false; |
| | | |
| | | } |
| | | |
| | | if (DropItemManager.CheckCanGuardPickUp(Root.position)) |
| | | { |
| | | var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
|
| | | if (dataMapId != 0)
|
| | | {
|
| | | var dungeonConfig = Config.Instance.Get<DungeonOpenTimeConfig>(dataMapId);
|
| | | if (dungeonConfig != null)
|
| | | {
|
| | | if (dungeonConfig.GuardPick == 0)
|
| | | {
|
| | | return false;
|
| | | }
|
| | | }
|
| | | }
|
| | | |
| | | if (guardState != GuardState.PickUp) |
| | | { |
| | | stopDanceState = true; |