/// <summary> /// 设置家园实体状态通过实体id /// </summary> /// <param name="landIndex">实体id</param> /// <param name="state">状态</param> /// <param name="indexID">homeland.xlsx 模型配置表里对应的索引id</param> void SetHomeEntityState(long uid, int state, uint indexID) { if (entityStateDic.ContainsKey(uid)) { HomeEntityInfo info = entityStateDic[uid]; info.state = state; entityStateDic[uid] = info; IEntitySystem es = ClientGlobal.Instance().GetEntitySystem(); if (es != null) { IEntity en = es.FindEntity(uid); if (en != null) { HomeLandViewDatabase db = GameTableManager.Instance.GetTableItem <HomeLandViewDatabase>((uint)indexID, state); if (db != null) { ResourceDataBase rdb = GameTableManager.Instance.GetTableItem <ResourceDataBase>(db.dwModelID); if (rdb != null) { ChangePart cp = new ChangePart(); cp.strPartName = "main"; cp.strResName = rdb.strPath; en.SendMessage(EntityMessage.EntityCommand_ChangePart, cp); } } } } } else { Log.Error("not cotain uid " + uid.ToString()); } }
private object ChangePart(object param) { if (m_Owner != null) { ChangePart part = (ChangePart)param; m_Owner.ChangePart(ref part.strPartName, ref part.strResName); } return(null); }