public static void OnMonsterAdd(int id, AiNetwork ai, Pathea.PeEntity entity) { EntityMonsterBeacon mbEntity = Pathea.EntityMgr.Instance.Get(id) as EntityMonsterBeacon; if (null != mbEntity) { mbEntity.OnMonsterCreated(entity); } else { if (null != entity) { Pathea.CommonCmpt cc = entity.GetCmpt <Pathea.CommonCmpt>(); if (cc != null) { AiTowerDefense td = AiTowerDefense.Get <AiTowerDefense>(id); if (null != td) { cc.TDpos = td._pos; } } Pathea.SkAliveEntity sae = entity.GetCmpt <Pathea.SkAliveEntity>(); if (sae != null) { sae.SetAttribute(Pathea.AttribType.DefaultPlayerID, 8); sae.SetAttribute(Pathea.AttribType.CampID, 26); } } } }
public override void Start() { base.Start(); mTrans = Entity.peTrans; mEntityInfo = Entity.GetCmpt <EntityInfoCmpt>(); //mServant = Entity.GetCmpt<NpcCmpt>(); mCommon = Entity.GetCmpt <CommonCmpt>(); }
void CreateDroppableItemList() { if (_itemListsUpdated) { return; } _itemListsUpdated = true; //_itemLists.Add(this); // this will be added at the end of this method(foreach) Pathea.PeEntity entity = GetComponent <Pathea.PeEntity>(); if (null == entity) { return; } _skAlive = entity.GetCmpt <Pathea.SkAliveEntity>(); if (_skAlive == null || !_skAlive.isDead) { return; } if (Pathea.PeGameMgr.IsMulti) { return; } Pathea.CommonCmpt common = entity.GetCmpt <Pathea.CommonCmpt>(); if (common != null) { List <ItemSample> items = ItemDropData.GetDropItems(common.ItemDropId); if (common.entityProto.proto == Pathea.EEntityProto.Monster) { if (items == null) { items = GetSpecialItem.MonsterItemAdd(common.entityProto.protoId); } else { items.AddRange(GetSpecialItem.MonsterItemAdd(common.entityProto.protoId)); //特殊道具添加 } } if (items != null) { foreach (ItemSample item in items) { AddDroppableItem(item); } } } return; }
public override void Start() { base.Start(); cmptIK = Entity.GetCmpt <IKCmpt>(); cmptCommon = GetComponent <CommonCmpt>(); cmptEquipment = GetComponent <EquipmentCmpt>(); Entity.aliveEntity.deathEvent += OnDeath; Entity.aliveEntity.reviveEvent += OnRevive; //there is no scene event if (SceneMan.self == null) { this.Invoke(0.1f, Build); } }
Texture TakePhoto() { BiologyViewCmpt v = Entity.biologyViewCmpt; if (v == null /*|| v.modelTrans == null*/) //lz-2016.07.23 PeViewStudio.TakePhoto 里面处理了没有模型的情况,这里不用返回 { return(null); } CommonCmpt c = Entity.commonCmpt; if (c == null) { return(null); } return(PeViewStudio.TakePhoto(v, 64, 64, PeViewStudio.s_HeadPhotoPos, PeViewStudio.s_HeadPhotoRot));//PhotoStudio.Instance.TakePhoto(v.modelTrans.gameObject, (int)c.sex); }
public override void Start() { base.Start(); //mView = Entity.peTrans; mCommon = Entity.GetCmpt <CommonCmpt>(); mAliveEntity = Entity.GetCmpt <SkAliveEntity>(); if (mAliveEntity != null) { //mAliveEntity.onHpChange += mHeadInfo.OnHpChange; mAliveEntity.deathEvent += OndeathEnvent; } // mHeadInfo.SetTheEntity(Entity); //mHeadInfo.InitTheentity(Entity); SyncObjectName(); SetVisiable(true); // SyncInfo(); }
public void OnHpChange(SkEntity self, SkEntity caster, float hpChange) { if (null == self) { return; } SkAliveEntity skAlive = self as SkAliveEntity; if (null != skAlive) { PeTrans trans = skAlive.Entity.peTrans; CommonCmpt common = skAlive.Entity.commonCmpt; if (null != trans) { HPChangeEventData data = new HPChangeEventData(); data.m_Self = self; data.m_HPChange = hpChange; data.m_Transfrom = trans.trans; data.m_Proto = (null != common && null != common.entityProto)?common.entityProto.proto:EEntityProto.Doodad; data.m_AddTime = Time.realtimeSinceStartup; _datas.Push(data); } } }
string GetSkeleton() { CommonCmpt info = Entity.GetCmpt <CommonCmpt>(); return((null != info && info.sex == PeSex.Male) ? MaleModelPrefabPath : FemaleModelPrefabPath); }